Crie Seu Próprio Gerenciador de Pacotes do Zero - Parte 1
Eu sempre fui curioso em relação às coisas que me interessam, quando iniciei no mundo do GNU/Linux, eu fiquei admirado com a facilidade de instalar programas. No início, rodando entre as distribuições Linux, eu acabei conhecendo vários tipos de gerenciadores de pacotes e cada um com sua peculiaridade. Foi aí que me interessei em ler o código fonte de diversos gerenciadores e criar o meu próprio.
[ Hits: 13.274 ]
Por: Slackjeff em 19/02/2020 | Blog: https://slackjeff.com.br
#!/bin/sh
#=========================HEADER===============================|
#AUTOR:
# Jefferson Rocha
#
#VERSÃO:
# 0.1
#
#DESCRIÇÃO:
#createpkg - cria pacotes compactador com tar e comprimido
# com o utilitário xz.
#==============================================================|
# Erros? pare.
set -e
#==========================| FUNÇÕES
CREATE()
{
}
#==========================| INICIO
case $1 in
-c|--create|create)
shift # Rebaixando um parâmetro posicional.
# O usuário passou o nome do pacote? exemplo dialog-teste.tar.xz
if [ -z "$1" ]; then
echo "Você deve especificar o nome do pacote."
exit 1
fi
# Chamando a função CREATE e passando como parâmetro o nome do pacote.
CREATE "$1"
;;
esac
CREATE()
{
# Recebendo o nome do pacote passado para a função.
local PKG="$1"
Vamos fazer o empacotamento com o tar e comprimindo com o xz todo o diretório e gerar o "pacote" um diretório acima.
# Empacotando todo o diretório e gerando o pacote
# um diretório acima.
tar -cvJf ../${PKG} .
echo "O pacote ${PKG} foi gerado com sucesso."
return 0
}
#!/bin/sh
#=========================HEADER===============================|
#AUTOR:
# Jefferson Rocha
#
#VERSÃO:
# 0.1
#
#DESCRIÇÃO:
#createpkg - cria pacotes compactador com tar e comprimido
# com o utilitário xz.
#==============================================================|
# Erros? pare.
set -e
#==========================| FUNÇÕES
CREATE()
{
# Recebendo o nome do pacote passado para a função.
local PKG="$1"
# Empacotando todo o diretório e gerando o pacote
# um diretório acima.
tar -cvJf ../${PKG} .
echo
echo "O pacote ${PKG} foi gerado com sucesso."
return 0
}
#==========================| INICIO
case $1 in
-c|--create|create)
shift # Rebaixando um parâmetro posicional.
# O usuário passou o nome do pacote? exemplo dialog-teste.tar.xz
if [ -z "$1" ]; then
echo "Você deve especificar o nome do pacote."
exit 1
fi
# Chamando a função CREATE e passando como parâmetro o nome do pacote.
CREATE1 "$1"
;;
esac
Programas em Modo Texto (on Shell)
Howto de Compilação com Slackbuilds
Como ser um expert em GNU/Linux!
Compilação Kernel Linux no Slackware
Atualização das provas LPIC-1, 304 e Essentials
Introdução ao Ubuntu - Instalação de programas e outras dicas
Siduction - Nova distro baseada no Debian SID
FAI (Fully Automatic Installation)
Sistema lento? Encontrando a causa do problema
A produção de áudio e vídeo no Linux e as distribuições dedicadas a esse fim
Criptografando sua Home com Gocryptfs para tristeza do meliante
A Involução do Linux e as Lambanças Desnecessárias desde o seu Lançamento
O Journal no Linux para a guarda e consulta de logs do sistema
A evolução do Linux e as mudanças que se fazem necessárias desde o seu lançamento
Instalar Ubuntu com Btrfs + LUKS de forma fácil
Habilitando "hotcorner" no Ubuntu
Zen Kernel no Arch Linux (instalar e remover)
Como instalar e remover o kernel Liquorix
Fazendo o controle de Xbox 360 USB funcionar no One Piece Pirate Warriors 4 (Arch Linux/Steam)
Continuando meus tópicos anteriores (9)
Executar um programa em Rust (2)
Não consigo publicar screenshots no Viva o Linux [RESOLVIDO] (5)









