Criação de ports para slackware

Publicado por Perfil removido (última atualização em 18/02/2011)

[ Hits: 4.620 ]

Download dgfportscreate.sh




Crie ports no Slackware com este script.

Mais detalhes sobre o uso, digite:

./dgfportscreate -h

  



Esconder código-fonte

#!/bin/bash
# -----------------------------------------------------------------------
# - Feito por: Douglas Giorgio Fim               -
# - E-mail: douglasfim@yahoo.com.br               -
# - Programa: dgfports                     -
# - Versao: x.x                        -
# -                           -
# - Este script pode ser alterado e distribuido por qualquer pessoa,   -
# - desde que este quadro se mantenha inalterado.         -
# -                           -
# - Obs.:   Este script foi desenvolvido para criação de ports com    -
# -       scripts do slackbuilds.org.               -
# -       Estes scripts não resolvem dependencias.      -
# -       Não me responsabiliso pelas alterações do usuário.   -
# -----------------------------------------------------------------------
#
# recomendo alterar somente as variaveis.

DIRPORTS=/usr/local/dgfports # defina aqui o diretorio padrão do ports, evite colocar diretorio existente.
SLACK_VERSION=13.1 # defina aqui a versão de seu slackware, esse valor tem que ser o mesmo do slackbuilds.org

# script direcionado para download.sh
EXAMPLE_SCRIPT='
#!/bin/bash

ARCH=`uname -m`

case $1 in
  -h|help|-help|--help)
      echo "
   Download SlackBuild script -> download program
   ./download.sh

   Download SlackBuild script -> download program -> run SlackBuild script
   ./download.sh makepkg

   Install Package
   ./download.sh installpkg

   Download SlackBuild script -> Download program -> run SlackBuild script -> Install Package
   ./download.sh all

   Clean
   ./download.sh clean
       "
      exit 1
      ;;

  clean)
      for i in `ls | grep -v download.sh`; do  rm -rf $i ; done
      exit 1
      ;;

esac
'

# script direcionado para download.sh
EXAMPLE_SCRIPT2='
PRGNAM=`more *.info | grep PRGNAM | cut -d= -f2 | sed s/\"//g`
VERSION=`more *.info | grep VERSION | cut -d= -f2 | sed s/\"//g`
LINK1=`more *.info | grep DOWNLOAD_x86_64= | cut -d= -f2 | sed s/\"//g`
LINK2=`more *.info | grep DOWNLOAD= | cut -d= -f2 | sed s/\"//g`

if [ "$ARCH" == "x86_64" ]; then
  if [ "$LINK1" == "" ];then
    LINK_DOWNLOAD="$LINK2"
  else
    LINK_DOWNLOAD="$LINK1"
  fi
else
  LINK_DOWNLOAD="$LINK2"
fi

case $1 in

  makepkg) 
      wget -c "$LINK_DOWNLOAD"
      chmod +x ./$PRGNAM.SlackBuild ; ./$PRGNAM.SlackBuild
      exit 1
      ;;

  installpkg) 
      installpkg /tmp/$PRGNAM-$VERSION-$ARCH-*.t?z
      exit 1
      ;;

  all) 
      wget -c "$LINK_DOWNLOAD"
      chmod +x ./$PRGNAM.SlackBuild ; ./$PRGNAM.SlackBuild && installpkg /tmp/$PRGNAM-$VERSION-`uname -m`-*.t?z
      exit 1
      ;;

esac

wget -c "$LINK_DOWNLOAD"
'

# parametro para remoção do ports
if [ "$1" == -r ]; then
  echo "Removendo o DGFPorts..."
  rm -rf $DIRPORTS
  echo "Remoção concluida!"
  exit 1
fi

mkdir -p "$DIRPORTS" || exit 1
cd "$DIRPORTS" || exit 1

rm -rf SLACKBUILDS.TXT*
wget ftp://slackbuilds.org/$SLACK_VERSION/SLACKBUILDS.TXT
mkdir -p "$DIRPORTS/DISTFILES"

# cria os diretorios, não é recomendavel alterar
more SLACKBUILDS.TXT | for i in `grep LOCATION: | awk '{print $3}'` ; do mkdir -pv $i ;done 

# função criada para criação de novas funções ao script
RECURS() {
  for DIR in `ls -l "$DIRPORTS" | grep "^d" | grep -v DISTFILES | awk '{print $9}'` ; do 
    cd "$DIRPORTS/$DIR" 
    for SUB_DIR in `ls -l "$DIRPORTS/$DIR" | grep "^d" | grep -v DISTFILES | awk '{print $9}'` ; do 
      cd "$DIRPORTS/$DIR/$SUB_DIR"
      $*
    done 
  done
}
# Exemplo de uso:
#
# RECURS 'touch download.sh'
# RECURS 'chmod +x download.sh'

# remoção e criação de scripts, não é recomendavel alterar
for DIR in `ls -l "$DIRPORTS" | grep "^d" | grep -v DISTFILES | awk '{print $9}'` ; do 
  cd "$DIRPORTS/$DIR" 
  for SUB_DIR in `ls -l "$DIRPORTS/$DIR" | grep "^d" | grep -v DISTFILES | awk '{print $9}'` ; do 
    cd "$DIRPORTS/$DIR/$SUB_DIR"
    echo "Removendo script $DIRPORTS/$DIR/$SUB_DIR/download.sh"
    rm -rf download.sh
    echo "Criando script $DIRPORTS/$DIR/$SUB_DIR/download.sh"
    touch download.sh
    chmod +x download.sh
    echo "$EXAMPLE_SCRIPT" >> download.sh
    echo "wget -c ftp://slackbuilds.org/$SLACK_VERSION/$DIR/$SUB_DIR/*" >> download.sh
    echo "$EXAMPLE_SCRIPT2" >> download.sh
  done 
done

Scripts recomendados

Slackware multilib-upgrade

Instalação da Multilib no Slackware

Shell para ativar o Iptables

Autenticação automática no Speedy Home

Adicionando "automagicamente" usuários


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts