Use compression-mode defined in pkgmk.conf
This commit is contained in:
parent
e23dc5fb07
commit
b020e2b7ec
@ -35,6 +35,14 @@ GetOptions("do"=>\$download_only,
|
|||||||
"f"=>\$force, "im"=>\$ignore_md5sum, "margs=s"=>\$unused,
|
"f"=>\$force, "im"=>\$ignore_md5sum, "margs=s"=>\$unused,
|
||||||
"rargs=s"=>\$unused, "r=s"=>\$root);
|
"rargs=s"=>\$unused, "r=s"=>\$root);
|
||||||
|
|
||||||
|
# use compression-mode defined in pkgmk.conf
|
||||||
|
our $compress = "gz";
|
||||||
|
open CONFIG, "/etc/pkgmk.conf" or die "Could not open /etc/pkgmk.conf";
|
||||||
|
while (<CONFIG>) {
|
||||||
|
$compress = $1 if m/^PKGMK_COMPRESSION_MODE="(.*)"\n/;
|
||||||
|
}
|
||||||
|
close CONFIG;
|
||||||
|
|
||||||
if ($root) {
|
if ($root) {
|
||||||
$LOCKFILE = $root.$LOCKFILE ;
|
$LOCKFILE = $root.$LOCKFILE ;
|
||||||
$PKGDB = $root.$PKGDB;
|
$PKGDB = $root.$PKGDB;
|
||||||
@ -156,10 +164,10 @@ sub parsepackage {
|
|||||||
$name =~ s/\#.*$//;
|
$name =~ s/\#.*$//;
|
||||||
my $version = $p[0];
|
my $version = $p[0];
|
||||||
$version =~ s/^.*\#//;
|
$version =~ s/^.*\#//;
|
||||||
$version =~ s/-\w*\.pkg\.tar\.gz//;
|
$version =~ s/-\w*\.pkg\.tar\.[gbx]z*//;
|
||||||
my $release = $p[0];
|
my $release = $p[0];
|
||||||
$release =~ s/^.*-//;
|
$release =~ s/^.*-//;
|
||||||
$release =~ s/\.pkg\.tar\.gz//;
|
$release =~ s/\.pkg\.tar\.[gbx]z*//;
|
||||||
if (not $_[2]) {$_[2] = $_[1]};
|
if (not $_[2]) {$_[2] = $_[1]};
|
||||||
$pkg{'name'} = $name;
|
$pkg{'name'} = $name;
|
||||||
$pkg{'version'} = $version;
|
$pkg{'version'} = $version;
|
||||||
@ -497,7 +505,7 @@ sub getdependencies {
|
|||||||
# Download given package (if needed), check md5sum
|
# Download given package (if needed), check md5sum
|
||||||
sub downloadpkg {
|
sub downloadpkg {
|
||||||
my %pkg = @_;
|
my %pkg = @_;
|
||||||
my $fullpath = $pkg{'path'}."/".$pkg{'name'}."#".$pkg{'version'}."-".$pkg{'release'}.".pkg.tar.gz";
|
my $fullpath = $pkg{'path'}."/".$pkg{'name'}."#".$pkg{'version'}."-".$pkg{'release'}.".pkg.tar.$compress";
|
||||||
if (-f $fullpath) {
|
if (-f $fullpath) {
|
||||||
my $md5 = `md5sum $fullpath`; chomp;
|
my $md5 = `md5sum $fullpath`; chomp;
|
||||||
$md5 =~ s/\s+.*$//;
|
$md5 =~ s/\s+.*$//;
|
||||||
@ -538,7 +546,7 @@ sub installpkg {
|
|||||||
if ($force){$aa = $aa."-f "};
|
if ($force){$aa = $aa."-f "};
|
||||||
if ($root) {$aa = $aa."-r ".$root." "};
|
if ($root) {$aa = $aa."-r ".$root." "};
|
||||||
if ($pkg{'pre_install'} eq "yes" and ($install_scripts or $pre_install)) {dopre(%pkg)};
|
if ($pkg{'pre_install'} eq "yes" and ($install_scripts or $pre_install)) {dopre(%pkg)};
|
||||||
my $fullpath = $pkg{'path'}."/".$pkg{'name'}."#".$pkg{'version'}."-".$pkg{'release'}.".pkg.tar.gz";
|
my $fullpath = $pkg{'path'}."/".$pkg{'name'}."#".$pkg{'version'}."-".$pkg{'release'}.".pkg.tar.$compress";
|
||||||
print "pkg-get: /usr/bin/pkgadd $upgrade$aa$fullpath\n";
|
print "pkg-get: /usr/bin/pkgadd $upgrade$aa$fullpath\n";
|
||||||
system ("/usr/bin/pkgadd $upgrade$aa$fullpath") == 0 or return 0;
|
system ("/usr/bin/pkgadd $upgrade$aa$fullpath") == 0 or return 0;
|
||||||
if ($pkg{'post_install'} eq "yes" and ($install_scripts or $post_install)) {dopost(%pkg)};
|
if ($pkg{'post_install'} eq "yes" and ($install_scripts or $post_install)) {dopost(%pkg)};
|
||||||
|
@ -16,6 +16,14 @@ use Getopt::Long;
|
|||||||
our $title = "CRUX Packages"; our $header; our $footer;
|
our $title = "CRUX Packages"; our $header; our $footer;
|
||||||
GetOptions("title=s"=>\$title, "header=s"=>\$header, "footer=s"=>\$footer);
|
GetOptions("title=s"=>\$title, "header=s"=>\$header, "footer=s"=>\$footer);
|
||||||
|
|
||||||
|
# Use compression-mode defined in pkgmk-conf
|
||||||
|
our $compress = "gz";
|
||||||
|
open CONFIG, "/etc/pkgmk.conf" or die "Could not open /etc/pkgmk.conf";
|
||||||
|
while (<CONFIG>) {
|
||||||
|
$compress = $1 if m/^PKGMK_COMPRESSION_MODE="(.*)"\n/;
|
||||||
|
}
|
||||||
|
close CONFIG;
|
||||||
|
|
||||||
if ($#ARGV >= 0) { # single packages
|
if ($#ARGV >= 0) { # single packages
|
||||||
pkgrepo_single();
|
pkgrepo_single();
|
||||||
pkgdeps_single();
|
pkgdeps_single();
|
||||||
@ -35,7 +43,7 @@ sub pkgdeps_single {
|
|||||||
print "+ Generating dependencies\n";
|
print "+ Generating dependencies\n";
|
||||||
my $hasnew = 0;
|
my $hasnew = 0;
|
||||||
foreach my $p (@ARGV) {
|
foreach my $p (@ARGV) {
|
||||||
my @packages = glob("$p#*.pkg.tar.gz");
|
my @packages = glob("$p#*.pkg.tar.$compress");
|
||||||
if ($#packages == 0) {
|
if ($#packages == 0) {
|
||||||
my $found = 0;
|
my $found = 0;
|
||||||
my $package = $packages[0];
|
my $package = $packages[0];
|
||||||
@ -65,7 +73,7 @@ sub pkgrepo_single {
|
|||||||
print "+ Generating repository\n";
|
print "+ Generating repository\n";
|
||||||
my $hasnew = 0;
|
my $hasnew = 0;
|
||||||
foreach my $p (@ARGV) {
|
foreach my $p (@ARGV) {
|
||||||
my @packages = glob("$p#*.pkg.tar.gz");
|
my @packages = glob("$p#*.pkg.tar.$compress");
|
||||||
if ($#packages == 0) {
|
if ($#packages == 0) {
|
||||||
my $found = 0;
|
my $found = 0;
|
||||||
my $package = $packages[0];
|
my $package = $packages[0];
|
||||||
@ -103,7 +111,7 @@ sub pkgrepo_single {
|
|||||||
# generate dependencies
|
# generate dependencies
|
||||||
sub pkgdeps {
|
sub pkgdeps {
|
||||||
print "+ Generating dependencies\n";
|
print "+ Generating dependencies\n";
|
||||||
my @packages = glob("*#*.pkg.tar.gz");
|
my @packages = glob("*#*.pkg.tar.$compress");
|
||||||
open (my $fh, '>PKGDEPS');
|
open (my $fh, '>PKGDEPS');
|
||||||
foreach my $package (@packages) {
|
foreach my $package (@packages) {
|
||||||
$package =~ s/#.*//;
|
$package =~ s/#.*//;
|
||||||
@ -118,7 +126,7 @@ sub pkgdeps {
|
|||||||
# generate the main repository file and index page
|
# generate the main repository file and index page
|
||||||
sub pkgrepo {
|
sub pkgrepo {
|
||||||
print "+ Generating repository\n";
|
print "+ Generating repository\n";
|
||||||
my @packages = glob("*#*.pkg.tar.gz");
|
my @packages = glob("*#*.pkg.tar.$compress");
|
||||||
our $odd = "odd";
|
our $odd = "odd";
|
||||||
my $count = 0;
|
my $count = 0;
|
||||||
open (my $fh, '>PKGREPO');
|
open (my $fh, '>PKGREPO');
|
||||||
@ -141,8 +149,8 @@ sub pkgrepo {
|
|||||||
printf $fh "%-s:%-s:%-s:%-s:%-s\n", $package,$du,$md5,$des,$flags;
|
printf $fh "%-s:%-s:%-s:%-s:%-s\n", $package,$du,$md5,$des,$flags;
|
||||||
my $version = $package;
|
my $version = $package;
|
||||||
$version =~ s/^.*\#//;
|
$version =~ s/^.*\#//;
|
||||||
$version =~ s/\.pkg\.tar\.gz//;
|
$version =~ s/\.pkg\.tar\.[gbx]z*//;
|
||||||
print $ih " <tr class=\"$odd\">";
|
print $ih "<tr class=\"$odd\">";
|
||||||
print $ih "<td>$name</td>";
|
print $ih "<td>$name</td>";
|
||||||
my $url = $package;
|
my $url = $package;
|
||||||
$url =~ s/\#/\%23/;
|
$url =~ s/\#/\%23/;
|
||||||
@ -162,10 +170,10 @@ sub pkgrepo {
|
|||||||
# generate README file
|
# generate README file
|
||||||
sub pkgread {
|
sub pkgread {
|
||||||
print "+ Generating README\n";
|
print "+ Generating README\n";
|
||||||
my @packages = glob("*#*.pkg.tar.gz");
|
my @packages = glob("*#*.pkg.tar.$compress");
|
||||||
open (my $fh, '>PKGREAD');
|
open (my $fh, '>PKGREAD');
|
||||||
print $fh "# README files for repository. Do NOT remove this line.\n";
|
print $fh "# README files for repository. Do NOT remove this line.\n";
|
||||||
foreach my $package (@packages) {
|
foreach my $package (@packages) {
|
||||||
$package =~ s/#.*//;
|
$package =~ s/#.*//;
|
||||||
my $path = `prt-get path $package`;
|
my $path = `prt-get path $package`;
|
||||||
$path =~ s/\n//g;
|
$path =~ s/\n//g;
|
||||||
@ -192,7 +200,7 @@ sub pkginst {
|
|||||||
#
|
#
|
||||||
# PKGINST: pre-post install scripts for CRUX packages
|
# PKGINST: pre-post install scripts for CRUX packages
|
||||||
";
|
";
|
||||||
my @packages = glob("*#*.pkg.tar.gz");
|
my @packages = glob("*#*.pkg.tar.$compress");
|
||||||
foreach my $package (@packages) {
|
foreach my $package (@packages) {
|
||||||
$package =~ s/#.*//;
|
$package =~ s/#.*//;
|
||||||
my $path = `prt-get path $package`;
|
my $path = `prt-get path $package`;
|
||||||
@ -254,7 +262,7 @@ EOH
|
|||||||
}
|
}
|
||||||
table
|
table
|
||||||
{
|
{
|
||||||
border: solid #e5dccf 1px;
|
border: solid #e5dccf 1px;
|
||||||
font-size: 85%;
|
font-size: 85%;
|
||||||
}
|
}
|
||||||
td
|
td
|
||||||
|
Loading…
x
Reference in New Issue
Block a user