devilz
Pro*phet
Konstruct ist ein Build System, das auch KDE 3.1rc6 auf den Desktop installiert ... und das easy
http://konsole.kde.org/konstruct/
Introduction
============
"Konstruct" is a build system which helps you to install KDE releases and
applications on your system. It downloads defined source tarballs, checks
their integrity, decompresses, patches, configures, builds and installs them.
A complete KDE installation should be as easy as "cd meta/kde;make install"
which with this version gives a complete KDE 3.1rc6 installation. Optionally
you can install additional applications like KOffice 1.2.1, KDevelop 2.1.4
or Quanta 3.1 too, just run for example "cd apps/koffice ; make install".
By default "Konstruct" installs to ~/kde3.1-rc6 which means you don't have to
possess root privileges or risk to damage your system or affect another KDE.
The following table shows how many MBytes source tarballs will be downloaded:
Directory/Target | Size | Description
-------------------+---------+--------------------------------------------
kde/kdebase | 40MB | Desktop with browser, editor and terminal
meta/kmail-crypto | 48MB | Above plus kdenetwork and crypto libraries
meta/kde | 105MB | All packages and dependencies of "KDE 3.1"
meta/everything | 159MB | Everything except i18n/ and kdebindings
If you have already Qt 3.1 installed, define variable HAVE_QT_3_1_INSTALLED
(see "Configuration") and subtract 12 MB from the numbers in every column.
If you want to have KDE localized into your native language, look into the
i18n/ directory, change to your language directory and start "make install".
To localize KOffice, install an i18n/koffice-i18n-<language-code> package.
"Konstruct" initiated by ********** is based on the GAR ports system by
Nick Moffitt (http://www.lnx-bbc.org/garchitecture.html) and is inspired by
GARNOME distribution by Jeff Waugh (http://www.gnome.org/~jdub/garnome/).
Preconditions
=============
A working GNU tool chain (gcc, make, flex, bison, gettext, patch etc.).
Additional gzip and bzip2, md5sum, wget.
Some basic libraries and some other libraries enabling additional functionality
are not included in "Konstruct", read http://promo.kde.org/kde31_reqs.php. Note
that you may have to install separate "-dev" or "-devel" packages for them too.
If you use a SuSE 8.1 distribution you might be interested in "Detektive", a
simple script which checks and tells which rpm packages of your distribution
you have not installed meet these preconditions: Run "cd misc/detektive;make".
I'm interested in any help to extend "Detektive" to other distributions.
Configuration
=============
Change gar.conf.mk to your liking. Some useful options are:
FILE_SITES If you have already downloaded source tarballs add the path here.
prefix Where to install your KDE desktop. The default is ~/kde3.1-rc6/ .
OWN_CFLAGS Allows you to specify compiler flags specific to your CPU.
HAVE_QT_3_1_INSTALLED Set this if you have already Qt 3.1 (including moc,
uic and headers) installed and want to skip Qt installation.
BUILD_CLEAN Set this if you're low on available file system space.
Usage
=====
Be sure that you have a live internet connection. Choose a target and change
to the directory which helds its definition, e.g. "cd kde/kdebase". Now run
make with one of the following targets, usually you only need "make install".
The GAR system provides seven basic targets for each package:
fetch
This target downloads all files and patches needed to compile the package.
Typically this is a single tarball, accompanied by occasional patch files.
checksum
Uses md5sum to ensure that the downloaded files match those with which the
package maintainer worked.
extract
Makes sure that all of the necessary source files are available in a working
directory. In some cases (such as when downloading a single C++ source file)
this will simply copy files over.
patch
If the package has to be patched (either via third-party patches or package
maintainer patches), this target will perform that step.
configure
Configures the package as specified in the Makefile. It will typically run
the package's underlying configuration system (such as autoconf or Imake).
build
Performs the actual step of compilation.
install
Puts files in the proper locations and performs any necessary mop-up work.
These targets are named after their counterparts in the BSD Ports system and
behave in the same manner. If you want to install a package you have to enter
the package's or target's directory and to run "make install" or "make patch"
(just two examples). A later target includes all the previously listed ones.
For every target exists a deep-foo variant which will also call it recursively
for all its dependencies, e.g. with "make deep-checksum" you can download all
required source tarballs and build it later (when you have no net connection).
After installation
==================
After installation you have to set some variables allowing your system to find
KDE binaries and libraries and KDE to allow to find its own files, for Bash:
export QTDIR=~/kde3.1-rc6
export KDEDIR=~/kde3.1-rc6
export LD_LIBRARY_PATH=~/kde3.1-rc6/lib
export PATH=~/kde3.1-rc6/bin:$PATH
Setting KDEHOME too, e.g. "export KDEHOME=~/.kdetest", will tell KDE to save
your settings to this directory and leave default ~/.kde directory unaffected.
On shadow password systems you have to set $(prefix)/bin/kcheckpass SUID root
or SGID shadow - otherwise you will not be able to unlock a locked desktop.
The complete KDE desktop is started with "startkde", most distributions start
it if you set it to the WINDOWMANAGER variable in your shell initializations.
How to get latest version
=========================
You must have the cvs client installed, then run in a shell:
cvs -z3 -d:pserver:anonymous@anoncvs.kde.org:/home/kde co kdenonbeta/konstruct
No need to checkout any parent directory or run "make -f Makefile.cvs". You can
move the "konstruct" directory to where you want and delete "kdenonbeta" after.
To update your "Konstruct" checkout or the released tarballs, change to the
"konstruct" directory and run "cvs up -dP".
License
=======
Redistribution and/or use, with or without modification, is permitted. This
software is without warranty of any kind. The author(s) shall not be liable
in the event that use of the software causes damage.
http://konsole.kde.org/konstruct/
Introduction
============
"Konstruct" is a build system which helps you to install KDE releases and
applications on your system. It downloads defined source tarballs, checks
their integrity, decompresses, patches, configures, builds and installs them.
A complete KDE installation should be as easy as "cd meta/kde;make install"
which with this version gives a complete KDE 3.1rc6 installation. Optionally
you can install additional applications like KOffice 1.2.1, KDevelop 2.1.4
or Quanta 3.1 too, just run for example "cd apps/koffice ; make install".
By default "Konstruct" installs to ~/kde3.1-rc6 which means you don't have to
possess root privileges or risk to damage your system or affect another KDE.
The following table shows how many MBytes source tarballs will be downloaded:
Directory/Target | Size | Description
-------------------+---------+--------------------------------------------
kde/kdebase | 40MB | Desktop with browser, editor and terminal
meta/kmail-crypto | 48MB | Above plus kdenetwork and crypto libraries
meta/kde | 105MB | All packages and dependencies of "KDE 3.1"
meta/everything | 159MB | Everything except i18n/ and kdebindings
If you have already Qt 3.1 installed, define variable HAVE_QT_3_1_INSTALLED
(see "Configuration") and subtract 12 MB from the numbers in every column.
If you want to have KDE localized into your native language, look into the
i18n/ directory, change to your language directory and start "make install".
To localize KOffice, install an i18n/koffice-i18n-<language-code> package.
"Konstruct" initiated by ********** is based on the GAR ports system by
Nick Moffitt (http://www.lnx-bbc.org/garchitecture.html) and is inspired by
GARNOME distribution by Jeff Waugh (http://www.gnome.org/~jdub/garnome/).
Preconditions
=============
A working GNU tool chain (gcc, make, flex, bison, gettext, patch etc.).
Additional gzip and bzip2, md5sum, wget.
Some basic libraries and some other libraries enabling additional functionality
are not included in "Konstruct", read http://promo.kde.org/kde31_reqs.php. Note
that you may have to install separate "-dev" or "-devel" packages for them too.
If you use a SuSE 8.1 distribution you might be interested in "Detektive", a
simple script which checks and tells which rpm packages of your distribution
you have not installed meet these preconditions: Run "cd misc/detektive;make".
I'm interested in any help to extend "Detektive" to other distributions.
Configuration
=============
Change gar.conf.mk to your liking. Some useful options are:
FILE_SITES If you have already downloaded source tarballs add the path here.
prefix Where to install your KDE desktop. The default is ~/kde3.1-rc6/ .
OWN_CFLAGS Allows you to specify compiler flags specific to your CPU.
HAVE_QT_3_1_INSTALLED Set this if you have already Qt 3.1 (including moc,
uic and headers) installed and want to skip Qt installation.
BUILD_CLEAN Set this if you're low on available file system space.
Usage
=====
Be sure that you have a live internet connection. Choose a target and change
to the directory which helds its definition, e.g. "cd kde/kdebase". Now run
make with one of the following targets, usually you only need "make install".
The GAR system provides seven basic targets for each package:
fetch
This target downloads all files and patches needed to compile the package.
Typically this is a single tarball, accompanied by occasional patch files.
checksum
Uses md5sum to ensure that the downloaded files match those with which the
package maintainer worked.
extract
Makes sure that all of the necessary source files are available in a working
directory. In some cases (such as when downloading a single C++ source file)
this will simply copy files over.
patch
If the package has to be patched (either via third-party patches or package
maintainer patches), this target will perform that step.
configure
Configures the package as specified in the Makefile. It will typically run
the package's underlying configuration system (such as autoconf or Imake).
build
Performs the actual step of compilation.
install
Puts files in the proper locations and performs any necessary mop-up work.
These targets are named after their counterparts in the BSD Ports system and
behave in the same manner. If you want to install a package you have to enter
the package's or target's directory and to run "make install" or "make patch"
(just two examples). A later target includes all the previously listed ones.
For every target exists a deep-foo variant which will also call it recursively
for all its dependencies, e.g. with "make deep-checksum" you can download all
required source tarballs and build it later (when you have no net connection).
After installation
==================
After installation you have to set some variables allowing your system to find
KDE binaries and libraries and KDE to allow to find its own files, for Bash:
export QTDIR=~/kde3.1-rc6
export KDEDIR=~/kde3.1-rc6
export LD_LIBRARY_PATH=~/kde3.1-rc6/lib
export PATH=~/kde3.1-rc6/bin:$PATH
Setting KDEHOME too, e.g. "export KDEHOME=~/.kdetest", will tell KDE to save
your settings to this directory and leave default ~/.kde directory unaffected.
On shadow password systems you have to set $(prefix)/bin/kcheckpass SUID root
or SGID shadow - otherwise you will not be able to unlock a locked desktop.
The complete KDE desktop is started with "startkde", most distributions start
it if you set it to the WINDOWMANAGER variable in your shell initializations.
How to get latest version
=========================
You must have the cvs client installed, then run in a shell:
cvs -z3 -d:pserver:anonymous@anoncvs.kde.org:/home/kde co kdenonbeta/konstruct
No need to checkout any parent directory or run "make -f Makefile.cvs". You can
move the "konstruct" directory to where you want and delete "kdenonbeta" after.
To update your "Konstruct" checkout or the released tarballs, change to the
"konstruct" directory and run "cvs up -dP".
License
=======
Redistribution and/or use, with or without modification, is permitted. This
software is without warranty of any kind. The author(s) shall not be liable
in the event that use of the software causes damage.