commit cc20a588b42b3bf740df327a2f46d82b9e780fdc Author: Alan Mizrahi <alan+crux@mizrahi.com.ve> Date: Wed Feb 26 00:27:51 2014 +0900 Updated README with info on the new startup script and copy & paste instructions to install everything, for the impatient diff --git a/README b/README index 0956fa4..53f386b 100644 --- a/README +++ b/README @@ -1,28 +1,63 @@ Instructions to install a functional KDE4 environment in CRUX - -Before Compilation ------------------- - -1. Ensure the kde4 repository directory is included in your prt-get -configuration by adding "prtdir /usr/ports/kde4" in /etc/prt-get.conf - -2. I suggest you to configure pkgmk to ignore .footprint missmatches by setting +For the impatient +----------------- +If you just want to install KDE4 without reading much, do this: + +# Add the kde4 port dir: +grep -q ' *prtdir */usr/ports/kde4 *' /etc/prt-get.conf || \ +sed -i '/\/usr\/ports\/core/aprtdir /usr/ports/kde4' /etc/prt-get.conf + +# Install all dependencies, stop if something fails: +for p in `prt-get depends kde4-meta-full | \ +sed -nr '/\[ \]/s/\[ \] (.*)$/\1/p'`; do +prt-get install -if --install-scripts $p || break +done + +# Add dbus and kdm to startup scripts: +for i in dbus kdm; do +grep -q '^ *SERVICES=.*\b'$i'\b' /etc/rc.conf || \ +sed -ri '/^ *SERVICES=/s/(.*)\)/\1 '$i')/' /etc/rc.conf +done + + +For the non-impatient +--------------------- + +Preparations +------------ +1. Add the kde4 port directory to /etc/prt-get.conf. +Order is important, I recommend putting it before opt. +For example: +... +prtdir /usr/ports/core +prtdir /usr/ports/kde4 +prtdir /usr/ports/opt +... + +You should also enable post-install scripts: +... +runscripts yes +... + +2. I recommend to configure pkgmk to ignore .footprint mismatches by setting "PKGMK_IGNORE_FOOTPRINT=yes" in /etc/pkgmk.conf -3. If you have more than 1 computer I suggest you to set up distcc to reduce -the compilation time. In addition to distcc, you may also want to use ccache. +3. If you have more than 1 computer you can set up distcc to reduce +the compilation time. In addition to distcc, you can also try ccache. -4. You may want to disble certain components of KDE4 from being built. +4. Optional step: +You may want to disable certain components of KDE4 from being built. To do this, check the Pkgfiles. In each Pkgfile there is a "DO_NOT_COMPILE" variable that you may set with whatever you want to prevent from being built. I have written the corresponding possible values in each Pkgfile in order to make it easy, but they might be inaccurate or outdated. -5. You may want to check the optional dependencies before starting the -compilation: +5. Optional step: +You may want to check optional dependencies before starting: grep -i optional /usr/ports/kde4/*/Pkgfile -Please install any optional packages before the rest. +Please install all desired optional dependencies by using: +prt-get depinst <port1> <port2> ... For a somewhat outdated information regarding dependencies please check: http://techbase.kde.org/Schedules/KDE4/4.4_Requirements @@ -40,49 +75,49 @@ The meta-packages are: So all you have to do is read the list of dependencies of each package and decide which one to use with prt-get. + For example: prt-get depinst kde4-meta-medium If you like one meta package except for one missing dependency, just install it beforehand with prt-get. -On the contrary, if you want to avoid installing one package from a "meta" +If you want to avoid installing one package from a "meta" package just use the "--ignore" parameter when running prt-get. For example: prt-get depinst --ignore=basket,bluedevil kde4-meta-medium +IMPORTANT NOTE: +prt-get will continue with the build process even if one port fails, +this can result in a half-baked KDE installation. -Configuration -------------- +I really recommend you to stop the build process in case of failure, +fix the problem, and then continue. -To use kdm as your login manager I suggest you to follow these steps: +To stop automatically in case of a build failure, you can do this: +for p in `prt-get depends kde4-meta-medium | \ +sed -nr '/\[ \]/s/\[ \] (.*)$/\1/p'`; do +prt-get install -if --install-scripts $p || break +done -1. cp -r /usr/share/config/kdm /etc/X11/ +I wrote a patch that allows you to do this easily: +http://lists.crux.nu/pipermail/crux-devel/2013-August/004068.html -2. Change your inittab to start kdm on runlevel 3, add this: -x:3:respawn:/usr/bin/kdm -nodaemon -config /etc/X11/kdm/kdmrc -Additionally, you will have to configure your inittab to run everything from -runlevel 2 in runlevel 3, because CRUX by default doesn't define runlevel 3. -Now if you are satisfied, make the default runlevel 3. -My inittab looks like this: ----- -id:3:initdefault: -rc::sysinit:/etc/rc -rs:S1:wait:/etc/rc.single -rm:23:wait:/etc/rc.multi -rd:06:wait:/etc/rc.shutdown -su:S:wait:/sbin/sulogin -p -c1:123:respawn:/sbin/agetty 38400 tty1 linux -c2:23:respawn:/sbin/agetty 38400 tty2 linux -c3:23:respawn:/sbin/agetty 38400 tty3 linux -c4:23:respawn:/sbin/agetty 38400 tty4 linux -ca::ctrlaltdel:/sbin/shutdown -t3 -r now -x:3:respawn:/usr/bin/kdm -nodaemon -config /etc/X11/kdm/kdmrc ----- +Until this patch is merged in prt-get, I have a prt-get port with this +function available in my personal repository: +http://www.mizrahi.com.ve/crux/pkgs/ + +Using this port, the previous command becomes: +prt-get depinst --group kde4-meta-medium + + +Configuration +------------- +To start KDE's login manager automatically, add kdm to the list of services +in /etc/rc.conf after dbus (and possibly acpid). Upgrading from KDE3 ------------------- - 1. While the CRUX KDE3 ports use ~/.kde to store the configuration settings, The KDE4 ports use ~/.kde4. Therefore, if you want KDE4 to migrate your old settings you can rename @@ -96,7 +131,6 @@ mv ~/.kde4/share/apps/kopete/logs/MSNProtocol \ Tips ---- - - If you want to make firefox look KDE-ish, check out this website: http://thebluemint.blogspot.com/2009/11/making-firefox-3x-look-at-home-in-kd...