diff options
author | tnut <thierryn1 at hispeed dot ch> | 2011-02-03 10:33:13 +0100 |
---|---|---|
committer | tnut <thierryn1 at hispeed dot ch> | 2011-02-03 10:33:13 +0100 |
commit | 1506f9971307bb66d6edf2edc51a20e5723371b4 (patch) | |
tree | 2f5ef22de614bb94b737fa9839b7ee64e5c36cb0 | |
parent | cb79537ed4193838096fef12fe86eaaf0d06cf34 (diff) | |
download | nutyx-pakxe-1506f9971307bb66d6edf2edc51a20e5723371b4.tar.gz nutyx-pakxe-1506f9971307bb66d6edf2edc51a20e5723371b4.tar.bz2 nutyx-pakxe-1506f9971307bb66d6edf2edc51a20e5723371b4.tar.xz nutyx-pakxe-1506f9971307bb66d6edf2edc51a20e5723371b4.zip |
pkg-get-awk, nouveau port, merci à guy
-rw-r--r-- | base/pkg-get-awk/.footprint | 10 | ||||
-rw-r--r-- | base/pkg-get-awk/.md5sum | 3 | ||||
-rw-r--r-- | base/pkg-get-awk/Pkgfile | 22 | ||||
-rw-r--r-- | base/pkg-get-awk/pkg-get-awk.conf | 11 | ||||
-rwxr-xr-x | base/pkg-get-awk/pkg-get.awk | 777 | ||||
-rw-r--r-- | base/pkg-get-awk/pkg-get.po | 179 | ||||
-rwxr-xr-x | base/pkg-get-awk/post-install | 19 |
7 files changed, 1021 insertions, 0 deletions
diff --git a/base/pkg-get-awk/.footprint b/base/pkg-get-awk/.footprint new file mode 100644 index 000000000..0cc820c4f --- /dev/null +++ b/base/pkg-get-awk/.footprint @@ -0,0 +1,10 @@ +drwxr-xr-x root/root etc/ +-rw-rw-r-- root/root etc/pkg-get-awk.conf +drwxr-xr-x root/root usr/ +drwxr-xr-x root/root usr/bin/ +-rwxr-xr-x root/root usr/bin/pkg-get.awk +drwxr-xr-x root/root usr/share/ +drwxr-xr-x root/root usr/share/locale/ +drwxr-xr-x root/root usr/share/locale/en/ +drwxr-xr-x root/root usr/share/locale/en/LC_MESSAGES/ +-rw-r--r-- root/root usr/share/locale/en/LC_MESSAGES/pkg-get.mo diff --git a/base/pkg-get-awk/.md5sum b/base/pkg-get-awk/.md5sum new file mode 100644 index 000000000..674f11792 --- /dev/null +++ b/base/pkg-get-awk/.md5sum @@ -0,0 +1,3 @@ +f53878688aabc4ae534c5b5b82119d84 pkg-get-awk.conf +cb88f633485de9da542bc0f1da60bcf0 pkg-get.awk +d3457c0e21dc92ee3b86ed3a0d5e094e pkg-get.po diff --git a/base/pkg-get-awk/Pkgfile b/base/pkg-get-awk/Pkgfile new file mode 100644 index 000000000..f3ede11d8 --- /dev/null +++ b/base/pkg-get-awk/Pkgfile @@ -0,0 +1,22 @@ +# Description: Un gestionnaire de paquets binaire pour NuTyX léger et rapide +# URL: http://www.nutyx.org +# Maintainer: NuTyX core team +# Packager: guy_ +# Depends on: gawk + +name=pkg-get-awk +version=0.3.1 +release=1 +source=(pkg-get.awk pkg-get-awk.conf pkg-get.po) + +PKGMK_KEEP_LOCALES=yes + +build() { + msgfmt pkg-get.po -o pkg-get.mo + mkdir -p $PKG/usr/bin + install -m 755 pkg-get.awk $PKG/usr/bin + mkdir -p $PKG/etc + install -m 664 pkg-get-awk.conf $PKG/etc + mkdir -p $PKG/usr/share/locale/en/LC_MESSAGES + install -m 644 pkg-get.mo $PKG/usr/share/locale/en/LC_MESSAGES +} diff --git a/base/pkg-get-awk/pkg-get-awk.conf b/base/pkg-get-awk/pkg-get-awk.conf new file mode 100644 index 000000000..f57f1ed5a --- /dev/null +++ b/base/pkg-get-awk/pkg-get-awk.conf @@ -0,0 +1,11 @@ +### +# /etc/pkg-get.conf +# +# pkg-get configuration file +# Dépot des paquets NuTyX +# Activez le dépot test pour profiter des mise à jour test +# pkgdir /srv/NuTyX/test|http://nutyx.meticul.eu/attapu/uname-m/test +pkgdir /srv/NuTyX/release|http://nutyx.meticul.eu/attapu/uname-m/release +# runscripts: if "yes" pre-post install scripts are +# automatically executed. Handle with care. +runscripts yes diff --git a/base/pkg-get-awk/pkg-get.awk b/base/pkg-get-awk/pkg-get.awk new file mode 100755 index 000000000..801b736a8 --- /dev/null +++ b/base/pkg-get-awk/pkg-get.awk @@ -0,0 +1,777 @@ +#! /usr/bin/awk -f +# _ _ _ +# _ __ | | ____ _ __ _ ___| |_ __ ___ _| | __ +# | '_ \| |/ / _` |___ / _` |/ _ \ __| / _` \ \ /\ / / |/ / +# | |_) | < (_| |___| (_| | __/ |_ _ | (_| |\ V V /| < +# | .__/|_|\_\__, | \__, |\___|\__| (_) \__,_| \_/\_/ |_|\_\ +# |_| |___/ |___/ +# +# A binary package management utility + + +function configs( a, i, k, n, old_FS) +{ + n=split(ENVIRON["_"],a,"/") + NPKG = a[n] + VERSION = "0.3.1" + DATE = "20110108" + + # defauts + CONF = "/etc/pkg-get.conf" + DB = "/var/lib/pkg/db" + LOCKER = "/var/lib/pkg/pkg-get.locker" + PRE = "n" + POST = "n" + PKGDIR[0] = "/srv/NuTyX/release/" + WEBDIR[0] = "http://nutyx.meticul.eu/attapu/i686/release/" + + # arguments + OPER=(ARGC>1) ? ARGV[1] : "" + PKG =(ARGC>2) ? ARGV[2] : "" + for (i=2; i<ARGC; i++) { + if (ARGV[i]=="-r") { + tb_OPT[ARGV[i]]=ARGV[i+1] + i++ + } else if (substr(ARGV[i],1,1)=="-") { + split(ARGV[i],a,"=") + tb_OPT[a[1]]=a[2] + } else + tb_PKG[++nPKG]=ARGV[i] + } + +# print "* PKG:" +# print " OPER = "OPER +# for (i=1; i<=nPKG; i++) +# print " PKG[" i "] = " tb_PKG[i] +# print "* OPT:" +# for (Opt in tb_OPT) +# print " " Opt " " tb_OPT[Opt] + + # divers + cmd="uname -m" + cmd | getline ARCH + close(cmd) + + # fichier pkg-get.conf + if ("--config" in tb_OPT) + CONF = tb_OPT["--config"] + old_FS=FS + FS="|" + NPKGDIR=0 + while (getline < CONF) { + n=split($1,a," ") + if (a[1]=="pkgdir") { + PKGDIR[NPKGDIR]=a[2]"/" + if (NF<2) { + WEBDIR[NPKGDIR]="" + } else { + sub(" ","",$2) + sub("/uname-m/", "/"ARCH"/", $2) + WEBDIR[NPKGDIR]=$2"/" + } + NPKGDIR++ + } + if (a[1]=="runscripts") { + PRE = (a[2]=="yes") ? "y" : "n" + POST = (a[2]=="yes") ? "y" : "n" + } + } + FS=old_FS + +# for (i=0; i<NPKGDIR; i++) { +# print " PKGDIR[" i "] = " PKGDIR[i] +# print " WEBDIR[" i "] = " WEBDIR[i] +# } + + # options + if ("-r" in tb_OPT) + AARGS = AARGS " -r " tb_OPT["-r"] + if ("-do" in tb_OPT) + {} + if ("-f" in tb_OPT) + AARGS = AARGS " -f" + if ("-im" in tb_OPT) + AARGS = AARGS " -im" + if ("--aargs" in tb_OPT) + AARGS = AARGS " " tb_OPT["--aargs"] + if (("--install-scripts" in tb_OPT) || ("--pre-install" in tb_OPT)) + PRE = "y" + if (("--install-scripts" in tb_OPT) || ("--post-install" in tb_OPT)) + POST = "y" + DEPS = "PKGDEPS" + READ = "PKGREAD" + REPO = "PKGREPO" + GRP = "PKGGRP" + + # i18n + TEXTDOMAIN = "pkg-get" + bindtextdomain("/usr/share/locale") +} + + +function current() +{ + load_DB() + if (PKG in tb_DB) + print tb_DB[PKG] + else + print _"Paquet" " " PKG " " _"non installé" +} + + +function dependent( a, i, n) +{ + load_RDEPS() + load_DB() + n=split(tb_RDEPS[PKG],a,",") + for (i=1; i<=n; i++) + if ((a[i] in tb_DB) || ("--all" in tb_OPT)) + print a[i] +} + + +function depends( c) +{ + load_DB() + load_DEPS() + load_REPO() + print _"- dépendences ([i] = installé, [u] = mise à jour possible)" + depends2(PKG,ARGV[3]) + if (PKG in tb_DB) + c= (tb_REPO[PKG]==tb_DB[PKG]) ? "i" : "u" + else + c=" " + printf("[%c] %s\n", c, PKG) +} + + +function depends2(Pkg, Fl, a, i, n, c) +{ + S = (Fl=="--d") ? S "-- " : "" + n=split(tb_DEPS[Pkg],a,",") + for (i=1; i<=n; i++) { + if (tb_DEP_TRT[a[i]]==0) { + tb_DEP_TRT[a[i]]++ + if (a[i] in tb_DEPS) + depends2(a[i],Fl) + if (a[i] in tb_DB) + c= (tb_DB[a[i]]==tb_REPO[a[i]]) ? "i" : "u" + else + c=" " + printf("[%c] %s%s\n", c, S, a[i]) + } + } + S = (Fl=="--d") ? substr(S,4) : "" +} + + +function depinst( i) +{ + verif_if_root() + load_DB() + load_DEPS() + load_REPO() + for (i=1; i<=nPKG; i++) { + depinst2(tb_PKG[i]) + } + return rc +} + + +function depinst2(Pkg, a, i, n) +{ + n=split(tb_DEPS[Pkg],a,",") + for (i=1; i<=n; i++) { + if (tb_DEP_TRT[a[i]]==0) { + tb_DEP_TRT[a[i]]++ + if (a[i] in tb_DEPS) + depinst2(a[i]) + if (!(a[i] in tb_DB)) + install2(a[i], "inst") + } + } +} + + +function diff( a, i, n, pak) +{ + load_DB() + load_LOCKER() + load_REPO() + print _"Différences entre paquets installés et paquets disponibles dans le dépôts:\n" + printf("%-30s %-20s %-20s\n", _"Paquet", _"Installé", _"Disponible dans les dépôts\n") + for (pak in tb_DB) + a[pak]=pak + n=asort(a) + for (i=1;i<=n;i++) { + pak=a[i] + if ((pak in tb_REPO) && ((!(pak in tb_LOCK)) || ("--all" in tb_OPT)) && (tb_DB[pak]!=tb_REPO[pak])) { + printf("%-30s %-20s %-20s\n", pak, tb_DB[pak], tb_REPO[pak]) + } + } +} + + +function download(pak, a, cmd, j, pakw, rep, WEBREPO) +{ + split(pak,a,"#") + WEBREPO = tb_WEBDIR[a[1]] + cmd="if [ -f " tb_PKGDIR[a[1]] pak" ]; then echo n; else echo y; fi" + cmd | getline rep + if (rep=="y") { + pakw = pak + sub("#", "%23", pakw) + cmd="wget -O "tb_PKGDIR[a[1]] pak " " WEBREPO pakw + if ("--dry" in tb_OPT) { + print "\033[1;34m" cmd "\033[1;0m" + } else { + while ((cmd | getline) >0) + print + } + } +} + + +function dsearch( old_FS, j, FILE) +{ + old_FS = FS + FS="[:#]" + for (j=0; j<NPKGDIR; j++) { + FILE=PKGDIR[j] REPO + while ((getline < FILE) >0) { + if (index($1,ARGV[2]) || index($5,ARGV[2])) + print $1 + } + } + close(FILE) + FS = old_FS +} + + +function help() +{ + version() + print "\033[1;33m" _"Usage:" "\033[1;0m" + print " " NPKG " current <paquet> - " _"affiche la version installée de <paquet>" + print " " NPKG " dependent <paquet> - " _"affiche la liste des paquets dépendants de <paquet>" + print " " NPKG " depends <paquet> - " _"affiche la liste des dépendances de <paquet>" + print " " NPKG " depinst <paquet(s)> - " _"installe <paquet(s)> et ses(leurs) dépendances" + print " " NPKG " diff - " _"affiche la liste des paquets obsolètes" + print " " NPKG " dsearch <chaine> - " _"cherche les paquets dont le nom/la description contient <chaine>" + print " " NPKG " help - " _"affiche cette aide" + print " " NPKG " info <paquet> - " _"affiche les informations concernant <paquet>" + print " " NPKG " isinst <paquet> - " _"affiche si <paquet> est installé" + print " " NPKG " install <paquet(s)> - " _"installe <paquet(s)>" + print " " NPKG " list - " _"affiche la liste des paquets disponibles dans les dépôts" + print " " NPKG " listinst - " _"affiche la liste des paquets installés" + print " " NPKG " listlocked - " _"affiche la liste des paquets verrouillés" + print " " NPKG " lock <paquet(s)> - " _"verrouille <paquet(s)> (empêche la mise à jour)" + print " " NPKG " path <paquet> - " _"affiche le répertoire d'installtion de <paquet>" + print " " NPKG " quickdep <paquet> - " _"affiche la liste abrégée des dépendances de <paquet>" + print " " NPKG " quickdiff - " _"affiche la liste abrégée des paquets obsolètes" + print " " NPKG " readme <paquet> - " _"affiche les informations README de <paquet> si existantes" + print " " NPKG " search <chaine> - " _"cherche les paquets dont le nom contient <chaine>" + print " " NPKG " sync - " _"synchronise avec le dépôt" + print " " NPKG " sysup - " _"met à jour les paquets obsolètes, télécharge si nécessaire" + print " " NPKG " unlock <paquet(s)> - " _"déverrouille <paquet(s)> (permet la mise à jour)" + print " " NPKG " update <paquet(s)> - " _"met à jour <paquet(s)>, télécharge si nécessaire" + print " " NPKG " version - " _"affiche la version de ce script" + print "\033[1;33m" _"Exemple:" "\033[1;0m" + print " " NPKG " depends k3b" +} + + +function info( a, b, c, cmd, g, gline, n, rline, out) +{ + load_REPO() + cmd = "grep ^" PKG " " tb_PKGDIR[PKG] REPO + cmd | getline rline + if (rline) { + close(cmd) + split (rline, a, ":") + split (a[1], b, "#") + print _"Nom " " : " PKG + cmd = "grep " PKG " " tb_PKGDIR[PKG] GRP " 2>&1" + cmd | getline gline + close(cmd) + split (gline, g, ":") + if (g[1]=="grep") + print _"Groupe" " : " + else + print _"Groupe" " : " g[1] + split(b[2], c, "-") + print "Version" " : " c[1] + sub(".pkg.tar.xz","",c[2]) + print "Release" " : " c[2] + print "Description" " : " a[4] + print "URL" " : " tb_WEBDIR[PKG] a[1] + print "Md5sum" " : " a[3] + print _"Taille" " : " a[2] + load_DEPS() + print _"Dépend de " " : " tb_DEPS[PKG] + out="" + if (tb_PRE[PKG]=="yes") + out = out "pre-install " + if (tb_POST[PKG]=="yes") + out = out "post-install " + if (tb_READ[PKG]=="yes") + out = out "readme" + print _"Fichiers" " : " out + } else + print _"Paquet" " '" PKG "' " _"non trouvé" +} + + +function install( i) +{ + verif_if_root() + load_REPO() + for (i=1; i<=nPKG; i++) { + install2(tb_PKG[i], " ") + } +} + + +function install2(Pkg, Oper, cmd, i, pak) +{ + pak=Pkg"#"tb_REPO[Pkg] ".pkg.tar.xz" + download(pak) + if ("-do" in tb_OPT) + return + + if (PRE=="y" && tb_PRE[Pkg]=="yes") { # pre-install + cmd = "/bin/bash " tb_PKGDIR[Pkg] "/PKGINST " Pkg "_pre_install" + if ("--dry" in tb_OPT) { + print "\033[1;33m" cmd "\033[1;0m" + } else { + while ((cmd | getline) >0) + print + close(cmd) + } + } + cmd = "pkgadd " AARGS " " Oper " " tb_PKGDIR[Pkg] pak # Oper==" " : insert ; Oper=="-u" : update + if ("--dry" in tb_OPT) { + print "\033[1;37m" cmd "\033[1;0m" + } else { + while ((cmd | getline) >0) + print + close(cmd) + } + if (POST=="y" && tb_POST[Pkg]=="yes") { # post-install + cmd = "/bin/bash " tb_PKGDIR[Pkg] "/PKGINST " Pkg "_post_install" + if ("--dry" in tb_OPT) { + print "\033[1;33m" cmd "\033[1;0m" + } else { + while ((cmd | getline) >0) + print + close(cmd) + } + } +} + + +function isinst() +{ + load_DB() + if (PKG in tb_DB) + print _"Le paquet" " " PKG " " _"est installé" + else + print _"Le paquet" " " PKG " " _"n'est pas installé" +} + + +function list( old_FS, FILE, j, prev) +{ + old_FS = FS + FS="#" + for (j=0; j<NPKGDIR; j++) { + FILE = PKGDIR[j] REPO + while ((getline < FILE) >0) { + if ($1 != prev) { + print $1 + prev = $1 + } + } + close(FILE) + } + FS = old_FS +} + + +function listinst( old_FS, old_RS, fl) +{ +# if (PROCINFO["version"]) { # gawk + old_FS = FS; FS = "\t" + old_RS = RS; RS = "" + while (getline < DB) + print $1 + close(DB) + FS = old_FS + RS = old_RS +# } else { # awka +# while (getline < DB) { +# if (fl==0) +# print $1 +# fl++ +# if (NF==0) +# fl=0 +# } +# close(DB) +# } +} + + +function listlocked() +{ + while (getline < LOCKER) + print $1 + close(LOCKER) +} + + +function load_DB( old_FS, old_RS, fl, pak) +{ +# if (PROCINFO["version"]) { # gawk + old_FS=FS; FS="\n" + old_RS=RS; RS="" + while (getline < DB) + tb_DB[$1]=$2 + close(DB) + FS=old_FS + RS=old_RS +# } else { # awka +# while (getline < DB) { +# if (fl==1) +# tb_DB[pak]=$1 +# if (fl==0) +# pak=$1 +# fl++ +# if (NF==0) +# fl=0 +# } +# close(DB) +# } +} + + +function load_DEPS( j, FILE) +{ + for (j=0; j<NPKGDIR; j++) { + FILE=PKGDIR[j] DEPS + while ((getline < FILE) >0) { + if (!($1 in tb_DEPS)) { + tb_DEPS[$1] = $3 + tb_DEP_TRT[$1] = 0 + tb_DEP_DIR[$1] = PKGDIR[j] + } + } + close(FILE) + } +} + + +function load_LOCKER() +{ + while (getline < LOCKER) + tb_LOCK[$1] = 1 + close(LOCKER) +} + + +function load_RDEPS( a, FILE, i, j, n) +{ + for (j=0; j<NPKGDIR; j++) { + FILE=PKGDIR[j] DEPS + while ((getline < FILE) >0) { + n=split($3, a, ",") + for (i=1; i<=n; i++) { + tb_RDEPS[a[i]] = (a[i] in tb_RDEPS) ? tb_RDEPS[a[i]] "," $1 : $1 + } + } + close(FILE) + } +} + + +function load_REPO( FILE, j, old_FS) +{ + old_FS = FS + FS="[:#]" + for (j=0; j<NPKGDIR; j++) { + FILE = PKGDIR[j] REPO + while (getline < FILE) { + if (!($1 in tb_REPO)) { + sub(".pkg.tar.xz","",$2) + tb_REPO[$1] = $2 + tb_PRE[$1] = $6 + tb_POST[$1] = $7 + tb_READ[$1] = $8 + tb_PKGDIR[$1] = PKGDIR[j] + tb_WEBDIR[$1] = WEBDIR[j] + } + } + close(FILE) + } + FS = old_FS +} + + +function lock( i) +{ + verif_if_root() + for (i=1; i<=nPKG; i++) { + print tb_PKG[i] >>LOCKER + } + close(LOCKER) +} + + +function path( a, cmd, j) +{ + load_REPO() + if (!PKG) + print NPKG ": 'path' " _"demande un argument" + else + print tb_PKGDIR[PKG] +} + + +function printff() +{ + print _"Désolé, fonction" " " OPER " " _"indisponible" "..." + exit 1 +} + + +function quickdep() +{ + load_DB() + load_DEPS() + load_REPO() + quickdep2(PKG) + printf ("%s\n",PKG) +} + + +function quickdep2(Pkg, a, i, n) +{ + n=split(tb_DEPS[Pkg],a,",") + for (i=1; i<=n; i++) { + if (tb_DEP_TRT[a[i]]==0) { + tb_DEP_TRT[a[i]]++ + if (a[i] in tb_DEPS) + quickdep2(a[i]) + printf("%s ", a[i]) + } + } +} + + +function quickdiff(Dest, a, i, n, pak) +{ + load_DB() + load_LOCKER() + load_REPO() + for (pak in tb_DB) + a[pak]=pak + n=asort(a) + delete tb_PKG + nPKG=0 + for (i=1;i<=n;i++) { + pak=a[i] + if ((pak in tb_REPO) && (!(pak in tb_LOCK)) && (tb_DB[pak]!=tb_REPO[pak])) { + if (Dest=="tb") + tb_PKG[++nPKG] = pak + else + printf("%s ", pak) + } + } + printf("\n") +} + + +function quickhelp() { + print "\033[1;33m" _"Usage" "\033[1;0m: " NPKG " command <package1> [package2 ... packageN] [options]" + print "\033[1;33m" _"Quelques commandes" "\033[1;0m:" + print " sync " _"synchronise avec le dépôt" + print " depinst " _"installe package(s) et ses(leurs) dépendances" + print " info " _"informations concernant le package" + print " sysup " _"met à jour les paquets obsolètes" + print " diff " _"affiche la liste des paquets obsolètes" + print "\033[1;33m" _"Quelques options:" "\033[1;0m" + print " -do " _"télécharge seulement" + print " --install-scripts " _"utilise les scripts install" + print " -r <root> " _"utilise" " <root> " _"pour" " pkgadd" + print "\033[1;33m" _"Examples" "\033[1;0m:" + print " " NPKG " install sqlite pysqlite" + print " " NPKG " help" + print _"Pour d'autres commandes et examples, voir la page de manuel" +} + + +function readme( fl, j, FILE) +{ + for (j=0; j<NPKGDIR; j++) { + FILE=PKGDIR[j] READ + while ((getline < FILE) >0) { + if (fl==1) { + if (index($0,"##### PKGREADME: ")) + exit + print $0 + } + if (index($0,"##### PKGREADME: "PKG)) + fl=1 + } + close(FILE) + } +} + + +function search( j, FILE, old_FS) +{ + old_FS = FS + FS="[:#]" + for (j=0; j<NPKGDIR; j++) { + FILE=PKGDIR[j] REPO + while ((getline < FILE) >0) { + if (index($1,ARGV[2])) + print $1 + } + close(FILE) + } + FS = old_FS +} + + +function sync( cmd, i, j, pak) +{ + verif_if_root() + pak[1]="PKGREPO" + pak[2]="PKGDEPS" + pak[3]="PKGREAD" + pak[4]="PKGINST" + pak[5]="PKGGRP" + for (j=0; j<NPKGDIR; j++) { + if (WEBDIR[j] > "") { + for (i=1; i<=4; i++) { + cmd="wget -O "PKGDIR[j] pak[i] " " WEBDIR[j] pak[i] + if ("--dry" in tb_OPT) { + print "\033[1;34m" cmd "\033[1;0m" + } else { + while ((cmd | getline) >0) + print + close(cmd) + } + } + } + } +} + + +function sysup( i) +{ + quickdiff("tb") + update() +} + + +function unlock( i, n, fl, tb_LCK) +{ + verif_if_root() + while (getline < LOCKER) { + fl="y" + for (i=1; i<=nPKG; i++) + if ($1==tb_PKG[i]) + fl = "n" + if (fl=="y") + tb_LCK[++n] = $1 + } + close(LOCKER) + printf("") > LOCKER + for (i=1; i<=n; i++) + print tb_LCK[i] >> LOCKER + close(LOCKER) +} + + +function update( i) +{ + verif_if_root() + load_LOCKER() + load_REPO() + for (i=1; i<=nPKG; i++) { + if (!(tb_PKG[i] in tb_LOCK)) { + print _"paquet à mettre à jour:" " " tb_PKG[i] + install2(tb_PKG[i], "-u") + } + } +} + + +function verif_if_root( cmd) +{ + if (!("--dry" in tb_OPT)) { + cmd="whoami" + cmd | getline + if ($1 !="root") { + print "\033[1;31m" _"Veuillez exécuter ce programme en tant que root !" "\033[1;0m" + exit 1 + } + close(cmd) + } +} + + +function version() +{ + print NPKG " " VERSION " (" DATE ")" +} + + +function wrongparm() +{ + version() + print _"Paramètre" " '" OPER "' " _"erroné" + exit 1 +} + + +#------------------------------------------------ +# +# M A I N +# +#------------------------------------------------ + +BEGIN { + configs() + + if (OPER=="") quickhelp() + else if (OPER=="current") current() + else if (OPER=="dependent") dependent() + else if (OPER=="depends") depends() + else if (OPER=="depinst") rc=depinst() + else if (OPER=="diff") diff() + else if (OPER=="dsearch") dsearch() + else if (OPER=="help") help() + else if (OPER=="info") info() + else if (OPER=="install") install() + else if (OPER=="isinst") isinst() + else if (OPER=="list") list() + else if (OPER=="listinst") listinst() + else if (OPER=="listlocked") listlocked() + else if (OPER=="lock") lock() + else if (OPER=="path") path() + else if (OPER=="printf") printff() + else if (OPER=="quickdep") quickdep() + else if (OPER=="quickdiff") quickdiff() + else if (OPER=="readme") readme() + else if (OPER=="search") search() + else if (OPER=="sync") sync() + else if (OPER=="sysup") sysup() + else if (OPER=="unlock") unlock() + else if (OPER=="update") update() + else if (OPER=="version") version() + else wrongparm() + + exit +} diff --git a/base/pkg-get-awk/pkg-get.po b/base/pkg-get-awk/pkg-get.po new file mode 100644 index 000000000..76cf12173 --- /dev/null +++ b/base/pkg-get-awk/pkg-get.po @@ -0,0 +1,179 @@ +msgid "Paquet" +msgstr "Package" + +msgid "non install\303\251" +msgstr "not installed" + +msgid "- d\303\251pendences ([i] = install\303\251, [u] = mise \303\240 jour possible)" +msgstr "- dependencies ([i] = installed, [u] = upgradable)" + +msgid "Diff\303\251rences entre paquets install\303\251s et paquets disponibles dans le d\303\251p\303\264ts:\n" +msgstr "Differences between installed packages and packages availables in the repository\n" + +msgid "Install\303\251" +msgstr "Installed" + +msgid "Disponible dans les d\303\251p\303\264ts\n" +msgstr "Available in the repositories\n" + +msgid "Usage:" +msgstr "Usage:" + +msgid "affiche la version install\303\251e de <paquet>" +msgstr "show installed version of <paquet>" + +msgid "affiche la liste des paquets d\303\251pendants de <paquet>" +msgstr "list packages dependents of <paquet>" + +msgid "affiche la liste des d\303\251pendances de <paquet>" +msgstr "list dependencies of <paquet>" + +msgid "installe <paquet(s)> et ses(leurs) d\303\251pendances" +msgstr "install <paquet(s)> and their dependencies" + +msgid "affiche la liste des paquets obsol\303\250tes" +msgstr "list outdated packages" + +msgid "cherche les paquets dont le nom/la description contient <chaine>" +msgstr "search for packages which name or description contain <chaine>" + +msgid "affiche cette aide" +msgstr "display help screen" + +msgid "affiche les informations concernant <paquet>" +msgstr "show information about <paquet>" + +msgid "affiche si <paquet> est install\303\251" +msgstr "display whether a package is installed" + +msgid "installe <paquet(s)>" +msgstr "install <paquet(s)>" + +msgid "affiche la liste des paquets disponibles dans les d\303\251p\303\264ts" +msgstr "list packages available in repositories" + +msgid "affiche la liste des paquets install\303\251s" +msgstr "list installed packages" + +msgid "affiche la liste des paquets verrouill\303\251s" +msgstr "list locked packages" + +msgid "verrouille <paquet(s)> (emp\303\252che la mise \303\240 jour)" +msgstr "lock <paquet(s)" + +msgid "affiche le r\303\251pertoire d'installtion de <paquet>" +msgstr "show local path of <paquet>" + +msgid "affiche la liste abr\303\251g\303\251e des d\303\251pendances de <paquet>" +msgstr "show a brief list of dependencies for <paquet>" + +msgid "affiche la liste abr\303\251g\303\251e des paquets obsol\303\250tes" +msgstr "show a brief list of outdated packages" + +msgid "affiche les informations README de <paquet> si existantes" +msgstr "print README information (if available) for the package" + +msgid "cherche les paquets dont le nom contient <chaine>" +msgstr "search for packages which name contains <chaine>" + +msgid "met \303\240 jour les paquets obsol\303\250tes, t\303\251l\303\251charge si n\303\251cessaire" +msgstr "update outdated packages, download if necessary" + +msgid "d\303\251verrouille <paquet(s)> (permet la mise \303\240 jour)" +msgstr "unlock <paquet(s)" + +msgid "met \303\240 jour <paquet(s)>, t\303\251l\303\251charge si n\303\251cessaire" +msgstr "update <paquet(s)>, download if necessary" + +msgid "affiche la version de ce script" +msgstr "show this script version" + +msgid "Exemple:" +msgstr "Exemple:" + +msgid "Nom " +msgstr "Name" + +msgid "Groupe" +msgstr "Group " + +msgid "Taille" +msgstr "Size " + +msgid "D\303\251pend de " +msgstr "Depends on" + +msgid "non trouv\303\251" +msgstr "not found" + +msgid "Le paquet" +msgstr "The package" + +msgid "est install\303\251" +msgstr "is installed" + +msgid "n'est pas install\303\251" +msgstr "isn't installed" + +msgid "D\303\251sol\303\251, fonction" +msgstr "Sorry, function" + +msgid "indisponible" +msgstr "unavalable" + +msgid "Usage" +msgstr "Usage" + +msgid "Quelques commandes" +msgstr "Some comands" + +msgid "synchronise avec le d\303\251p\303\264t" +msgstr "syncronize local packages with the ones from the remote repository" + +msgid "installe package(s) et ses(leurs) d\303\251pendances" +msgstr "install given packages and relative dependencies" + +msgid "informations concernant le package" +msgstr "show information about package" + +msgid "met \303\240 jour les paquets obsol\303\250tes" +msgstr "update all outdated packages" + +msgid "Quelques options:" +msgstr "Some options:" + +msgid "utilise les scripts install" +msgstr "use install scripts" + +msgid "Examples" +msgstr "Examples" + +msgid "Pour d'autres commandes et examples, voir la page de manuel" +msgstr "For other commands and samples, see the pkg-get(8) man page" + +msgid "paquet \303\240 mettre \303\240 jour:" +msgstr "updatable package" + +msgid "Veuillez ex\303\251cuter ce programme en tant que root !" +msgstr "Please run this script as root !" + +msgid "Param\303\250tre" +msgstr "Parameter" + +msgid "erron\303\251" +msgstr "wrong" + +msgid "Fichiers" +msgstr "Files " + +msgid "demande un argument" +msgstr "requires an argument" + +msgid "t\303\251l\303\251charge seulement" +msgstr "download only" + +msgid "utilise" +msgstr "use" + +msgid "pour" +msgstr "for" diff --git a/base/pkg-get-awk/post-install b/base/pkg-get-awk/post-install new file mode 100755 index 000000000..63e4e41c8 --- /dev/null +++ b/base/pkg-get-awk/post-install @@ -0,0 +1,19 @@ +#!/bin/sh + +pkf=/usr/bin/pkg-get +if [ -L $pkf ]; then + rm $pkf +else + file $pkf | grep perl >/dev/null + if [ $? -eq 0 ]; then + mv $pkf $pkf.pl + fi +fi +if [ -f $pkf ]; then + echo "pkg-get-awk_post_install: ERREUR, le fichier $pkf existe déjà !!!" + exit 1 +fi +ln -s /usr/bin/pkg-get.awk $pkf +if [ ! -f /etc/pkg-get.conf ]; then + cp -p /etc/pkg-get-awk.conf /etc/pkg-get.conf +fi |