]>
git.ipfire.org Git - people/teissler/ipfire-2.x.git/blob - src/pakfire/pakfire
3 require "/opt/pakfire/lib/functions.pl";
7 &Pakfire
::logger
("### IPFire Pakfire $Conf::version started!");
8 &Pakfire
::checkcryptodb
;
10 ### Check if we are running as root
12 my $user = qx(whoami
);
14 unless ( "$user" eq "root" ) {
15 &Pakfire
::message
("You must run pakfire as user root!");
25 $interactive = 0 if ("$_" eq "--non-interactive");
26 $interactive = 0 if ("$_" eq "-y");
30 if ("$ARGV[0]" eq "install") {
38 unless ("$_" =~ "^-") {
44 @temp = &Pakfire
::resolvedeps
("$_");
45 foreach (@temp) { push(@deps,$_) if $_; }
55 &Pakfire
::message
("\n\n### Packages to install:");
56 foreach (sort @paks) {
57 my $size = &Pakfire
::getsize
("$_");
58 $size = &Pakfire
::beautifysize
($size);
59 &Pakfire
::message
("# $_ \t\t - $size");
62 &Pakfire
::message
("\n### Packages to install for dependencies:") if @deps;
63 foreach (sort @deps) {
64 my $size = &Pakfire
::getsize
("$_");
65 $size = &Pakfire
::beautifysize
($size);
66 &Pakfire
::message
("# $_ \t\t - $size");
71 $totalsize = ($totalsize + &Pakfire
::getsize
("$_"));
73 $totalsize = &Pakfire
::beautifysize
($totalsize);
74 &Pakfire
::message
("\n### Total size: \t ~ $totalsize\n");
77 &Pakfire
::message
("Is this okay? [y/N]");
80 &Pakfire
::logger
("Answer: $ret");
82 &Pakfire
::message
("Installation aborted.");
89 &Pakfire
::message
("# --> Downloading: $_");
90 &Pakfire
::getpak
("$_", "");
94 &Pakfire
::setuppak
("$_");
96 &Pakfire
::lock("off");
98 } elsif ("$ARGV[0]" eq "remove") {
101 } elsif ("$ARGV[0]" eq "update") {
102 my $force = "noforce";
103 &Pakfire
::makeuuid
();
104 &Pakfire
::senduuid
();
105 &Pakfire
::getmirrors
();
106 $force = "force" if ("$ARGV[1]" eq "--force");
107 &Pakfire
::dbgetlist
("$force");
110 } elsif ("$ARGV[0]" eq "upgrade") {
111 &Pakfire
::dblist
("upgrade", "noweb");
113 } elsif ("$ARGV[0]" eq "list") {
114 &Pakfire
::dblist
("all", "noweb");
116 } elsif ("$ARGV[0]" eq "resolvedeps") {
118 next if ("$_" eq "resolvedeps");
119 &Pakfire
::resolvedeps
("$_");