Durante algum tempo me aventurei em compilar os pacotes do KDE para o Slackware64. Não chegava a ser um grande trabalho pois a maior parte do serviço já estava feito nos SlackBuilds oficiais. Mas na ocasião Eric Hameleers (AlienBOB) passo a manter uma atualização quase em sincronismo com o lançamento da nova versão do KDE, e com o Alien não dava para competir. Como resultado abandonei a compilação dos pacotes e passei a utilizar o trabalho de AlienBOB.
Perdi um pouco da diversão, confesso, mas o importante estava assegurado, poderia continuar utilizando a última versão do KDE, tão logo saísse do forno. Até então não me decepcionei com a escolha.
Os pacotes do AlienBOB são anunciados em seu site Alien Pastures, geralmente poucos dias após o lançamento das fontes pelo site oficial. O problema é que estes são construídos, geralmente, sobre a versão current do Slackware. Pessoalmente não vejo isto como um problema, uma vez que o current tem se mostrado muito estável nos últimos anos (o uso a pelo menos uns 5 anos em meu notebook de trabalho). A menos de alguns probleminhas pequenos não tenho nada a reclamar (o último incômodo que percebi foi a falta de um --login na linha de comando do konsole).
O artigo que lança a compilação do KDE 4.10.0 para o Slackware64-current foi o “KDE SC 4.10.0 released”, do dia 8 de fevereiro de 2013, apenas dois dias depois do lançamento do 4.10.0. Em 10 de fevereiro o AlienBOB lançou o segundo build dos pacotes kde-workspace e nepomuk-core, “Two fix-packages for KDE SC 4.10.0″, referentes a aplicação de um patch aos pacotes.
Instalando
Os pacotes podem ser baixados dos espelhos:
- http://alien.slackbook.org/ktown/ (repositório principal), rsync URI: rsync://alien.slackbook.org/alien/ktown/
- http://taper.alienbase.nl/mirrors/alien-kde/ (espelho rápido), rsync URI: rsync://taper.alienbase.nl/mirrors/alien-kde/
- http://repo.ukdw.ac.id/alien-kde/ (espelho na Indonésia de Willysr), rsync URI: rsync://repo.ukdw.ac.id/alien-kde/
Willysr (Willy Sudiarto Raharjo) é um grande colaborador do AlienBOB, até onde pude entender. Recentemente adicionei seu site a minha lista de links para acompanhar, assim espero conhecê-lo melhor.
No espelho tem um README.txt bem claro, com os passo para a instalação dos pacotes que em linhas gerais se resume em executar os comando abaixo, com a máquina em modo 3 e modo texto:
Baixar os pacotes:
root@arabel:# cd 4.10.0
Instalar os pacotes 32bits:
root@arabel:# upgradepkg --reinstall --install-new x86/kde/*.t?z
root@arabel:# removepkg kdegames
root@arabel:# removepkg kdemultimedia
root@arabel:# removepkg ksecrets
root@arabel:# removepkg printer-applet
ou em 64Bits:
root@arabel:# upgradepkg --reinstall --install-new x86_64/kde/*.t?z
root@arabel:# removepkg kdegames
root@arabel:# removepkg kdemultimedia
root@arabel:# removepkg ksecrets
root@arabel:# removepkg printer-applet
Por fim, atualizar os pacotes de linguagem e os novos arquivos de configuração em /etc.
ou
e por fim
Automatizando a Instalação
Para deixar alguma contribuição, fiz um pequeno script para automatizar todo o processo para os mais acomodados ou menos experientes.
O script baixa os pacotes da arquitetura do Slackware que estiver usando (32Bits ou 64Bits) e instala, se executado em modo 3. Ele ainda permite manter uma cópia dos pacotes, fontes e scripts de construção localmente.
Chamei o script de kde_rsync, pois inicialmente a ideia era apenas fazer o download dos pacotes. Fique a vontade para renomeá-lo como desejar.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 | #!/bin/bash # # by Rudson R. Alves # VERSION=${VERSION:='4.10.0'} SVERSION=${SVERSION:=`cat /etc/slackware-version | awk '{ print $2 }'`} KDE_DIR=${KDE_DIR:='/home/ftp/linux/kde46'} SRC_DIR="$KDE_DIR/source" URL_BASE=${URL:="taper.alienbase.nl/mirrors/alien-kde"} URL="$URL_BASE/$SVERSION" ACTION="fast" VERBOSE=false GETSRC=false UPGRADE="upgradepkg" INSTALL="installpkg" REMOVE="removepkg" if [ ! -e $KDE_DIR ]; then mkdir -p $KDE_DIR fi if [ ! -e $SCR_DIR ]; then mkdir -p $SRC_DIR fi # Automatically determine the architecture we're building on: ARCH=$( uname -m ) case "$ARCH" in i?86|x86) ARCH=x86 NOARCH=x86_64 ;; x86_64) ARCH=x86_64 NOARCH=x86 ;; *) exit 1 ;; esac function last_kde_version { lynx --dump http://$URL | awk '/^ +[0-9]+.*$/ { print $2 }' | tail -1 | sed 's/^.*\/\([0-9]\.[0-9]\+\.[0-9]\+\)\/$/\1/' } function fast_rsync { echo -e "\nGet Packages to $ARCH:" if $VERBOSE; then echo "rsync -av --delete --progress --exclude $NOARCH rsync://$URL/$VERSION/ $KDE_DIR/$VERSION/" fi cd $VERSION rsync -av --delete --progress --exclude $NOARCH rsync://$URL/$VERSION/ $KDE_DIR/$VERSION/ cd .. if $GETSRC; then get_source fi } function all_rsync { echo -e "\nGet Packages to $ARCH:" if $VERBOSE; then echo "rsync -av --delete --progress rsync://$URL/$VERSION/ $KDE_DIR/$VERSION/" fi rsync -av --delete --progress rsync://$URL/$VERSION/ $KDE_DIR/$VERSION/ get_source } function get_source { if [ ! -e $SRC_DIR/ ]; then mkdir -p $SRC_DIR fi echo -e "\nGet Source files:" if $VERBOSE; then echo "rsync -av --delete --progress rsync://$URL_BASE/source/$VERSION/ $SRC_DIR/$VERSION/" fi rsync -av --delete --progress rsync://$URL_BASE/source/$VERSION/ $SRC_DIR/$VERSION/ } function help { echo "Use:" echo " `basename $0` [option]" echo " Where option is:" echo " -f|--fast to fast download in $ARCH packages, without source files" echo " -a|--all to download all files and arquiterures" echo " -l|--last get kde build last version" echo " -d|--destiny <DEST> set a source destiny" echo " -D|--debug enable debug mode" echo " -i|--install install packages" echo " -u|--upgrade to small upgrades" echo " -s|--source to down sources in fast download" echo " -h|--help to show help" exit 0 } function print_head { echo "" echo "KDE rsync script" echo "" echo "KDE VERSION: $VERSION" echo "repo DIR: $KDE_DIR" echo "repo URL: $URL" echo "System Arch: $ARCH" echo "Slack Version: $SVERSION" echo "" } function install_kde { fast_rsync if ! check_mode; then cd $CWD exit 1 fi cd $VERSION echo if $VERBOSE; then echo "$UPGRADE --reinstall --install-new $ARCH/deps/*.t?z" fi $UPGRADE --reinstall --install-new $ARCH/deps/*.t?z if $VERBOSE; then echo "$UPGRADE --reinstall --install-new $ARCH/kde/*.t?z" fi $UPGRADE --reinstall --install-new $ARCH/kde/*.t?z remove_old_pkgs slackpkg new-config cd .. } function upgrade_kde { fast_rsync if ! check_mode; then cd $CWD exit 1 fi cd $VERSION echo if $VERBOSE; then echo "$UPGRADE --install-new $ARCH/deps/*.t?z" fi $UPGRADE --install-new $ARCH/deps/*.t?z if $VERBOSE; then echo "$UPGRADE --install-new $ARCH/kde/*.t?z" fi $UPGRADE --install-new $ARCH/kde/*.t?z remove_old_pkgs slackpkg new-config cd .. } function remove_old_pkgs { if [ $VERSION != "4.9.5" ]; then if $VERBOSE; then echo "$REMOVE kdegames" fi $REMOVE kdegames 2>/dev/null if $VERBOSE; then echo "$REMOVE printer-applet" fi $REMOVE printer-applet 2>/dev/null fi if $VERBOSE; then echo "$REMOVE kdemultimedia" fi $REMOVE kdemultimedia 2>/dev/null if $VERBOSE; then echo "$REMOVE ksecrets" fi $REMOVE ksecrets 2>/dev/null if $VERBOSE; then echo "$REMOVE printer-applet" fi $REMOVE printer-applet 2>/dev/null if $VERBOSE; then echo "$UPGRADE $ARCH/kdei/*.t?z" fi $UPGRADE $ARCH/kdei/*.t?z if $VERBOSE; then echo "slackpkg new-config" fi } function set_parameters { while [ "$1" ]; do case $1 in "-l"|"--last") echo "Get last kde build version..." VERSION=`last_kde_version` ;; "-f"|"--fast") echo "Fast RSync to $ARCH Binaries..." ACTION="fast" ;; "-a"|"--all") echo "RSync All..." ACTION="all" ;; "-i"|"--install") echo "Install..." ACTION="install" ;; "-u"|"--upgrade") echo "Upgrade..." ACTION="upgrade" ;; "-v"|"--verbose") echo "Verbose On..." VERBOSE=true ;; "-d"|"--destiny") echo "Set destiny..." KDE_DIR=$2 shift ;; "-D"|"--debug") set -x ;; "-s"|"--source") echo "Down source..." GETSRC=true ;; *) help cd $CWD exit 0 ;; esac shift done } function check_mode { # Check root user echo "Check root user..." if [ "$USER" != "root" ]; then echo "\nERROR: Use this application as root user only!\n" return 1 fi # Check single-user mode echo "Check single-user mode..." LEVEL=(`runlevel`) if [ ${LEVEL[1]} -eq 4 ]; then echo -e "\nERROR: Put yout machine in mode 1 or 3:\ntelinit 1/3\n" return 1 fi return 0 } # Start Program CWD=$PWD cd $KDE_DIR/ # set input set_parameters "$@" print_head if [ -z $VERSION ]; then echo "Version Error..." exit 1 elif [ ! -e $VERSION ]; then if $VERBOSE; then echo "Create $VERSION directory..." fi mkdir $VERSION fi if [ $ACTION == "fast" ]; then fast_rsync elif [ $ACTION == "all" ]; then all_rsync elif [ $ACTION == "install" ]; then install_pkg elif [ $ACTION == "upgrade" ]; then upgrade_kde fi cd $CWD |
O script tem um help simples com as suas opções:
-f | --fast– download rápido, somente os pacotes de sua arquitetura;-a | --all– para baixar tudo;-l | --last– para baixar a última versão do KDE compilada;-d | --destiny– para mudar o destino de download dos pacotes;-D | --debug– habilita o modo debug do bash-i | --install– para instalar os pacotes;-u | --upgrade– para atualizar uma instalação;-s | --source– para baixar as fontes no modo--fast-h | --help– para help
A opção de -i, instalação, primeiro executa um download rápido (--fast) e depois instala os pacotes, se o sistema estiver no modo 3. A opção -d simplesmente altera o valor da variável KDE_DIR, no script (veja a linha 244). Pode ser uma boa ideia alterar isto definitivamente no próprio scripts, na linha 7, para evitar surpresas.
A opção -u, upgrade, deve ser usada somente em atualizações pequenas, como correções de bug apresentadas no artigo “Two fix-packages for KDE SC 4.10.0″, citado acima.
As linhas abaixo apresentam dois exemplos típicos de uso do script:
Com o sistema em modo 3, baixa e instala a última versão do KDE do espelho do AlienBOB:
Baixar todos os pacotes e fontes:

apos sincronismo com o mirror nao consigo acessar a pasta o q pode ser?
aparece isso!
sent 35 bytes received 103475 bytes 29574.29 bytes/sec
total size is 1917171184 speedup is 18521.60
root@darkstar:~# cd 4.10.0
bash: cd: 4.10.0: Arquivo ou diretório não encontrado
root@darkstar:~#
A linha 7 declara o diretório em que será colocado o espelho:
KDE_DIR=${KDE_DIR:=’/home/ftp/linux/kde46′}
tente
cd /home/ftp/linux/kde46/4.10.0/