#!/bin/sh # Generated by Alien's SlackBuild Toolkit: http://slackware.com/~alien/AST # Copyright 2009, 2010, 2011, 2012, 2013, 2014, 2015 Eric Hameleers, Eindhoven, Netherlands # Copyright 2015-2017 Thorn Inurcide # Copyright 2015-2017 tde-slackbuilds project on GitHub # All rights reserved. # # Permission to use, copy, modify, and distribute this software for # any purpose with or without fee is hereby granted, provided that # the above copyright notice and this permission notice appear in all # copies. # # THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. # IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF # USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # Thanks to Slackware 12.2 SlackBuild for kdebase PRGNAM=tdebase VERSION=$TDEVERSION BUILD=${BUILD:-1} TAG=${TAG:-_tde} source ../../get-source.sh getsource_fn untar_fn ## make default tdm screen text clearer against dark background and align login button with clickable area ## edit color="#ffff74" and/or color="#ff0000" for your own choice echo $' --- tdm/kfrontend/themes/o2_enterprise/enterprise.xml +++ tdm/kfrontend/themes/o2_enterprise/enterprise.xml @@ -12 +12 @@ - + @@ -39 +39 @@ - + @@ -42 +42 @@ - + @@ -59 +59 @@ - + @@ -64 +64 @@ - + @@ -86,2 +86,2 @@ - - + + @@ -93,2 +93,2 @@ - - + + ' | patch -N -p0 || true ## enable konqueror filemanagement ViewMode to be set - TDE bug 1963 echo $' --- konqueror/listview/konq_detailedlistview.desktop +++ konqueror/listview/konq_detailedlistview.desktop @@ -86,0 +87 @@ +X-TDE-BrowserView-Built-Into=konqueror --- konqueror/iconview/konq_iconview.desktop +++ konqueror/iconview/konq_iconview.desktop @@ -87,0 +88 @@ +X-TDE-BrowserView-Built-Into=konqueror --- konqueror/iconview/konq_multicolumnview.desktop +++ konqueror/iconview/konq_multicolumnview.desktop @@ -87,0 +88 @@ +X-TDE-BrowserView-Built-Into=konqueror --- konqueror/listview/konq_infolistview.desktop +++ konqueror/listview/konq_infolistview.desktop @@ -84,0 +85 @@ +X-TDE-BrowserView-Built-Into=konqueror --- konqueror/listview/konq_textview.desktop +++ konqueror/listview/konq_textview.desktop @@ -87,0 +88 @@ +X-TDE-BrowserView-Built-Into=konqueror --- konqueror/listview/konq_treeview.desktop +++ konqueror/listview/konq_treeview.desktop @@ -87,0 +88 @@ +X-TDE-BrowserView-Built-Into=konqueror ' | patch -N -p0 || true ## allow for configuration files directory == /etc/tde ## and plugins in $INSTALL_TDE/lib$LIBDIRSUFFIX/tde sed -i "s|trinity|$PLUGIN_INSTALL_DIR|g" tdm/config.def || true sed -i "s|trinity|$PLUGIN_INSTALL_DIR|" tdm/kfrontend/gentdmconf.c || true sed -i "s|trinity|$PLUGIN_INSTALL_DIR|" kcontrol/hwmanager/devicepropsdlg.cpp || true sed -i "s|trinity|$PLUGIN_INSTALL_DIR|" tdeioslave/trash/testtrash.cpp || true patch -N -p0 << EOF || true --- translations/desktop_files/kcontrol-desktops/en_GB.po +++ translations/desktop_files/kcontrol-desktops/en_GB.po @@ -1355,3 +1355,3 @@ msgid "Configure display ICC color profile" -msgstr "" +msgstr "Configure display ICC colour profile" @@ -1360,3 +1360,3 @@ msgid "ICC;display;color;profile;" -msgstr "" +msgstr "ICC;display;colour;profile;" @@ -1365,3 +1365,3 @@ msgid "Color Profile" -msgstr "" +msgstr "Colour Profile" EOF ## find htsearch - add this Slackware default path to list of possible locations ## rather than set HTDIG_SEARCH_BINARY which fixes the location sed -i 's|HINTS|&\n /var/www/cgi-bin|' khelpcenter/searchhandlers/CMakeLists.txt listdocs_fn chown_fn cd_builddir_fn ## Add man pages for development builds [[ $TDEVERSION != 14.0.12 ]] && MAN_PAGES=-DMAN_INSTALL_DIR=$INSTALL_TDE/man cmake ${G_NINJA:-} ${CMAKE_OPTS:-} \ -DCMAKE_C_FLAGS="$SLKRCFLAGS" \ -DCMAKE_CXX_FLAGS="$SLKRCFLAGS" \ -DCMAKE_C_COMPILER=$COMPILER \ -DCMAKE_CXX_COMPILER=$COMPILER_CXX \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=$INSTALL_TDE \ -DSYSCONF_INSTALL_DIR=$SYS_CNF_DIR \ -DLIB_SUFFIX=$LIBDIRSUFFIX \ -DPLUGIN_INSTALL_DIR=$INSTALL_TDE/lib$LIBDIRSUFFIX/$PLUGIN_INSTALL_DIR \ ${MAN_PAGES:-} \ -DWITH_ARTS="ON" \ -DWITH_ELFICON="OFF" \ -DWITH_GCC_VISIBILITY=${GCC_VIS:-} \ -DWITH_HAL="OFF" \ -DWITH_I8K="OFF" \ -DWITH_LDAP="OFF" \ -DWITH_LIBART="ON" \ -DWITH_LIBCONFIG="OFF" \ -DWITH_LIBRAW1394="OFF" \ -DWITH_LIBUSB="OFF" \ -DWITH_OPENEXR="ON" \ -DWITH_OPENGL="ON" \ -DWITH_PAM="OFF" \ -DWITH_PCRE="ON" \ -DWITH_SAMBA="OFF" \ -DWITH_SASL="OFF" \ -DWITH_SENSORS="ON" \ -DWITH_SHADOW="ON" \ -DWITH_SUDO_KONSOLE_SUPER_USER_COMMAND="ON" \ -DWITH_SUDO_TDESU_BACKEND="ON" \ -DWITH_TDEHWLIB="ON" \ -DWITH_UPOWER="ON" \ -DWITH_XCOMPOSITE="ON" \ -DWITH_XCURSOR="ON" \ -DWITH_XDMCP="ON" \ -DWITH_XFIXES="ON" \ -DWITH_XINERAMA="ON" \ -DWITH_XRANDR="ON" \ -DWITH_XRENDER="ON" \ -DWITH_XSCREENSAVER="OFF" \ -DWITH_XTEST="ON" \ -DBUILD_APPLNK="ON" \ -DBUILD_CRASHTEST="ON" \ -DBUILD_DOC="ON" \ -DBUILD_DRKONQI="ON" \ -DBUILD_KAPPFINDER="ON" \ -DBUILD_KATE="ON" \ -DBUILD_KCHECKPASS="ON" \ -DBUILD_KCMINIT="ON" \ -DBUILD_KCONTROL="ON" \ -DBUILD_KDCOP="ON" \ -DBUILD_KDESKTOP="ON" \ -DBUILD_KDIALOG="ON" \ -DBUILD_KFIND="ON" \ -DBUILD_KHELPCENTER="ON" \ -DBUILD_KHOTKEYS="ON" \ -DBUILD_KICKER="ON" \ -DBUILD_KLIPPER="ON" \ -DBUILD_KMENUEDIT="ON" \ -DBUILD_KNETATTACH="ON" \ -DBUILD_KONQUEROR="ON" \ -DBUILD_KONSOLE="ON" \ -DBUILD_KPAGER="ON" \ -DBUILD_KPERSONALIZER="ON" \ -DBUILD_KREADCONFIG="ON" \ -DBUILD_KROOTBACKING="ON" \ -DBUILD_KSMSERVER="ON" \ -DBUILD_KSPLASHML="ON" \ -DBUILD_KSTART="ON" \ -DBUILD_KSYSGUARD="ON" \ -DBUILD_KSYSTRAYCMD="ON" \ -DBUILD_KTIP="ON" \ -DBUILD_KXKB="ON" \ -DBUILD_L10N="ON" \ -DBUILD_LIBKONQ="ON" \ -DBUILD_NSPLUGINS="ON" \ -DBUILD_PICS="ON" \ -DBUILD_PROFILE_SHUTDOWN="OFF" \ -DBUILD_STARTTDE="ON" \ -DBUILD_TDEDEBUGDIALOG="ON" \ -DBUILD_TDEEJECT="ON" \ -DBUILD_TDEINIT="ON" \ -DBUILD_TDEIOSLAVES="ON" \ -DBUILD_TDEKBDLEDSYNC="ON" \ -DBUILD_TDEPASSWD="ON" \ -DBUILD_TDEPRINT="ON" \ -DBUILD_TDESCREENSAVER="ON" \ -DBUILD_TDESU="ON" \ -DBUILD_TDM="ON" \ -DBUILD_TDM_SYSTEMD_UNIT_FILE="OFF" \ -DBUILD_TQT3INTEGRATION="ON" \ -DBUILD_TSAK="ON" \ -DBUILD_TWIN="ON" \ -Wno-dev \ .. make_fn installdocs_fn [[ $TDEVERSION != 14.0.12 ]] && mangzip_fn strip_fn ############################################################################## # Add xinitrc: mkdir -p $PKG/etc/X11/xinit echo '#!''/bin/sh userresources=$HOME/.Xresources usermodmap=$HOME/.Xmodmap sysresources=/etc/X11/xinit/.Xresources sysmodmap=/etc/X11/xinit/.Xmodmap if [ -f $sysresources ]; then /usr/bin/xrdb -merge $sysresources fi if [ -f $sysmodmap ]; then /usr/bin/xmodmap $sysmodmap fi if [ -f $userresources ]; then /usr/bin/xrdb -merge $userresources fi if [ -f $usermodmap ]; then /usr/bin/xmodmap $usermodmap fi if [ -z "$DESKTOP_SESSION" -a -x /usr/bin/ck-launch-session ]; then exec ck-launch-session dbus-launch --exit-with-session '"$INSTALL_TDE"'/bin/starttde else exec dbus-launch --exit-with-session '"$INSTALL_TDE"'/bin/starttde fi ' > $PKG/etc/X11/xinit/xinitrc.tde chmod 755 $PKG/etc/X11/xinit/xinitrc.tde [[ $(cat $TMPVARS/RUNLEVEL) == *xinitrc* ]] && { (cd $PKG/etc/X11/xinit/ ln -sf xinitrc.tde xinitrc) } ############################################################################## ## create tde.{,c}sh: mkdir -p $PKG/etc/profile.d echo '#!'"/bin/sh # TDE additions: export TDEDIR=$INSTALL_TDE # upgradepkg runs installpkg twice, so test for the second run: [[ \"\$XDG_CONFIG_DIRS\" != *$SYS_CNF_DIR/xdg* ]] && { if [ ! \"\$XDG_CONFIG_DIRS\" = \"\" ]; then export XDG_CONFIG_DIRS=\$XDG_CONFIG_DIRS:$SYS_CNF_DIR/xdg else export XDG_CONFIG_DIRS=/etc/xdg:$SYS_CNF_DIR/xdg fi } ## Re: https://specifications.freedesktop.org/basedir-spec/basedir-spec-0.6.html ## If XDG_DATA_DIRS is null or unset, the default is /usr/local/share:/usr/share [[ \$XDG_DATA_DIRS == \"\" ]] && \\ export XDG_DATA_DIRS=/usr/local/share:/usr/share:$INSTALL_TDE/share || { [[ \$XDG_DATA_DIRS != *$INSTALL_TDE/share* ]] && \\ export XDG_DATA_DIRS=\$XDG_DATA_DIRS:$INSTALL_TDE/share } " > $PKG/etc/profile.d/tde.sh echo '#!'"/bin/csh # TDE additions: if ( ! \$?TDEDIR ) then setenv TDEDIR $INSTALL_TDE endif if ( \$?XDG_CONFIG_DIRS ) then setenv XDG_CONFIG_DIRS \$XDG_CONFIG_DIRS:$SYS_CNF_DIR/xdg else setenv XDG_CONFIG_DIRS /etc/xdg:$SYS_CNF_DIR/xdg endif setenv XDG_DATA_DIRS /usr/local/share:/usr/share:$INSTALL_TDE/share " > $PKG/etc/profile.d/tde.csh chmod 755 $PKG/etc/profile.d/tde.{,c}sh ############################################################################## # Set sane permissions for the include files. if [ -d $PKG$INSTALL_TDE/include ]; then find $PKG$INSTALL_TDE/include -type f -exec chmod 0644 {} \; fi ################################# TDM stuff ################################# # Add some configuration files / scripts needed by TDE. mkdir -p $PKG$SYS_CNF_DIR mv $PKG$INSTALL_TDE/share/config/tdm $PKG$SYS_CNF_DIR/tdm ( cd $PKG$INSTALL_TDE/share/config ; ln -sf $SYS_CNF_DIR/tdm tdm ) # Setup config files for TDM: $PKG$INSTALL_TDE/bin/gentdmconf --no-old --no-old-scripts --no-backup --in $PKG$SYS_CNF_DIR/tdm ## set correct paths for config files sed -i "s|$INSTALL_TDE/share/config/tdm/|$SYS_CNF_DIR/tdm/|" $PKG$SYS_CNF_DIR/tdm/tdmrc # Allow root to login sed 's|AllowRootLogin=false|AllowRootLogin=true|' $PKG$SYS_CNF_DIR/tdm/tdmrc > $PKG$SYS_CNF_DIR/tdm/tdmrc.new ## Remove tdmrc which has AllowRootLogin=false set and would be used for a new installation ## The installed tdmrc will be created by doinst.sh from tdmrc.new if it doesn't exist rm $PKG$SYS_CNF_DIR/tdm/tdmrc mv $PKG$SYS_CNF_DIR/tdm/Xsession $PKG$SYS_CNF_DIR/tdm/Xsession.orig # ## new Xsession: echo '#!'' /bin/sh # Xsession - run as user # Merged in parts of the old Xsession to load defaults from # Xresources and Xmodmap files, 2006-02-09 volkerdi session=$1 # This section is borrowed from the old X11 Xsession file: userresources=$HOME/.Xresources usermodmap=$HOME/.Xmodmap sysresources=/usr/lib/X11/xinit/.Xresources sysmodmap=/usr/lib/X11/xinit/.Xmodmap # merge in defaults and keymaps if [ -r $sysresources ]; then /usr/bin/xrdb -merge $sysresources fi if [ -r $sysmodmap ]; then /usr/bin/xmodmap $sysmodmap fi if [ -r $userresources ]; then /usr/bin/xrdb -merge $userresources fi if [ -r $usermodmap ]; then /usr/bin/xmodmap $usermodmap fi # Note that the respective logout scripts are not sourced. case $SHELL in */bash) [ -z "$BASH" ] && exec $SHELL $0 "$@" set +o posix [ -f /etc/profile ] && . /etc/profile if [ -f $HOME/.bash_profile ]; then . $HOME/.bash_profile elif [ -f $HOME/.bash_login ]; then . $HOME/.bash_login elif [ -f $HOME/.profile ]; then . $HOME/.profile fi ;; */zsh) [ -z "$ZSH_NAME" ] && exec $SHELL $0 "$@" emulate -R zsh [ -d /etc/zsh ] && zdir=/etc/zsh || zdir=/etc zhome=${ZDOTDIR:-$HOME} # zshenv is always sourced automatically. [ -f $zdir/zprofile ] && . $zdir/zprofile [ -f $zhome/.zprofile ] && . $zhome/.zprofile [ -f $zdir/zlogin ] && . $zdir/zlogin [ -f $zhome/.zlogin ] && . $zhome/.zlogin ;; */csh|*/tcsh) # [t]cshrc is always sourced automatically. # Note that sourcing csh.login after .cshrc is non-standard. xsess_tmp=`mktemp` $SHELL -c "if (-f /etc/csh.login) source /etc/csh.login; if (-f ~/.login) source ~/.login; /bin/sh -c export >! $xsess_tmp" . $xsess_tmp rm -f $xsess_tmp ;; *) # Plain sh, ksh, and anything we don'\''t know. [ -f /etc/profile ] && . /etc/profile [ -f $HOME/.profile ] && . $HOME/.profile ;; esac [ -f /etc/xprofile ] && . /etc/xprofile [ -f $HOME/.xprofile ] && . $HOME/.xprofile case $session in "") exec xmessage -center -buttons OK:0 -default OK "Sorry, $DESKTOP_SESSION is no valid session." ;; failsafe) exec xterm -geometry 80x24-0-0 ;; custom) exec $HOME/.xsession ;; default) exec '"$INSTALL_TDE"'/bin/starttde ;; *) eval exec "$session" ;; esac exec xmessage -center -buttons OK:0 -default OK "Sorry, cannot execute $session. Check $DESKTOP_SESSION.desktop." ' > $PKG$SYS_CNF_DIR/tdm/Xsession # Add rc.4.local to give TDM priority over rc.4 X11 session manager options # Assumes that rc.4.new from sysvinit-scripts still has the rc.4.local option mkdir $PKG/etc/rc.d echo '#!'" /bin/sh # Start TDM: if [ -x $INSTALL_TDE/bin/tdm ]; then echo 'Using TDM (Trinity Login Manager).' echo # log_cleanup '/var/log/tdm.log' exec $INSTALL_TDE/bin/tdm -nodaemon -error /var/log/tdm.log fi " > $PKG/etc/rc.d/rc.4.local.tdm chmod 755 $PKG/etc/rc.d/rc.4.local.tdm mv $PKG$SYS_CNF_DIR/tdm/backgroundrc $PKG$SYS_CNF_DIR/tdm/backgroundrc.new [[ -r $PKG$SYS_CNF_DIR/tdm/README ]] && \ sed -i "s|$TMP_BUILD/package-tdebase$SYS_CNF_DIR/tdm|$SYS_CNF_DIR/tdm|" $PKG$SYS_CNF_DIR/tdm/README ############################################################################## mkdir_install_fn ############################################################################## ## create doinst.sh: echo '# Save old config files: if [ ! -L etc/X11/tdm ]; then if [ -d etc/X11/tdm ]; then mkdir -p .'"$SYS_CNF_DIR"'/tdm cp -a etc/X11/tdm/* .'"$SYS_CNF_DIR"'/tdm rm -rf etc/X11/tdm ( cd etc/X11 ; ln -sf ../..'"$SYS_CNF_DIR"'/tdm tdm ) elif [ ! -e etc/X11/tdm ]; then mkdir -p etc/X11 ( cd etc/X11 ; ln -sf ../..'"$SYS_CNF_DIR"'/tdm tdm ) fi fi config() { NEW="$1" OLD="$(dirname $NEW)/$(basename $NEW .new)" # If there'\''s no config file by that name, mv it over: if [ ! -r $OLD ]; then mv $NEW $OLD elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then # toss the redundant copy rm $NEW fi # Otherwise, we leave the .new copy for the admin to consider... } config .'"$SYS_CNF_DIR"'/tdm/tdmrc.new config .'"$SYS_CNF_DIR"'/tdm/backgroundrc.new # update PATH # upgradepkg runs installpkg twice, so even though '"$TQTDIR"'/bin might be # a new PATH, it needs to be tested for the second run if ! grep '"$TQTDIR"'/bin /etc/profile then echo "PATH='"$TQTDIR"'/bin:\$PATH" >> /etc/profile fi if ! grep '"$INSTALL_TDE"'/bin /etc/profile then echo "PATH='"$INSTALL_TDE"'/bin:\$PATH" >> /etc/profile fi # update MANPATH if ! grep '"$INSTALL_TDE"'/man /etc/profile then echo "export MANPATH=\$MANPATH:'"$INSTALL_TDE"'/man" >> /etc/profile fi ## you may not want to do this ## # start a '\''konsole'\'' with system-wide profile [[ ! $(grep -x "source /etc/profile" $HOME/.bashrc ) ]] && echo "source /etc/profile" >> $HOME/.bashrc || true # don'\''t want this sed -i '\''s|source /etc/profile.d/mc.sh|#source /etc/profile.d/mc.sh|'\'' $HOME/.bashrc || true ' > $PKG/install/doinst.sh ## set TDEHOME and TDEROOTHOME variables - defaults ~/.trinity and /root/.trinity [[ $SYS_CNF_DIR == /etc/tde ]] && { echo "# upgradepkg runs installpkg twice, so firstly remove any previous TDE*HOME entries sed -i '/TDE.*HOME/d' /etc/profile echo 'export TDEHOME=~/.tde' >> /etc/profile echo 'export TDEROOTHOME=/root/.tde' >> /etc/profile " >> $PKG/install/doinst.sh } ## Set up doinst.sh according to the TDM options selected [[ $(cat $TMPVARS/RUNLEVEL) == *rc4l* ]] && { echo '## login manager TDM selected cp etc/rc.d/rc.4.local.tdm etc/rc.d/rc.4.local ' >> $PKG/install/doinst.sh } # [[ $(cat $TMPVARS/RUNLEVEL) == *rl4* ]] && { echo "## set default runlevel to 4 for TDM sed -i 's|id:[1-5]|id:4|' etc/inittab " >> $PKG/install/doinst.sh } doinst_sh_fn ############################################################################## echo " # HOW TO EDIT THIS FILE: # The 'handy ruler' below makes it easier to edit a package description. Line # up the first '|' above the ':' following the base package name, and the '|' # on the right side marks the last column you can put a character in. You must # make exactly 11 lines for the formatting to be correct. It's also # customary to leave one space after the ':'. |-----handy-ruler------------------------------------------------------| $PRGNAM: tdebase (The Trinity Desktop base) $PRGNAM: $PRGNAM: tdebase is the second mandatory package (besides tdelibs) for the $PRGNAM: Trinity Desktop Environment. Here we have various applications and $PRGNAM: infrastructure files and libraries. $PRGNAM: $PRGNAM: $PRGNAM: $PRGNAM: $PRGNAM: $PRGNAM: " > $PKG/install/slack-desc makepkg_fn