mirror of
git://slackware.nl/current.git
synced 2024-12-26 09:58:59 +01:00
Thu Nov 11 20:36:12 UTC 2021
a/sdparm-1.12-x86_64-2.txz: Rebuilt. Recompiled against sg3_utils-1.47. a/sysvinit-scripts-15.0-noarch-6.txz: Rebuilt. rc.{6,S,M}: merged changes for compatibility with LXC containers. a/udisks-1.0.5-x86_64-10.txz: Rebuilt. Recompiled against sg3_utils-1.47. ap/lxc-4.0.11-x86_64-1.txz: Upgraded. Requires libseccomp-2.5.3. No more local versions of rc.{6,S,M,inet1}: the regular versions work now. l/elfutils-0.186-x86_64-1.txz: Upgraded. l/libgpod-0.8.3-x86_64-11.txz: Rebuilt. Recompiled against sg3_utils-1.47. l/libseccomp-2.5.3-x86_64-1.txz: Added. This is needed by lxc-4.0.11. Thanks to Willy Sudiarto Raharjo. l/sg3_utils-1.47-x86_64-1.txz: Upgraded. Shared library .so-version bump. n/network-scripts-15.0-noarch-17.txz: Rebuilt. Merged changes in rc.inet1 to make it compatible with LXC containers. Patched netconfig to ensure the proper permissions on rc.networkmanager when NetworkManager is not chosen. x/ibus-1.5.25-x86_64-4.txz: Rebuilt. [PATCH] client/gtk2/ibusimcontext: Fix wrong cursor location in gtk3 apps. Thanks to Lockywolf.
This commit is contained in:
parent
53b8e9dd39
commit
5f74398bf9
34 changed files with 699 additions and 3505 deletions
|
@ -11,9 +11,42 @@
|
|||
<description>Tracking Slackware development in git.</description>
|
||||
<language>en-us</language>
|
||||
<id xmlns="http://www.w3.org/2005/Atom">urn:uuid:c964f45e-6732-11e8-bbe5-107b4450212f</id>
|
||||
<pubDate>Wed, 10 Nov 2021 20:32:37 GMT</pubDate>
|
||||
<lastBuildDate>Thu, 11 Nov 2021 07:59:47 GMT</lastBuildDate>
|
||||
<pubDate>Thu, 11 Nov 2021 20:36:12 GMT</pubDate>
|
||||
<lastBuildDate>Fri, 12 Nov 2021 07:59:47 GMT</lastBuildDate>
|
||||
<generator>maintain_current_git.sh v 1.13</generator>
|
||||
<item>
|
||||
<title>Thu, 11 Nov 2021 20:36:12 GMT</title>
|
||||
<pubDate>Thu, 11 Nov 2021 20:36:12 GMT</pubDate>
|
||||
<link>https://git.slackware.nl/current/tag/?h=20211111203612</link>
|
||||
<guid isPermaLink="false">20211111203612</guid>
|
||||
<description>
|
||||
<![CDATA[<pre>
|
||||
a/sdparm-1.12-x86_64-2.txz: Rebuilt.
|
||||
Recompiled against sg3_utils-1.47.
|
||||
a/sysvinit-scripts-15.0-noarch-6.txz: Rebuilt.
|
||||
rc.{6,S,M}: merged changes for compatibility with LXC containers.
|
||||
a/udisks-1.0.5-x86_64-10.txz: Rebuilt.
|
||||
Recompiled against sg3_utils-1.47.
|
||||
ap/lxc-4.0.11-x86_64-1.txz: Upgraded.
|
||||
Requires libseccomp-2.5.3.
|
||||
No more local versions of rc.{6,S,M,inet1}: the regular versions work now.
|
||||
l/elfutils-0.186-x86_64-1.txz: Upgraded.
|
||||
l/libgpod-0.8.3-x86_64-11.txz: Rebuilt.
|
||||
Recompiled against sg3_utils-1.47.
|
||||
l/libseccomp-2.5.3-x86_64-1.txz: Added.
|
||||
This is needed by lxc-4.0.11. Thanks to Willy Sudiarto Raharjo.
|
||||
l/sg3_utils-1.47-x86_64-1.txz: Upgraded.
|
||||
Shared library .so-version bump.
|
||||
n/network-scripts-15.0-noarch-17.txz: Rebuilt.
|
||||
Merged changes in rc.inet1 to make it compatible with LXC containers.
|
||||
Patched netconfig to ensure the proper permissions on rc.networkmanager
|
||||
when NetworkManager is not chosen.
|
||||
x/ibus-1.5.25-x86_64-4.txz: Rebuilt.
|
||||
[PATCH] client/gtk2/ibusimcontext: Fix wrong cursor location in gtk3 apps.
|
||||
Thanks to Lockywolf.
|
||||
</pre>]]>
|
||||
</description>
|
||||
</item>
|
||||
<item>
|
||||
<title>Wed, 10 Nov 2021 20:32:37 GMT</title>
|
||||
<pubDate>Wed, 10 Nov 2021 20:32:37 GMT</pubDate>
|
||||
|
@ -3517,7 +3550,7 @@ a/etc-15.0-x86_64-15.txz: Rebuilt.
|
|||
uncommenting this because it's nice to get the extra output from less
|
||||
provided by -M concerning your place in the file, but we'll leave it up
|
||||
to the end user how to handle this.
|
||||
Thanks to krown, marav, LockyWolf, and drgibbon.
|
||||
Thanks to krown, marav, Lockywolf, and drgibbon.
|
||||
a/kernel-generic-5.14.0-x86_64-1.txz: Upgraded.
|
||||
a/kernel-huge-5.14.0-x86_64-1.txz: Upgraded.
|
||||
a/kernel-modules-5.14.0-x86_64-1.txz: Upgraded.
|
||||
|
|
|
@ -1,3 +1,28 @@
|
|||
Thu Nov 11 20:36:12 UTC 2021
|
||||
a/sdparm-1.12-x86_64-2.txz: Rebuilt.
|
||||
Recompiled against sg3_utils-1.47.
|
||||
a/sysvinit-scripts-15.0-noarch-6.txz: Rebuilt.
|
||||
rc.{6,S,M}: merged changes for compatibility with LXC containers.
|
||||
a/udisks-1.0.5-x86_64-10.txz: Rebuilt.
|
||||
Recompiled against sg3_utils-1.47.
|
||||
ap/lxc-4.0.11-x86_64-1.txz: Upgraded.
|
||||
Requires libseccomp-2.5.3.
|
||||
No more local versions of rc.{6,S,M,inet1}: the regular versions work now.
|
||||
l/elfutils-0.186-x86_64-1.txz: Upgraded.
|
||||
l/libgpod-0.8.3-x86_64-11.txz: Rebuilt.
|
||||
Recompiled against sg3_utils-1.47.
|
||||
l/libseccomp-2.5.3-x86_64-1.txz: Added.
|
||||
This is needed by lxc-4.0.11. Thanks to Willy Sudiarto Raharjo.
|
||||
l/sg3_utils-1.47-x86_64-1.txz: Upgraded.
|
||||
Shared library .so-version bump.
|
||||
n/network-scripts-15.0-noarch-17.txz: Rebuilt.
|
||||
Merged changes in rc.inet1 to make it compatible with LXC containers.
|
||||
Patched netconfig to ensure the proper permissions on rc.networkmanager
|
||||
when NetworkManager is not chosen.
|
||||
x/ibus-1.5.25-x86_64-4.txz: Rebuilt.
|
||||
[PATCH] client/gtk2/ibusimcontext: Fix wrong cursor location in gtk3 apps.
|
||||
Thanks to Lockywolf.
|
||||
+--------------------------+
|
||||
Wed Nov 10 20:32:37 UTC 2021
|
||||
d/python3-3.9.8-x86_64-1.txz: Upgraded.
|
||||
l/libtasn1-4.18.0-x86_64-1.txz: Upgraded.
|
||||
|
@ -2959,7 +2984,7 @@ a/etc-15.0-x86_64-15.txz: Rebuilt.
|
|||
uncommenting this because it's nice to get the extra output from less
|
||||
provided by -M concerning your place in the file, but we'll leave it up
|
||||
to the end user how to handle this.
|
||||
Thanks to krown, marav, LockyWolf, and drgibbon.
|
||||
Thanks to krown, marav, Lockywolf, and drgibbon.
|
||||
a/kernel-generic-5.14.0-x86_64-1.txz: Upgraded.
|
||||
a/kernel-huge-5.14.0-x86_64-1.txz: Upgraded.
|
||||
a/kernel-modules-5.14.0-x86_64-1.txz: Upgraded.
|
||||
|
|
176
FILELIST.TXT
176
FILELIST.TXT
|
@ -1,20 +1,20 @@
|
|||
Wed Nov 10 20:35:45 UTC 2021
|
||||
Thu Nov 11 20:39:15 UTC 2021
|
||||
|
||||
Here is the file list for this directory. If you are using a
|
||||
mirror site and find missing or extra files in the disk
|
||||
subdirectories, please have the archive administrator refresh
|
||||
the mirror.
|
||||
|
||||
drwxr-xr-x 12 root root 4096 2021-11-10 20:32 .
|
||||
drwxr-xr-x 12 root root 4096 2021-11-11 20:36 .
|
||||
-rw-r--r-- 1 root root 10064 2016-06-30 18:39 ./ANNOUNCE.14_2
|
||||
-rw-r--r-- 1 root root 15590 2021-08-07 23:14 ./CHANGES_AND_HINTS.TXT
|
||||
-rw-r--r-- 1 root root 1085062 2021-11-09 20:26 ./CHECKSUMS.md5
|
||||
-rw-r--r-- 1 root root 163 2021-11-09 20:26 ./CHECKSUMS.md5.asc
|
||||
-rw-r--r-- 1 root root 1085062 2021-11-10 20:36 ./CHECKSUMS.md5
|
||||
-rw-r--r-- 1 root root 163 2021-11-10 20:36 ./CHECKSUMS.md5.asc
|
||||
-rw-r--r-- 1 root root 17976 1994-06-10 02:28 ./COPYING
|
||||
-rw-r--r-- 1 root root 35147 2007-06-30 04:21 ./COPYING3
|
||||
-rw-r--r-- 1 root root 19573 2016-06-23 20:08 ./COPYRIGHT.TXT
|
||||
-rw-r--r-- 1 root root 616 2006-10-02 04:37 ./CRYPTO_NOTICE.TXT
|
||||
-rw-r--r-- 1 root root 1759263 2021-11-10 20:32 ./ChangeLog.txt
|
||||
-rw-r--r-- 1 root root 1760407 2021-11-11 20:36 ./ChangeLog.txt
|
||||
drwxr-xr-x 3 root root 4096 2013-03-20 22:17 ./EFI
|
||||
drwxr-xr-x 2 root root 4096 2021-11-06 20:23 ./EFI/BOOT
|
||||
-rw-r--r-- 1 root root 1187840 2021-06-15 19:16 ./EFI/BOOT/bootx64.efi
|
||||
|
@ -25,9 +25,9 @@ drwxr-xr-x 2 root root 4096 2021-11-06 20:23 ./EFI/BOOT
|
|||
-rwxr-xr-x 1 root root 2504 2019-07-05 18:54 ./EFI/BOOT/make-grub.sh
|
||||
-rw-r--r-- 1 root root 10722 2013-09-21 19:02 ./EFI/BOOT/osdetect.cfg
|
||||
-rw-r--r-- 1 root root 1273 2013-08-12 21:08 ./EFI/BOOT/tools.cfg
|
||||
-rw-r--r-- 1 root root 1412551 2021-11-09 20:26 ./FILELIST.TXT
|
||||
-rw-r--r-- 1 root root 1412551 2021-11-10 20:35 ./FILELIST.TXT
|
||||
-rw-r--r-- 1 root root 1572 2012-08-29 18:27 ./GPG-KEY
|
||||
-rw-r--r-- 1 root root 857257 2021-11-10 20:35 ./PACKAGES.TXT
|
||||
-rw-r--r-- 1 root root 858022 2021-11-11 20:38 ./PACKAGES.TXT
|
||||
-rw-r--r-- 1 root root 8564 2016-06-28 21:33 ./README.TXT
|
||||
-rw-r--r-- 1 root root 3629 2021-11-06 20:15 ./README.initrd
|
||||
-rw-r--r-- 1 root root 34412 2017-12-01 17:44 ./README_CRYPT.TXT
|
||||
|
@ -715,13 +715,13 @@ drwxr-xr-x 2 root root 4096 2012-09-20 18:06 ./patches
|
|||
-rw-r--r-- 1 root root 575 2012-09-20 18:06 ./patches/FILE_LIST
|
||||
-rw-r--r-- 1 root root 14 2012-09-20 18:06 ./patches/MANIFEST.bz2
|
||||
-rw-r--r-- 1 root root 224 2012-09-20 18:06 ./patches/PACKAGES.TXT
|
||||
drwxr-xr-x 17 root root 4096 2021-11-10 20:35 ./slackware64
|
||||
-rw-r--r-- 1 root root 334940 2021-11-10 20:35 ./slackware64/CHECKSUMS.md5
|
||||
-rw-r--r-- 1 root root 163 2021-11-10 20:35 ./slackware64/CHECKSUMS.md5.asc
|
||||
-rw-r--r-- 1 root root 415504 2021-11-10 20:34 ./slackware64/FILE_LIST
|
||||
-rw-r--r-- 1 root root 4182814 2021-11-10 20:34 ./slackware64/MANIFEST.bz2
|
||||
drwxr-xr-x 17 root root 4096 2021-11-11 20:38 ./slackware64
|
||||
-rw-r--r-- 1 root root 335151 2021-11-11 20:38 ./slackware64/CHECKSUMS.md5
|
||||
-rw-r--r-- 1 root root 163 2021-11-11 20:38 ./slackware64/CHECKSUMS.md5.asc
|
||||
-rw-r--r-- 1 root root 415760 2021-11-11 20:38 ./slackware64/FILE_LIST
|
||||
-rw-r--r-- 1 root root 4180999 2021-11-11 20:38 ./slackware64/MANIFEST.bz2
|
||||
lrwxrwxrwx 1 root root 15 2009-08-23 23:34 ./slackware64/PACKAGES.TXT -> ../PACKAGES.TXT
|
||||
drwxr-xr-x 2 root root 32768 2021-11-09 20:24 ./slackware64/a
|
||||
drwxr-xr-x 2 root root 32768 2021-11-11 20:38 ./slackware64/a
|
||||
-rw-r--r-- 1 root root 327 2021-07-17 17:47 ./slackware64/a/aaa_base-15.0-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 10788 2021-07-17 17:47 ./slackware64/a/aaa_base-15.0-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-07-17 17:47 ./slackware64/a/aaa_base-15.0-x86_64-1.txz.asc
|
||||
|
@ -1011,9 +1011,9 @@ drwxr-xr-x 2 root root 32768 2021-11-09 20:24 ./slackware64/a
|
|||
-rw-r--r-- 1 root root 396 2021-02-13 11:14 ./slackware64/a/rpm2tgz-1.2.2-x86_64-4.txt
|
||||
-rw-r--r-- 1 root root 5624 2021-02-13 11:14 ./slackware64/a/rpm2tgz-1.2.2-x86_64-4.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 11:14 ./slackware64/a/rpm2tgz-1.2.2-x86_64-4.txz.asc
|
||||
-rw-r--r-- 1 root root 465 2021-04-22 18:05 ./slackware64/a/sdparm-1.12-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 97432 2021-04-22 18:05 ./slackware64/a/sdparm-1.12-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-04-22 18:05 ./slackware64/a/sdparm-1.12-x86_64-1.txz.asc
|
||||
-rw-r--r-- 1 root root 465 2021-11-11 16:25 ./slackware64/a/sdparm-1.12-x86_64-2.txt
|
||||
-rw-r--r-- 1 root root 97412 2021-11-11 16:25 ./slackware64/a/sdparm-1.12-x86_64-2.txz
|
||||
-rw-r--r-- 1 root root 163 2021-11-11 16:25 ./slackware64/a/sdparm-1.12-x86_64-2.txz.asc
|
||||
-rw-r--r-- 1 root root 406 2021-02-13 11:15 ./slackware64/a/sed-4.8-x86_64-3.txt
|
||||
-rw-r--r-- 1 root root 249740 2021-02-13 11:15 ./slackware64/a/sed-4.8-x86_64-3.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 11:15 ./slackware64/a/sed-4.8-x86_64-3.txz.asc
|
||||
|
@ -1044,9 +1044,9 @@ drwxr-xr-x 2 root root 32768 2021-11-09 20:24 ./slackware64/a
|
|||
-rw-r--r-- 1 root root 694 2021-02-13 11:17 ./slackware64/a/sysvinit-functions-8.53-x86_64-5.txt
|
||||
-rw-r--r-- 1 root root 36392 2021-02-13 11:17 ./slackware64/a/sysvinit-functions-8.53-x86_64-5.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 11:17 ./slackware64/a/sysvinit-functions-8.53-x86_64-5.txz.asc
|
||||
-rw-r--r-- 1 root root 378 2021-09-17 03:28 ./slackware64/a/sysvinit-scripts-15.0-noarch-5.txt
|
||||
-rw-r--r-- 1 root root 15952 2021-09-17 03:28 ./slackware64/a/sysvinit-scripts-15.0-noarch-5.txz
|
||||
-rw-r--r-- 1 root root 163 2021-09-17 03:28 ./slackware64/a/sysvinit-scripts-15.0-noarch-5.txz.asc
|
||||
-rw-r--r-- 1 root root 378 2021-11-11 17:48 ./slackware64/a/sysvinit-scripts-15.0-noarch-6.txt
|
||||
-rw-r--r-- 1 root root 16304 2021-11-11 17:48 ./slackware64/a/sysvinit-scripts-15.0-noarch-6.txz
|
||||
-rw-r--r-- 1 root root 163 2021-11-11 17:48 ./slackware64/a/sysvinit-scripts-15.0-noarch-6.txz.asc
|
||||
-rw-r--r-- 1 root root 1534 2021-11-06 20:15 ./slackware64/a/tagfile
|
||||
-rw-r--r-- 1 root root 395 2021-02-15 20:32 ./slackware64/a/tar-1.34-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 850976 2021-02-15 20:32 ./slackware64/a/tar-1.34-x86_64-1.txz
|
||||
|
@ -1060,9 +1060,9 @@ drwxr-xr-x 2 root root 32768 2021-11-09 20:24 ./slackware64/a
|
|||
-rw-r--r-- 1 root root 417 2021-02-13 11:19 ./slackware64/a/tree-1.8.0-x86_64-3.txt
|
||||
-rw-r--r-- 1 root root 48900 2021-02-13 11:19 ./slackware64/a/tree-1.8.0-x86_64-3.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 11:19 ./slackware64/a/tree-1.8.0-x86_64-3.txz.asc
|
||||
-rw-r--r-- 1 root root 412 2021-04-18 18:17 ./slackware64/a/udisks-1.0.5-x86_64-9.txt
|
||||
-rw-r--r-- 1 root root 176992 2021-04-18 18:17 ./slackware64/a/udisks-1.0.5-x86_64-9.txz
|
||||
-rw-r--r-- 1 root root 163 2021-04-18 18:17 ./slackware64/a/udisks-1.0.5-x86_64-9.txz.asc
|
||||
-rw-r--r-- 1 root root 412 2021-11-11 16:27 ./slackware64/a/udisks-1.0.5-x86_64-10.txt
|
||||
-rw-r--r-- 1 root root 177708 2021-11-11 16:27 ./slackware64/a/udisks-1.0.5-x86_64-10.txz
|
||||
-rw-r--r-- 1 root root 163 2021-11-11 16:27 ./slackware64/a/udisks-1.0.5-x86_64-10.txz.asc
|
||||
-rw-r--r-- 1 root root 427 2021-09-30 17:38 ./slackware64/a/udisks2-2.9.4-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 988856 2021-09-30 17:38 ./slackware64/a/udisks2-2.9.4-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-09-30 17:38 ./slackware64/a/udisks2-2.9.4-x86_64-1.txz.asc
|
||||
|
@ -1102,7 +1102,7 @@ drwxr-xr-x 2 root root 32768 2021-11-09 20:24 ./slackware64/a
|
|||
-rw-r--r-- 1 root root 540 2021-02-13 11:22 ./slackware64/a/zoo-2.10_22-x86_64-4.txt
|
||||
-rw-r--r-- 1 root root 56160 2021-02-13 11:22 ./slackware64/a/zoo-2.10_22-x86_64-4.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 11:22 ./slackware64/a/zoo-2.10_22-x86_64-4.txz.asc
|
||||
drwxr-xr-x 2 root root 20480 2021-11-09 20:24 ./slackware64/ap
|
||||
drwxr-xr-x 2 root root 20480 2021-11-11 20:38 ./slackware64/ap
|
||||
-rw-r--r-- 1 root root 291 2021-02-13 11:23 ./slackware64/ap/a2ps-4.14-x86_64-9.txt
|
||||
-rw-r--r-- 1 root root 703580 2021-02-13 11:23 ./slackware64/ap/a2ps-4.14-x86_64-9.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 11:23 ./slackware64/ap/a2ps-4.14-x86_64-9.txz.asc
|
||||
|
@ -1228,9 +1228,9 @@ drwxr-xr-x 2 root root 20480 2021-11-09 20:24 ./slackware64/ap
|
|||
-rw-r--r-- 1 root root 366 2021-05-06 19:12 ./slackware64/ap/lsscsi-0.32-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 52876 2021-05-06 19:12 ./slackware64/ap/lsscsi-0.32-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-05-06 19:12 ./slackware64/ap/lsscsi-0.32-x86_64-1.txz.asc
|
||||
-rw-r--r-- 1 root root 504 2021-08-04 19:15 ./slackware64/ap/lxc-4.0.10-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 1822676 2021-08-04 19:15 ./slackware64/ap/lxc-4.0.10-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-08-04 19:15 ./slackware64/ap/lxc-4.0.10-x86_64-1.txz.asc
|
||||
-rw-r--r-- 1 root root 504 2021-11-11 17:50 ./slackware64/ap/lxc-4.0.11-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 1887668 2021-11-11 17:50 ./slackware64/ap/lxc-4.0.11-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-11-11 17:50 ./slackware64/ap/lxc-4.0.11-x86_64-1.txz.asc
|
||||
-rw-r--r-- 1 root root 338 2021-02-13 11:32 ./slackware64/ap/madplay-0.15.2b-x86_64-7.txt
|
||||
-rw-r--r-- 1 root root 59992 2021-02-13 11:32 ./slackware64/ap/madplay-0.15.2b-x86_64-7.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 11:32 ./slackware64/ap/madplay-0.15.2b-x86_64-7.txz.asc
|
||||
|
@ -2710,7 +2710,7 @@ drwxr-xr-x 2 root root 86016 2021-11-09 20:24 ./slackware64/kde
|
|||
-rw-r--r-- 1 root root 296 2021-11-04 18:45 ./slackware64/kde/zeroconf-ioslave-21.08.3-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 50068 2021-11-04 18:45 ./slackware64/kde/zeroconf-ioslave-21.08.3-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-11-04 18:45 ./slackware64/kde/zeroconf-ioslave-21.08.3-x86_64-1.txz.asc
|
||||
drwxr-xr-x 2 root root 77824 2021-11-10 20:34 ./slackware64/l
|
||||
drwxr-xr-x 2 root root 77824 2021-11-11 20:38 ./slackware64/l
|
||||
-rw-r--r-- 1 root root 329 2021-02-13 05:56 ./slackware64/l/GConf-3.2.6-x86_64-7.txt
|
||||
-rw-r--r-- 1 root root 928148 2021-02-13 05:56 ./slackware64/l/GConf-3.2.6-x86_64-7.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 05:56 ./slackware64/l/GConf-3.2.6-x86_64-7.txz.asc
|
||||
|
@ -2867,9 +2867,9 @@ drwxr-xr-x 2 root root 77824 2021-11-10 20:34 ./slackware64/l
|
|||
-rw-r--r-- 1 root root 265 2021-10-03 22:46 ./slackware64/l/eigen3-3.4.0-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 1035096 2021-10-03 22:46 ./slackware64/l/eigen3-3.4.0-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-10-03 22:46 ./slackware64/l/eigen3-3.4.0-x86_64-1.txz.asc
|
||||
-rw-r--r-- 1 root root 527 2021-05-23 18:59 ./slackware64/l/elfutils-0.185-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 872532 2021-05-23 18:59 ./slackware64/l/elfutils-0.185-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-05-23 18:59 ./slackware64/l/elfutils-0.185-x86_64-1.txz.asc
|
||||
-rw-r--r-- 1 root root 527 2021-11-11 16:19 ./slackware64/l/elfutils-0.186-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 878564 2021-11-11 16:19 ./slackware64/l/elfutils-0.186-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-11-11 16:19 ./slackware64/l/elfutils-0.186-x86_64-1.txz.asc
|
||||
-rw-r--r-- 1 root root 343 2021-08-11 18:05 ./slackware64/l/enchant-2.3.1-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 52324 2021-08-11 18:05 ./slackware64/l/enchant-2.3.1-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-08-11 18:05 ./slackware64/l/enchant-2.3.1-x86_64-1.txz.asc
|
||||
|
@ -3220,9 +3220,9 @@ drwxr-xr-x 2 root root 77824 2021-11-10 20:34 ./slackware64/l
|
|||
-rw-r--r-- 1 root root 293 2021-02-21 19:13 ./slackware64/l/libgphoto2-2.5.27-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 1439448 2021-02-21 19:13 ./slackware64/l/libgphoto2-2.5.27-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-21 19:13 ./slackware64/l/libgphoto2-2.5.27-x86_64-1.txz.asc
|
||||
-rw-r--r-- 1 root root 517 2021-04-18 18:15 ./slackware64/l/libgpod-0.8.3-x86_64-10.txt
|
||||
-rw-r--r-- 1 root root 306632 2021-04-18 18:15 ./slackware64/l/libgpod-0.8.3-x86_64-10.txz
|
||||
-rw-r--r-- 1 root root 163 2021-04-18 18:15 ./slackware64/l/libgpod-0.8.3-x86_64-10.txz.asc
|
||||
-rw-r--r-- 1 root root 517 2021-11-11 16:26 ./slackware64/l/libgpod-0.8.3-x86_64-11.txt
|
||||
-rw-r--r-- 1 root root 306516 2021-11-11 16:26 ./slackware64/l/libgpod-0.8.3-x86_64-11.txz
|
||||
-rw-r--r-- 1 root root 163 2021-11-11 16:26 ./slackware64/l/libgpod-0.8.3-x86_64-11.txz.asc
|
||||
-rw-r--r-- 1 root root 336 2021-02-13 07:03 ./slackware64/l/libgsf-1.14.47-x86_64-3.txt
|
||||
-rw-r--r-- 1 root root 320488 2021-02-13 07:03 ./slackware64/l/libgsf-1.14.47-x86_64-3.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 07:03 ./slackware64/l/libgsf-1.14.47-x86_64-3.txz.asc
|
||||
|
@ -3349,6 +3349,9 @@ drwxr-xr-x 2 root root 77824 2021-11-10 20:34 ./slackware64/l
|
|||
-rw-r--r-- 1 root root 331 2021-05-21 18:55 ./slackware64/l/libsass-3.6.5-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 678220 2021-05-21 18:55 ./slackware64/l/libsass-3.6.5-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-05-21 18:55 ./slackware64/l/libsass-3.6.5-x86_64-1.txz.asc
|
||||
-rw-r--r-- 1 root root 593 2021-11-11 16:36 ./slackware64/l/libseccomp-2.5.3-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 91656 2021-11-11 16:36 ./slackware64/l/libseccomp-2.5.3-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-11-11 16:36 ./slackware64/l/libseccomp-2.5.3-x86_64-1.txz.asc
|
||||
-rw-r--r-- 1 root root 249 2021-02-13 07:13 ./slackware64/l/libsecret-0.20.4-x86_64-3.txt
|
||||
-rw-r--r-- 1 root root 234300 2021-02-13 07:13 ./slackware64/l/libsecret-0.20.4-x86_64-3.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 07:13 ./slackware64/l/libsecret-0.20.4-x86_64-3.txz.asc
|
||||
|
@ -3475,8 +3478,8 @@ drwxr-xr-x 2 root root 77824 2021-11-10 20:34 ./slackware64/l
|
|||
-rw-r--r-- 1 root root 272 2021-02-13 07:20 ./slackware64/l/lzo-2.10-x86_64-4.txt
|
||||
-rw-r--r-- 1 root root 85240 2021-02-13 07:20 ./slackware64/l/lzo-2.10-x86_64-4.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 07:20 ./slackware64/l/lzo-2.10-x86_64-4.txz.asc
|
||||
-rw-r--r-- 1 root root 26951 2021-10-03 23:04 ./slackware64/l/maketag
|
||||
-rw-r--r-- 1 root root 26951 2021-10-03 23:04 ./slackware64/l/maketag.ez
|
||||
-rw-r--r-- 1 root root 27020 2021-11-11 20:34 ./slackware64/l/maketag
|
||||
-rw-r--r-- 1 root root 27020 2021-11-11 20:34 ./slackware64/l/maketag.ez
|
||||
-rw-r--r-- 1 root root 520 2021-02-13 07:20 ./slackware64/l/media-player-info-24-noarch-3.txt
|
||||
-rw-r--r-- 1 root root 20676 2021-02-13 07:20 ./slackware64/l/media-player-info-24-noarch-3.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 07:20 ./slackware64/l/media-player-info-24-noarch-3.txz.asc
|
||||
|
@ -3720,9 +3723,9 @@ drwxr-xr-x 2 root root 77824 2021-11-10 20:34 ./slackware64/l
|
|||
-rw-r--r-- 1 root root 484 2021-02-13 08:58 ./slackware64/l/serf-1.3.9-x86_64-6.txt
|
||||
-rw-r--r-- 1 root root 64384 2021-02-13 08:58 ./slackware64/l/serf-1.3.9-x86_64-6.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 08:58 ./slackware64/l/serf-1.3.9-x86_64-6.txz.asc
|
||||
-rw-r--r-- 1 root root 583 2021-04-14 16:38 ./slackware64/l/sg3_utils-1.46-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 896752 2021-04-14 16:38 ./slackware64/l/sg3_utils-1.46-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-04-14 16:38 ./slackware64/l/sg3_utils-1.46-x86_64-1.txz.asc
|
||||
-rw-r--r-- 1 root root 583 2021-11-11 16:23 ./slackware64/l/sg3_utils-1.47-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 905232 2021-11-11 16:23 ./slackware64/l/sg3_utils-1.47-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-11-11 16:23 ./slackware64/l/sg3_utils-1.47-x86_64-1.txz.asc
|
||||
-rw-r--r-- 1 root root 642 2021-02-13 08:58 ./slackware64/l/shared-desktop-ontologies-0.11.0-x86_64-4.txt
|
||||
-rw-r--r-- 1 root root 97196 2021-02-13 08:58 ./slackware64/l/shared-desktop-ontologies-0.11.0-x86_64-4.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 08:58 ./slackware64/l/shared-desktop-ontologies-0.11.0-x86_64-4.txz.asc
|
||||
|
@ -3765,7 +3768,7 @@ drwxr-xr-x 2 root root 77824 2021-11-10 20:34 ./slackware64/l
|
|||
-rw-r--r-- 1 root root 356 2021-02-13 09:01 ./slackware64/l/t1lib-5.1.2-x86_64-6.txt
|
||||
-rw-r--r-- 1 root root 514212 2021-02-13 09:01 ./slackware64/l/t1lib-5.1.2-x86_64-6.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 09:01 ./slackware64/l/t1lib-5.1.2-x86_64-6.txz.asc
|
||||
-rw-r--r-- 1 root root 5028 2021-10-03 23:04 ./slackware64/l/tagfile
|
||||
-rw-r--r-- 1 root root 5043 2021-11-11 20:34 ./slackware64/l/tagfile
|
||||
-rw-r--r-- 1 root root 339 2021-02-16 19:23 ./slackware64/l/taglib-1.12-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 378740 2021-02-16 19:23 ./slackware64/l/taglib-1.12-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-16 19:23 ./slackware64/l/taglib-1.12-x86_64-1.txz.asc
|
||||
|
@ -3820,7 +3823,7 @@ drwxr-xr-x 2 root root 77824 2021-11-10 20:34 ./slackware64/l
|
|||
-rw-r--r-- 1 root root 463 2021-05-15 18:01 ./slackware64/l/zstd-1.5.0-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 458040 2021-05-15 18:01 ./slackware64/l/zstd-1.5.0-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-05-15 18:01 ./slackware64/l/zstd-1.5.0-x86_64-1.txz.asc
|
||||
drwxr-xr-x 2 root root 32768 2021-11-10 20:34 ./slackware64/n
|
||||
drwxr-xr-x 2 root root 32768 2021-11-11 20:38 ./slackware64/n
|
||||
-rw-r--r-- 1 root root 357 2021-09-27 06:13 ./slackware64/n/ModemManager-1.18.2-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 2111876 2021-09-27 06:13 ./slackware64/n/ModemManager-1.18.2-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-09-27 06:13 ./slackware64/n/ModemManager-1.18.2-x86_64-1.txz.asc
|
||||
|
@ -4107,9 +4110,9 @@ drwxr-xr-x 2 root root 32768 2021-11-10 20:34 ./slackware64/n
|
|||
-rw-r--r-- 1 root root 306 2021-02-13 12:15 ./slackware64/n/netwatch-1.3.1_2-x86_64-5.txt
|
||||
-rw-r--r-- 1 root root 86984 2021-02-13 12:15 ./slackware64/n/netwatch-1.3.1_2-x86_64-5.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 12:15 ./slackware64/n/netwatch-1.3.1_2-x86_64-5.txz.asc
|
||||
-rw-r--r-- 1 root root 582 2021-04-16 23:16 ./slackware64/n/network-scripts-15.0-noarch-16.txt
|
||||
-rw-r--r-- 1 root root 39712 2021-04-16 23:16 ./slackware64/n/network-scripts-15.0-noarch-16.txz
|
||||
-rw-r--r-- 1 root root 163 2021-04-16 23:16 ./slackware64/n/network-scripts-15.0-noarch-16.txz.asc
|
||||
-rw-r--r-- 1 root root 582 2021-11-11 17:47 ./slackware64/n/network-scripts-15.0-noarch-17.txt
|
||||
-rw-r--r-- 1 root root 39824 2021-11-11 17:47 ./slackware64/n/network-scripts-15.0-noarch-17.txz
|
||||
-rw-r--r-- 1 root root 163 2021-11-11 17:47 ./slackware64/n/network-scripts-15.0-noarch-17.txz.asc
|
||||
-rw-r--r-- 1 root root 557 2021-02-13 12:16 ./slackware64/n/netwrite-0.17-x86_64-4.txt
|
||||
-rw-r--r-- 1 root root 6912 2021-02-13 12:16 ./slackware64/n/netwrite-0.17-x86_64-4.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 12:16 ./slackware64/n/netwrite-0.17-x86_64-4.txz.asc
|
||||
|
@ -4327,7 +4330,7 @@ drwxr-xr-x 2 root root 4096 2021-11-06 20:26 ./slackware64/tcl
|
|||
-rw-r--r-- 1 root root 227 2021-11-06 17:03 ./slackware64/tcl/tk-8.6.12-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 1788908 2021-11-06 17:03 ./slackware64/tcl/tk-8.6.12-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-11-06 17:03 ./slackware64/tcl/tk-8.6.12-x86_64-1.txz.asc
|
||||
drwxr-xr-x 2 root root 65536 2021-11-10 20:34 ./slackware64/x
|
||||
drwxr-xr-x 2 root root 65536 2021-11-11 20:38 ./slackware64/x
|
||||
-rw-r--r-- 1 root root 440 2021-09-04 17:57 ./slackware64/x/OpenCC-1.1.3-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 682700 2021-09-04 17:57 ./slackware64/x/OpenCC-1.1.3-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-09-04 17:57 ./slackware64/x/OpenCC-1.1.3-x86_64-1.txz.asc
|
||||
|
@ -4541,9 +4544,9 @@ drwxr-xr-x 2 root root 65536 2021-11-10 20:34 ./slackware64/x
|
|||
-rw-r--r-- 1 root root 508 2021-02-13 12:47 ./slackware64/x/hack-fonts-ttf-3.003-noarch-3.txt
|
||||
-rw-r--r-- 1 root root 375048 2021-02-13 12:47 ./slackware64/x/hack-fonts-ttf-3.003-noarch-3.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 12:47 ./slackware64/x/hack-fonts-ttf-3.003-noarch-3.txz.asc
|
||||
-rw-r--r-- 1 root root 287 2021-11-03 00:55 ./slackware64/x/ibus-1.5.25-x86_64-3.txt
|
||||
-rw-r--r-- 1 root root 7727104 2021-11-03 00:55 ./slackware64/x/ibus-1.5.25-x86_64-3.txz
|
||||
-rw-r--r-- 1 root root 163 2021-11-03 00:55 ./slackware64/x/ibus-1.5.25-x86_64-3.txz.asc
|
||||
-rw-r--r-- 1 root root 287 2021-11-11 18:01 ./slackware64/x/ibus-1.5.25-x86_64-4.txt
|
||||
-rw-r--r-- 1 root root 7731956 2021-11-11 18:01 ./slackware64/x/ibus-1.5.25-x86_64-4.txz
|
||||
-rw-r--r-- 1 root root 163 2021-11-11 18:01 ./slackware64/x/ibus-1.5.25-x86_64-4.txz.asc
|
||||
-rw-r--r-- 1 root root 253 2021-11-03 01:10 ./slackware64/x/ibus-anthy-1.5.13-x86_64-3.txt
|
||||
-rw-r--r-- 1 root root 813952 2021-11-03 01:10 ./slackware64/x/ibus-anthy-1.5.13-x86_64-3.txz
|
||||
-rw-r--r-- 1 root root 163 2021-11-03 01:10 ./slackware64/x/ibus-anthy-1.5.13-x86_64-3.txz.asc
|
||||
|
@ -5506,8 +5509,8 @@ drwxr-xr-x 2 root root 12288 2021-10-14 19:41 ./slackware64/xfce
|
|||
-rw-r--r-- 1 root root 365 2021-05-19 19:02 ./slackware64/xfce/xfce4-screenshooter-1.9.9-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 160580 2021-05-19 19:02 ./slackware64/xfce/xfce4-screenshooter-1.9.9-x86_64-1.txz
|
||||
-rw-r--r-- 1 root root 163 2021-05-19 19:02 ./slackware64/xfce/xfce4-screenshooter-1.9.9-x86_64-1.txz.asc
|
||||
-rw-r--r-- 1 root root 449 2021-02-13 13:53 ./slackware64/xfce/xfce4-session-4.16.0-x86_64-3.txt
|
||||
-rw-r--r-- 1 root root 318644 2021-02-13 13:53 ./slackware64/xfce/xfce4-session-4.16.0-x86_64-3.txz
|
||||
-rw-r--r-- 1 root root 449 2021-02-13 13:53 ./slackware64/xfce/xfce4-session-4.16.0-x86_64-3.txt
|
||||
-rw-r--r-- 1 root root 318644 2021-02-13 13:53 ./slackware64/xfce/xfce4-session-4.16.0-x86_64-3.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 13:53 ./slackware64/xfce/xfce4-session-4.16.0-x86_64-3.txz.asc
|
||||
-rw-r--r-- 1 root root 377 2021-06-09 04:53 ./slackware64/xfce/xfce4-settings-4.16.2-x86_64-1.txt
|
||||
-rw-r--r-- 1 root root 803988 2021-06-09 04:53 ./slackware64/xfce/xfce4-settings-4.16.2-x86_64-1.txz
|
||||
|
@ -5548,13 +5551,13 @@ drwxr-xr-x 2 root root 4096 2021-02-15 19:33 ./slackware64/y
|
|||
-rw-r--r-- 1 root root 1486956 2021-02-13 13:56 ./slackware64/y/nethack-3.6.6-x86_64-3.txz
|
||||
-rw-r--r-- 1 root root 163 2021-02-13 13:56 ./slackware64/y/nethack-3.6.6-x86_64-3.txz.asc
|
||||
-rw-r--r-- 1 root root 26 2020-12-30 21:55 ./slackware64/y/tagfile
|
||||
drwxr-xr-x 18 root root 4096 2021-11-10 20:35 ./source
|
||||
-rw-r--r-- 1 root root 578765 2021-11-10 20:35 ./source/CHECKSUMS.md5
|
||||
-rw-r--r-- 1 root root 163 2021-11-10 20:35 ./source/CHECKSUMS.md5.asc
|
||||
-rw-r--r-- 1 root root 805496 2021-11-10 20:35 ./source/FILE_LIST
|
||||
-rw-r--r-- 1 root root 23380053 2021-11-10 20:35 ./source/MANIFEST.bz2
|
||||
drwxr-xr-x 18 root root 4096 2021-11-11 20:39 ./source
|
||||
-rw-r--r-- 1 root root 578855 2021-11-11 20:39 ./source/CHECKSUMS.md5
|
||||
-rw-r--r-- 1 root root 163 2021-11-11 20:39 ./source/CHECKSUMS.md5.asc
|
||||
-rw-r--r-- 1 root root 805561 2021-11-11 20:39 ./source/FILE_LIST
|
||||
-rw-r--r-- 1 root root 23378691 2021-11-11 20:39 ./source/MANIFEST.bz2
|
||||
-rw-r--r-- 1 root root 1314 2006-10-02 04:40 ./source/README.TXT
|
||||
drwxr-xr-x 122 root root 4096 2021-10-21 17:33 ./source/a
|
||||
drwxr-xr-x 122 root root 4096 2021-11-11 20:15 ./source/a
|
||||
-rw-r--r-- 1 root root 1591 2021-04-06 18:09 ./source/a/FTBFSlog
|
||||
drwxr-xr-x 2 root root 4096 2021-07-17 17:46 ./source/a/aaa_base
|
||||
-rw-r--r-- 1 root root 11115 2018-06-24 18:43 ./source/a/aaa_base/_aaa_base.tar.gz
|
||||
|
@ -6376,7 +6379,7 @@ drwxr-xr-x 2 root root 4096 2010-08-07 22:43 ./source/a/rpm2tgz/patches
|
|||
-rw-r--r-- 1 root root 851 2018-02-27 06:13 ./source/a/rpm2tgz/slack-desc
|
||||
drwxr-xr-x 2 root root 4096 2021-04-22 18:04 ./source/a/sdparm
|
||||
-rw-r--r-- 1 root root 332796 2021-04-22 01:23 ./source/a/sdparm/sdparm-1.12.tar.xz
|
||||
-rwxr-xr-x 1 root root 4226 2021-04-22 18:04 ./source/a/sdparm/sdparm.SlackBuild
|
||||
-rwxr-xr-x 1 root root 4226 2021-11-11 16:25 ./source/a/sdparm/sdparm.SlackBuild
|
||||
-rw-r--r-- 1 root root 34 2020-03-06 19:25 ./source/a/sdparm/sdparm.url
|
||||
-rw-r--r-- 1 root root 919 2018-02-27 06:13 ./source/a/sdparm/slack-desc
|
||||
drwxr-xr-x 2 root root 4096 2021-02-13 05:31 ./source/a/sed
|
||||
|
@ -6471,10 +6474,10 @@ drwxr-xr-x 2 root root 4096 2018-09-04 22:24 ./source/a/sysvinit-scripts/
|
|||
drwxr-xr-x 2 root root 4096 2021-02-20 20:44 ./source/a/sysvinit-scripts/scripts
|
||||
-rw-r--r-- 1 root root 2367 2021-04-24 18:41 ./source/a/sysvinit-scripts/scripts/inittab
|
||||
-rw-r--r-- 1 root root 1649 2021-04-24 18:41 ./source/a/sysvinit-scripts/scripts/rc.4
|
||||
-rw-r--r-- 1 root root 9345 2021-09-17 03:27 ./source/a/sysvinit-scripts/scripts/rc.6
|
||||
-rw-r--r-- 1 root root 10077 2021-11-10 21:50 ./source/a/sysvinit-scripts/scripts/rc.6
|
||||
-rw-r--r-- 1 root root 3303 2021-04-23 18:33 ./source/a/sysvinit-scripts/scripts/rc.K
|
||||
-rw-r--r-- 1 root root 12700 2021-04-23 18:31 ./source/a/sysvinit-scripts/scripts/rc.M
|
||||
-rw-r--r-- 1 root root 16779 2021-07-27 20:30 ./source/a/sysvinit-scripts/scripts/rc.S
|
||||
-rw-r--r-- 1 root root 13227 2021-11-10 21:55 ./source/a/sysvinit-scripts/scripts/rc.M
|
||||
-rw-r--r-- 1 root root 18050 2021-11-10 21:49 ./source/a/sysvinit-scripts/scripts/rc.S
|
||||
-rw-r--r-- 1 root root 3330 2021-04-23 18:31 ./source/a/sysvinit-scripts/scripts/rc.cpufreq
|
||||
-rw-r--r-- 1 root root 274 2021-04-23 18:31 ./source/a/sysvinit-scripts/scripts/rc.local
|
||||
-rw-r--r-- 1 root root 170 2021-04-23 18:31 ./source/a/sysvinit-scripts/scripts/rc.loop
|
||||
|
@ -6482,7 +6485,7 @@ drwxr-xr-x 2 root root 4096 2021-02-20 20:44 ./source/a/sysvinit-scripts/
|
|||
-rw-r--r-- 1 root root 691 2021-04-23 18:31 ./source/a/sysvinit-scripts/scripts/rc.modules.local
|
||||
-rw-r--r-- 1 root root 1656 2021-04-23 18:31 ./source/a/sysvinit-scripts/scripts/rc.sysvinit
|
||||
-rw-r--r-- 1 root root 842 2018-02-27 06:13 ./source/a/sysvinit-scripts/slack-desc
|
||||
-rwxr-xr-x 1 root root 2373 2021-09-17 03:28 ./source/a/sysvinit-scripts/sysvinit-scripts.SlackBuild
|
||||
-rwxr-xr-x 1 root root 2373 2021-11-10 22:06 ./source/a/sysvinit-scripts/sysvinit-scripts.SlackBuild
|
||||
-rw-r--r-- 1 root root 668 2015-08-06 22:54 ./source/a/sysvinit/doinst.sh.gz
|
||||
-rw-r--r-- 1 root root 1009 2018-06-21 18:24 ./source/a/sysvinit/slack-desc
|
||||
-rw-r--r-- 1 root root 127072 2021-09-20 21:38 ./source/a/sysvinit/sysvinit-3.00.tar.xz
|
||||
|
@ -6520,7 +6523,7 @@ drwxr-xr-x 2 root root 4096 2021-02-13 05:31 ./source/a/tree
|
|||
drwxr-xr-x 2 root root 4096 2021-04-18 18:17 ./source/a/udisks
|
||||
-rw-r--r-- 1 root root 866 2018-02-27 06:13 ./source/a/udisks/slack-desc
|
||||
-rw-r--r-- 1 root root 459256 2014-03-10 09:14 ./source/a/udisks/udisks-1.0.5.tar.xz
|
||||
-rwxr-xr-x 1 root root 4506 2021-04-18 18:17 ./source/a/udisks/udisks.SlackBuild
|
||||
-rwxr-xr-x 1 root root 4507 2021-11-11 16:27 ./source/a/udisks/udisks.SlackBuild
|
||||
-rw-r--r-- 1 root root 367 2018-09-19 00:06 ./source/a/udisks/udisks.glibc228.diff.gz
|
||||
-rw-r--r-- 1 root root 753 2015-11-20 19:25 ./source/a/udisks/udisks.no.pci-db.diff.gz
|
||||
-rw-r--r-- 1 root root 37 2010-11-10 05:15 ./source/a/udisks/udisks.url
|
||||
|
@ -6626,7 +6629,7 @@ drwxr-xr-x 2 root root 4096 2021-02-13 05:31 ./source/a/zoo
|
|||
-rw-r--r-- 1 root root 173607 1994-12-30 20:19 ./source/a/zoo/zoo-2.10.tar.gz
|
||||
-rwxr-xr-x 1 root root 3143 2021-02-13 05:31 ./source/a/zoo/zoo.SlackBuild
|
||||
-rw-r--r-- 1 root root 14136 2010-05-22 09:49 ./source/a/zoo/zoo_2.10-22.debian.tar.gz
|
||||
drwxr-xr-x 85 root root 4096 2021-11-06 04:19 ./source/ap
|
||||
drwxr-xr-x 85 root root 4096 2021-11-11 17:49 ./source/ap
|
||||
-rw-r--r-- 1 root root 976 2021-04-03 17:43 ./source/ap/FTBFSlog
|
||||
drwxr-xr-x 2 root root 4096 2021-02-13 05:31 ./source/ap/a2ps
|
||||
-rw-r--r-- 1 root root 1521 2017-10-01 17:59 ./source/ap/a2ps/a2ps-4.14-texinfo-nodes.patch.gz
|
||||
|
@ -6898,23 +6901,14 @@ drwxr-xr-x 2 root root 4096 2021-05-06 19:12 ./source/ap/lsscsi
|
|||
-rwxr-xr-x 1 root root 4171 2021-05-06 19:12 ./source/ap/lsscsi/lsscsi.SlackBuild
|
||||
-rw-r--r-- 1 root root 36 2008-11-29 19:46 ./source/ap/lsscsi/lsscsi.url
|
||||
-rw-r--r-- 1 root root 821 2018-02-27 06:12 ./source/ap/lsscsi/slack-desc
|
||||
drwxr-xr-x 3 root root 4096 2021-08-04 18:49 ./source/ap/lxc
|
||||
drwxr-xr-x 2 root root 4096 2021-11-10 23:14 ./source/ap/lxc
|
||||
-rw-r--r-- 1 root root 254 2015-09-01 21:57 ./source/ap/lxc/doinst.sh.gz
|
||||
-rwxr-xr-x 1 root root 2327 2020-07-09 18:37 ./source/ap/lxc/get-lxc.sh
|
||||
-rw-r--r-- 1 root root 910553 2021-07-16 20:40 ./source/ap/lxc/lxc-4.0.10.tar.lz
|
||||
-rw-r--r-- 1 root root 12006 2021-08-04 18:48 ./source/ap/lxc/lxc-slackware.in
|
||||
-rwxr-xr-x 1 root root 6782 2021-08-04 18:54 ./source/ap/lxc/lxc.SlackBuild
|
||||
-rw-r--r-- 1 root root 929976 2021-10-19 16:10 ./source/ap/lxc/lxc-4.0.11.tar.lz
|
||||
-rw-r--r-- 1 root root 11714 2021-11-10 23:14 ./source/ap/lxc/lxc-slackware.in
|
||||
-rwxr-xr-x 1 root root 6523 2021-11-11 03:13 ./source/ap/lxc/lxc.SlackBuild
|
||||
-rw-r--r-- 1 root root 43 2021-11-10 23:12 ./source/ap/lxc/lxc.url
|
||||
-rw-r--r-- 1 root root 1340 2017-06-21 17:56 ./source/ap/lxc/rc.lxc
|
||||
drwxr-xr-x 2 root root 4096 2017-11-27 18:45 ./source/ap/lxc/scripts
|
||||
-rw-r--r-- 1 root root 512 2016-03-08 00:10 ./source/ap/lxc/scripts/README
|
||||
-rw-r--r-- 1 root root 9852 2019-07-19 17:32 ./source/ap/lxc/scripts/rc.6.lxc
|
||||
-rw-r--r-- 1 root root 9341 2019-02-20 00:32 ./source/ap/lxc/scripts/rc.6.orig
|
||||
-rw-r--r-- 1 root root 13087 2019-07-19 17:39 ./source/ap/lxc/scripts/rc.M.lxc
|
||||
-rw-r--r-- 1 root root 12482 2019-02-20 00:32 ./source/ap/lxc/scripts/rc.M.orig
|
||||
-rw-r--r-- 1 root root 18049 2019-07-19 17:48 ./source/ap/lxc/scripts/rc.S.lxc
|
||||
-rw-r--r-- 1 root root 16761 2019-02-20 00:32 ./source/ap/lxc/scripts/rc.S.orig
|
||||
-rw-r--r-- 1 root root 13966 2019-07-19 17:53 ./source/ap/lxc/scripts/rc.inet1.lxc
|
||||
-rw-r--r-- 1 root root 13486 2019-02-20 00:32 ./source/ap/lxc/scripts/rc.inet1.orig
|
||||
-rw-r--r-- 1 root root 955 2019-02-12 20:15 ./source/ap/lxc/slack-desc
|
||||
drwxr-xr-x 2 root root 4096 2021-02-13 05:31 ./source/ap/madplay
|
||||
-rw-r--r-- 1 root root 285 2011-04-02 17:59 ./source/ap/madplay/madplay-0.15.2b-fix-segfault.patch.gz
|
||||
|
@ -9601,7 +9595,7 @@ drwxr-xr-x 2 root root 4096 2021-11-05 17:38 ./source/kde/kde/src/plasma-
|
|||
-rw-r--r-- 1 root root 833 2021-11-09 13:50 ./source/kde/kde/src/plasma/systemsettings-5.23.3.tar.xz.sig
|
||||
-rw-r--r-- 1 root root 89400 2021-11-09 13:50 ./source/kde/kde/src/plasma/xdg-desktop-portal-kde-5.23.3.tar.xz
|
||||
-rw-r--r-- 1 root root 833 2021-11-09 13:50 ./source/kde/kde/src/plasma/xdg-desktop-portal-kde-5.23.3.tar.xz.sig
|
||||
drwxr-xr-x 367 root root 12288 2021-10-30 19:31 ./source/l
|
||||
drwxr-xr-x 368 root root 12288 2021-11-11 16:36 ./source/l
|
||||
-rw-r--r-- 1 root root 5349 2021-10-11 18:42 ./source/l/FTBFSlog
|
||||
drwxr-xr-x 3 root root 4096 2021-02-13 05:31 ./source/l/GConf
|
||||
-rw-r--r-- 1 root root 1559904 2013-01-22 02:48 ./source/l/GConf/GConf-3.2.6.tar.xz
|
||||
|
@ -9872,8 +9866,8 @@ drwxr-xr-x 2 root root 4096 2021-10-03 22:45 ./source/l/eigen3
|
|||
-rw-rw-r-- 1 root root 1774728 2021-08-18 20:41 ./source/l/eigen3/eigen-3.4.0.tar.lz
|
||||
-rwxr-xr-x 1 root root 3477 2021-10-03 22:45 ./source/l/eigen3/eigen3.SlackBuild
|
||||
-rw-r--r-- 1 root root 751 2020-11-01 20:04 ./source/l/eigen3/slack-desc
|
||||
drwxr-xr-x 2 root root 4096 2021-05-23 18:58 ./source/l/elfutils
|
||||
-rw-r--r-- 1 root root 8566473 2021-05-22 18:30 ./source/l/elfutils/elfutils-0.185.tar.lz
|
||||
drwxr-xr-x 2 root root 4096 2021-11-11 16:19 ./source/l/elfutils
|
||||
-rw-r--r-- 1 root root 8611054 2021-11-10 22:28 ./source/l/elfutils/elfutils-0.186.tar.lz
|
||||
-rwxr-xr-x 1 root root 4678 2021-05-11 18:27 ./source/l/elfutils/elfutils.SlackBuild
|
||||
-rw-r--r-- 1 root root 983 2020-11-01 18:17 ./source/l/elfutils/slack-desc
|
||||
drwxr-xr-x 2 root root 4096 2021-08-11 18:05 ./source/l/enchant
|
||||
|
@ -10545,7 +10539,7 @@ drwxr-xr-x 2 root root 4096 2021-02-21 19:13 ./source/l/libgphoto2
|
|||
drwxr-xr-x 2 root root 4096 2021-04-18 18:14 ./source/l/libgpod
|
||||
-rw-r--r-- 1 root root 269 2011-01-16 17:25 ./source/l/libgpod/doinst.sh.gz
|
||||
-rw-r--r-- 1 root root 666488 2013-09-04 11:24 ./source/l/libgpod/libgpod-0.8.3.tar.xz
|
||||
-rwxr-xr-x 1 root root 4727 2021-04-18 18:14 ./source/l/libgpod/libgpod.SlackBuild
|
||||
-rwxr-xr-x 1 root root 4727 2021-11-11 16:26 ./source/l/libgpod/libgpod.SlackBuild
|
||||
-rw-r--r-- 1 root root 972 2018-02-27 06:12 ./source/l/libgpod/slack-desc
|
||||
drwxr-xr-x 2 root root 4096 2021-02-13 05:31 ./source/l/libgsf
|
||||
-rw-r--r-- 1 root root 691448 2020-03-23 23:15 ./source/l/libgsf/libgsf-1.14.47.tar.xz
|
||||
|
@ -10743,6 +10737,11 @@ drwxr-xr-x 2 root root 4096 2021-05-21 18:54 ./source/l/libsass
|
|||
-rwxr-xr-x 1 root root 3932 2021-05-21 18:55 ./source/l/libsass/libsass.SlackBuild
|
||||
-rw-r--r-- 1 root root 32 2020-08-23 18:06 ./source/l/libsass/libsass.url
|
||||
-rw-r--r-- 1 root root 818 2020-11-01 20:04 ./source/l/libsass/slack-desc
|
||||
drwxr-xr-x 2 root root 4096 2021-11-11 03:21 ./source/l/libseccomp
|
||||
-rw-r--r-- 1 root root 142474 2021-11-05 20:12 ./source/l/libseccomp/libseccomp-2.5.3.tar.lz
|
||||
-rwxr-xr-x 1 root root 4447 2021-11-11 03:20 ./source/l/libseccomp/libseccomp.SlackBuild
|
||||
-rw-r--r-- 1 root root 38 2021-11-11 03:14 ./source/l/libseccomp/libseccomp.url
|
||||
-rw-r--r-- 1 root root 1083 2021-11-11 16:34 ./source/l/libseccomp/slack-desc
|
||||
drwxr-xr-x 2 root root 4096 2021-02-13 05:32 ./source/l/libsecret
|
||||
-rw-r--r-- 1 root root 529916 2020-10-10 16:55 ./source/l/libsecret/libsecret-0.20.4.tar.xz
|
||||
-rwxr-xr-x 1 root root 3716 2021-02-13 05:32 ./source/l/libsecret/libsecret.SlackBuild
|
||||
|
@ -11461,8 +11460,8 @@ drwxr-xr-x 2 root root 4096 2021-02-13 05:32 ./source/l/serf
|
|||
-rw-r--r-- 1 root root 455 2020-03-25 18:54 ./source/l/serf/serf.SConstruct.python3.diff.gz
|
||||
-rwxr--r-- 1 root root 3567 2021-02-13 05:32 ./source/l/serf/serf.SlackBuild
|
||||
-rw-r--r-- 1 root root 968 2018-02-27 06:12 ./source/l/serf/slack-desc
|
||||
drwxr-xr-x 2 root root 4096 2021-04-14 16:37 ./source/l/sg3_utils
|
||||
-rw-r--r-- 1 root root 1031800 2021-03-29 21:05 ./source/l/sg3_utils/sg3_utils-1.46.tar.xz
|
||||
drwxr-xr-x 2 root root 4096 2021-11-11 16:22 ./source/l/sg3_utils
|
||||
-rw-r--r-- 1 root root 1046904 2021-11-10 20:49 ./source/l/sg3_utils/sg3_utils-1.47.tar.xz
|
||||
-rwxr-xr-x 1 root root 4137 2021-04-14 16:37 ./source/l/sg3_utils/sg3_utils.SlackBuild
|
||||
-rw-r--r-- 1 root root 25 2010-11-10 05:18 ./source/l/sg3_utils/sg3_utils.url
|
||||
-rw-r--r-- 1 root root 1040 2018-02-27 06:12 ./source/l/sg3_utils/slack-desc
|
||||
|
@ -11631,7 +11630,7 @@ drwxr-xr-x 2 root root 4096 2021-05-15 18:00 ./source/l/zstd
|
|||
-rw-r--r-- 1 root root 325 2018-12-30 04:38 ./source/l/zstd/zstd.dont.link.pzstd.to.static.libzstd.a.diff.gz
|
||||
-rw-r--r-- 1 root root 33 2018-11-08 01:06 ./source/l/zstd/zstd.url
|
||||
-rwxr-xr-x 1 root root 14547 2021-02-14 06:12 ./source/make_world.sh
|
||||
drwxr-xr-x 156 root root 4096 2021-10-21 17:04 ./source/n
|
||||
drwxr-xr-x 156 root root 4096 2021-11-11 17:47 ./source/n
|
||||
-rw-r--r-- 1 root root 1448 2021-01-17 00:09 ./source/n/FTBFSlog
|
||||
drwxr-xr-x 2 root root 4096 2021-09-27 06:12 ./source/n/ModemManager
|
||||
-rw-r--r-- 1 root root 2496656 2021-09-16 10:39 ./source/n/ModemManager/ModemManager-1.18.2.tar.xz
|
||||
|
@ -12274,7 +12273,9 @@ drwxr-xr-x 2 root root 4096 2021-02-13 05:32 ./source/n/netwatch
|
|||
-rw-r--r-- 1 root root 491 2009-03-04 08:01 ./source/n/netwatch/netwatch.makefile.diff.gz
|
||||
-rw-r--r-- 1 root root 233 2009-03-04 08:01 ./source/n/netwatch/netwatch.phonemyself.diff.gz
|
||||
-rw-r--r-- 1 root root 762 2018-02-27 06:13 ./source/n/netwatch/slack-desc
|
||||
drwxr-xr-x 5 root root 4096 2021-03-10 04:17 ./source/n/network-scripts
|
||||
drwxr-xr-x 5 root root 4096 2021-11-10 22:14 ./source/n/network-scripts
|
||||
-rw-r--r-- 1 root root 1936 2021-11-10 22:26 ./source/n/network-scripts/0000-rc.inet1.new-lxc-additions.patch
|
||||
-rw-r--r-- 1 root root 899 2021-11-10 22:29 ./source/n/network-scripts/0001-netconfig-turn-off-rc.networkmanager-if-networkmanager-is-not-selected.patch
|
||||
-rw-r--r-- 1 root root 8788 2021-02-28 22:32 ./source/n/network-scripts/README.IPv6
|
||||
-rw-r--r-- 1 root root 1919 2021-02-28 02:09 ./source/n/network-scripts/README.VLANs
|
||||
-rw-r--r-- 1 root root 6258 2021-02-28 05:34 ./source/n/network-scripts/README.bonding
|
||||
|
@ -12286,7 +12287,7 @@ drwxr-xr-x 2 root root 4096 2020-08-14 03:30 ./source/n/network-scripts/ma
|
|||
drwxr-xr-x 2 root root 4096 2021-03-13 05:06 ./source/n/network-scripts/modprobe.d
|
||||
-rw-r--r-- 1 root root 442 2021-02-28 02:09 ./source/n/network-scripts/modprobe.d/bonding.conf
|
||||
-rw-r--r-- 1 root root 344 2021-02-28 02:09 ./source/n/network-scripts/modprobe.d/ipv6.conf
|
||||
-rwxr-xr-x 1 root root 3298 2021-04-16 18:51 ./source/n/network-scripts/network-scripts.SlackBuild
|
||||
-rwxr-xr-x 1 root root 3770 2021-11-10 22:16 ./source/n/network-scripts/network-scripts.SlackBuild
|
||||
drwxr-xr-x 2 root root 4096 2021-04-01 20:21 ./source/n/network-scripts/scripts
|
||||
-rw-r--r-- 1 root root 21 1999-01-28 01:15 ./source/n/network-scripts/scripts/HOSTNAME
|
||||
-rw-r--r-- 1 root root 27 1994-07-07 15:39 ./source/n/network-scripts/scripts/host.conf
|
||||
|
@ -12946,7 +12947,7 @@ drwxr-xr-x 2 root root 4096 2021-02-13 05:32 ./source/x/hack-fonts-ttf
|
|||
-rwxr-xr-x 1 root root 3348 2021-02-13 05:32 ./source/x/hack-fonts-ttf/hack-fonts-ttf.SlackBuild
|
||||
-rw-r--r-- 1 root root 222 2020-07-29 18:08 ./source/x/hack-fonts-ttf/hack-fonts-ttf.url
|
||||
-rw-r--r-- 1 root root 973 2020-07-29 18:22 ./source/x/hack-fonts-ttf/slack-desc
|
||||
drwxr-xr-x 2 root root 4096 2021-11-02 19:02 ./source/x/ibus
|
||||
drwxr-xr-x 2 root root 4096 2021-11-11 17:59 ./source/x/ibus
|
||||
drwxr-xr-x 2 root root 4096 2021-11-02 19:02 ./source/x/ibus-anthy
|
||||
-rw-r--r-- 1 root root 112 2017-03-18 17:08 ./source/x/ibus-anthy/doinst.sh.gz
|
||||
-rw-r--r-- 1 root root 141389 2021-08-20 08:54 ./source/x/ibus-anthy/ibus-anthy-1.5.13.tar.lz
|
||||
|
@ -12981,6 +12982,7 @@ drwxr-xr-x 2 root root 4096 2021-02-13 05:32 ./source/x/ibus-unikey
|
|||
-rw-r--r-- 1 root root 77832 2017-03-26 10:30 ./source/x/ibus-unikey/ibus-unikey-0.6.1.tar.xz
|
||||
-rwxr-xr-x 1 root root 3717 2021-02-13 05:32 ./source/x/ibus-unikey/ibus-unikey.SlackBuild
|
||||
-rw-r--r-- 1 root root 784 2020-11-22 20:12 ./source/x/ibus-unikey/slack-desc
|
||||
-rw-r--r-- 1 root root 562 2021-11-11 17:59 ./source/x/ibus/571e3b6e4f386abf12d3db70b9468e092c8d72bd.patch.gz
|
||||
-rw-r--r-- 1 root root 4318 2019-07-10 18:25 ./source/x/ibus/Blocks.txt.gz
|
||||
-rw-r--r-- 1 root root 370924 2020-02-24 21:51 ./source/x/ibus/NamesList.txt.gz
|
||||
-rw-r--r-- 1 root root 191 2017-03-18 18:15 ./source/x/ibus/doinst.sh.gz
|
||||
|
@ -12989,7 +12991,7 @@ drwxr-xr-x 2 root root 4096 2021-02-13 05:32 ./source/x/ibus-unikey
|
|||
-rw-r--r-- 1 root root 409 2017-10-03 09:24 ./source/x/ibus/ibus-autostart
|
||||
-rw-r--r-- 1 root root 710 2017-10-03 09:39 ./source/x/ibus/ibus-autostart-plasma.desktop
|
||||
-rw-r--r-- 1 root root 740 2017-10-03 09:39 ./source/x/ibus/ibus-autostart.desktop
|
||||
-rwxr-xr-x 1 root root 4410 2021-11-02 19:02 ./source/x/ibus/ibus.SlackBuild
|
||||
-rwxr-xr-x 1 root root 4503 2021-11-11 18:00 ./source/x/ibus/ibus.SlackBuild
|
||||
-rw-r--r-- 1 root root 232 2021-08-21 03:08 ./source/x/ibus/ibus.url
|
||||
-rw-r--r-- 1 root root 772 2020-11-22 20:12 ./source/x/ibus/slack-desc
|
||||
drwxr-xr-x 2 root root 4096 2021-02-13 05:32 ./source/x/intel-vaapi-driver
|
||||
|
|
|
@ -1135,6 +1135,7 @@ gzip ./source/x/x11/patch/xinit/xinit.remove.systemd.kludge.diff
|
|||
gzip ./source/x/x11/patch/xf86-video-intel/0001-sna-Avoid-clobbering-output-physical-size-with-xf86O.patch
|
||||
gzip ./source/x/x11/patch/xf86-video-s3virge/xf86-video-s3virge.xorg-server-1.20.x.diff
|
||||
gzip ./source/x/x11/patch/xorg-cf-files/Imake.tmpl-binutils-ar-2.36.patch
|
||||
gzip ./source/x/ibus/571e3b6e4f386abf12d3db70b9468e092c8d72bd.patch
|
||||
gzip ./source/x/ibus/NamesList.txt
|
||||
gzip ./source/x/ibus/Blocks.txt
|
||||
gzip ./source/x/ibus/doinst.sh
|
||||
|
|
|
@ -225,6 +225,7 @@ you are done." 22 74 10 \
|
|||
"librsvg" "Scalable Vector Graphics library" "on" \
|
||||
"libsamplerate" "Digital audio resampling library" "on" \
|
||||
"libsass" "Sass library for C/C++" "on" \
|
||||
"libseccomp" "enhanced seccomp library" "on" \
|
||||
"libsecret" "library to access the Secret Service API" "on" \
|
||||
"libsigc++" "Typesafe callback system for C++" "on" \
|
||||
"libsigc++3" "Typesafe callback system for C++ v3" "on" \
|
||||
|
@ -386,7 +387,7 @@ if [ $? = 1 -o $? = 255 ]; then
|
|||
rm -f $TMP/SeTpkgs
|
||||
> $TMP/SeTnewtag
|
||||
for pkg in \
|
||||
GConf LibRaw M2Crypto Mako PyQt5 QScintilla QtAV SDL2 SDL2_gfx SDL2_image SDL2_mixer SDL2_net SDL2_ttf a52dec aalib accountsservice adwaita-icon-theme alsa-lib alsa-oss alsa-plugins apr apr-util argon2 aspell aspell-en at-spi2-atk at-spi2-core atk atkmm audiofile babl boost brotli cairo cairomm cfitsio chmlib clucene cryfs cryptopp db48 dbus-glib dbus-python dconf dconf-editor desktop-file-utils djvulibre dotconf dvdauthor ebook-tools editorconfig-core-c eigen3 elfutils enchant esound espeak-ng exiv2 expat farstream ffmpeg fftw fluidsynth freecell-solver freetype frei0r-plugins fribidi fuse fuse3 gamin gc gcr gd gdbm gdk-pixbuf2 gdk-pixbuf2-xlib gegl gexiv2 giflib gjs glade glib glib-networking glib2 glibc glibc-i18n glibc-profile glibmm gmime gmm gmp gnome-keyring gnome-themes-extra gnu-efi gobject-introspection grantlee graphene graphite2 gsettings-desktop-schemas gsl gst-plugins-bad-free gst-plugins-base gst-plugins-good gst-plugins-libav gstreamer gtk+ gtk+2 gtk+3 gtk4 gtkmm2 gtkmm3 gtksourceview3 gtkspell gvfs harfbuzz hicolor-icon-theme hunspell hyphen icon-naming-utils icu4c id3lib imagemagick isl iso-codes jansson jasper jemalloc jmtpfs json-c json-glib judy kdsoap keybinder3 keyutils lame lcms lcms2 lensfun libaio libao libappindicator libarchive libasyncns libatasmart libbluray libburn libcaca libcanberra libcap libcap-ng libcddb libcdio libcdio-paranoia libclc libcue libdbusmenu libdbusmenu-qt libdiscid libdmtx libdvdnav libdvdread libedit libevent libexif libfakekey libffi libglade libgnome-keyring libgnt libgphoto2 libgpod libgsf libgtop libical libid3tag libidl libidn libidn2 libieee1284 libimobiledevice libindicator libiodbc libjpeg-turbo libkarma libmad libmcrypt libmng libmpc libmtp libnice libnih libnjb libnl libnl3 libnotify libnsl libnss_nis libodfgen libogg liboggz liboil libopusenc libpcap libplist libpng libproxy libpsl libqalculate libraw1394 librevenge librsvg libsamplerate libsass libsecret libsigc++ libsigc++3 libsigsegv libsndfile libsodium libsoup libspectre libssh libssh2 libtasn1 libtheora libtiff libunistring libunwind liburing libusb libusb-compat libusbmuxd libuv libvisio libvisual libvisual-plugins libvncserver libvorbis libvpx libwebp libwmf libwnck libwnck3 libwpd libwpg libxkbcommon libxklavier libxml2 libxslt libyaml libzip lmdb loudmouth lz4 lzo media-player-info mhash mlt mm mozilla-nss mozjs78 mpfr ncurses neon netpbm newt ocl-icd oniguruma openal-soft opencv openexr openjpeg opus opusfile orc pango pangomm parted pcaudiolib pcre pcre2 phonon phonon-backend-gstreamer pilot-link pipewire polkit polkit-gnome polkit-qt-1 poppler poppler-data popt pulseaudio pycairo pycups pycurl pygobject pygobject3 pygtk pyparsing python-appdirs python-certifi python-cffi python-chardet python-charset-normalizer python-distro python-dnspython python-docutils python-future python-idna python-markdown python-notify2 python-packaging python-pillow python-ply python-pycparser python-pygments python-pysol_cards python-random2 python-requests python-sane python-six python-urllib3 python2-module-collection qca qrencode qt5 qt5-webkit qtkeychain quazip readline rpcsvc-proto rttr rubygem-asciidoctor sbc sdl serf sg3_utils shared-desktop-ontologies shared-mime-info sip slang slang1 sound-theme-freedesktop speech-dispatcher speex speexdsp spirv-llvm-translator startup-notification svgalib system-config-printer t1lib taglib taglib-extras talloc tango-icon-theme tango-icon-theme-extras tdb tevent tidy-html5 utf8proc v4l-utils vid.stab vte wavpack woff2 xapian-core xxHash zlib zstd \
|
||||
GConf LibRaw M2Crypto Mako PyQt5 QScintilla QtAV SDL2 SDL2_gfx SDL2_image SDL2_mixer SDL2_net SDL2_ttf a52dec aalib accountsservice adwaita-icon-theme alsa-lib alsa-oss alsa-plugins apr apr-util argon2 aspell aspell-en at-spi2-atk at-spi2-core atk atkmm audiofile babl boost brotli cairo cairomm cfitsio chmlib clucene cryfs cryptopp db48 dbus-glib dbus-python dconf dconf-editor desktop-file-utils djvulibre dotconf dvdauthor ebook-tools editorconfig-core-c eigen3 elfutils enchant esound espeak-ng exiv2 expat farstream ffmpeg fftw fluidsynth freecell-solver freetype frei0r-plugins fribidi fuse fuse3 gamin gc gcr gd gdbm gdk-pixbuf2 gdk-pixbuf2-xlib gegl gexiv2 giflib gjs glade glib glib-networking glib2 glibc glibc-i18n glibc-profile glibmm gmime gmm gmp gnome-keyring gnome-themes-extra gnu-efi gobject-introspection grantlee graphene graphite2 gsettings-desktop-schemas gsl gst-plugins-bad-free gst-plugins-base gst-plugins-good gst-plugins-libav gstreamer gtk+ gtk+2 gtk+3 gtk4 gtkmm2 gtkmm3 gtksourceview3 gtkspell gvfs harfbuzz hicolor-icon-theme hunspell hyphen icon-naming-utils icu4c id3lib imagemagick isl iso-codes jansson jasper jemalloc jmtpfs json-c json-glib judy kdsoap keybinder3 keyutils lame lcms lcms2 lensfun libaio libao libappindicator libarchive libasyncns libatasmart libbluray libburn libcaca libcanberra libcap libcap-ng libcddb libcdio libcdio-paranoia libclc libcue libdbusmenu libdbusmenu-qt libdiscid libdmtx libdvdnav libdvdread libedit libevent libexif libfakekey libffi libglade libgnome-keyring libgnt libgphoto2 libgpod libgsf libgtop libical libid3tag libidl libidn libidn2 libieee1284 libimobiledevice libindicator libiodbc libjpeg-turbo libkarma libmad libmcrypt libmng libmpc libmtp libnice libnih libnjb libnl libnl3 libnotify libnsl libnss_nis libodfgen libogg liboggz liboil libopusenc libpcap libplist libpng libproxy libpsl libqalculate libraw1394 librevenge librsvg libsamplerate libsass libseccomp libsecret libsigc++ libsigc++3 libsigsegv libsndfile libsodium libsoup libspectre libssh libssh2 libtasn1 libtheora libtiff libunistring libunwind liburing libusb libusb-compat libusbmuxd libuv libvisio libvisual libvisual-plugins libvncserver libvorbis libvpx libwebp libwmf libwnck libwnck3 libwpd libwpg libxkbcommon libxklavier libxml2 libxslt libyaml libzip lmdb loudmouth lz4 lzo media-player-info mhash mlt mm mozilla-nss mozjs78 mpfr ncurses neon netpbm newt ocl-icd oniguruma openal-soft opencv openexr openjpeg opus opusfile orc pango pangomm parted pcaudiolib pcre pcre2 phonon phonon-backend-gstreamer pilot-link pipewire polkit polkit-gnome polkit-qt-1 poppler poppler-data popt pulseaudio pycairo pycups pycurl pygobject pygobject3 pygtk pyparsing python-appdirs python-certifi python-cffi python-chardet python-charset-normalizer python-distro python-dnspython python-docutils python-future python-idna python-markdown python-notify2 python-packaging python-pillow python-ply python-pycparser python-pygments python-pysol_cards python-random2 python-requests python-sane python-six python-urllib3 python2-module-collection qca qrencode qt5 qt5-webkit qtkeychain quazip readline rpcsvc-proto rttr rubygem-asciidoctor sbc sdl serf sg3_utils shared-desktop-ontologies shared-mime-info sip slang slang1 sound-theme-freedesktop speech-dispatcher speex speexdsp spirv-llvm-translator startup-notification svgalib system-config-printer t1lib taglib taglib-extras talloc tango-icon-theme tango-icon-theme-extras tdb tevent tidy-html5 utf8proc v4l-utils vid.stab vte wavpack woff2 xapian-core xxHash zlib zstd \
|
||||
; do
|
||||
echo "$pkg: SKP" >> $TMP/SeTnewtag
|
||||
done
|
||||
|
@ -394,7 +395,7 @@ GConf LibRaw M2Crypto Mako PyQt5 QScintilla QtAV SDL2 SDL2_gfx SDL2_image SDL2_m
|
|||
fi
|
||||
cat /dev/null > $TMP/SeTnewtag
|
||||
for PACKAGE in \
|
||||
GConf LibRaw M2Crypto Mako PyQt5 QScintilla QtAV SDL2 SDL2_gfx SDL2_image SDL2_mixer SDL2_net SDL2_ttf a52dec aalib accountsservice adwaita-icon-theme alsa-lib alsa-oss alsa-plugins apr apr-util argon2 aspell aspell-en at-spi2-atk at-spi2-core atk atkmm audiofile babl boost brotli cairo cairomm cfitsio chmlib clucene cryfs cryptopp db48 dbus-glib dbus-python dconf dconf-editor desktop-file-utils djvulibre dotconf dvdauthor ebook-tools editorconfig-core-c eigen3 elfutils enchant esound espeak-ng exiv2 expat farstream ffmpeg fftw fluidsynth freecell-solver freetype frei0r-plugins fribidi fuse fuse3 gamin gc gcr gd gdbm gdk-pixbuf2 gdk-pixbuf2-xlib gegl gexiv2 giflib gjs glade glib glib-networking glib2 glibc glibc-i18n glibc-profile glibmm gmime gmm gmp gnome-keyring gnome-themes-extra gnu-efi gobject-introspection grantlee graphene graphite2 gsettings-desktop-schemas gsl gst-plugins-bad-free gst-plugins-base gst-plugins-good gst-plugins-libav gstreamer gtk+ gtk+2 gtk+3 gtk4 gtkmm2 gtkmm3 gtksourceview3 gtkspell gvfs harfbuzz hicolor-icon-theme hunspell hyphen icon-naming-utils icu4c id3lib imagemagick isl iso-codes jansson jasper jemalloc jmtpfs json-c json-glib judy kdsoap keybinder3 keyutils lame lcms lcms2 lensfun libaio libao libappindicator libarchive libasyncns libatasmart libbluray libburn libcaca libcanberra libcap libcap-ng libcddb libcdio libcdio-paranoia libclc libcue libdbusmenu libdbusmenu-qt libdiscid libdmtx libdvdnav libdvdread libedit libevent libexif libfakekey libffi libglade libgnome-keyring libgnt libgphoto2 libgpod libgsf libgtop libical libid3tag libidl libidn libidn2 libieee1284 libimobiledevice libindicator libiodbc libjpeg-turbo libkarma libmad libmcrypt libmng libmpc libmtp libnice libnih libnjb libnl libnl3 libnotify libnsl libnss_nis libodfgen libogg liboggz liboil libopusenc libpcap libplist libpng libproxy libpsl libqalculate libraw1394 librevenge librsvg libsamplerate libsass libsecret libsigc++ libsigc++3 libsigsegv libsndfile libsodium libsoup libspectre libssh libssh2 libtasn1 libtheora libtiff libunistring libunwind liburing libusb libusb-compat libusbmuxd libuv libvisio libvisual libvisual-plugins libvncserver libvorbis libvpx libwebp libwmf libwnck libwnck3 libwpd libwpg libxkbcommon libxklavier libxml2 libxslt libyaml libzip lmdb loudmouth lz4 lzo media-player-info mhash mlt mm mozilla-nss mozjs78 mpfr ncurses neon netpbm newt ocl-icd oniguruma openal-soft opencv openexr openjpeg opus opusfile orc pango pangomm parted pcaudiolib pcre pcre2 phonon phonon-backend-gstreamer pilot-link pipewire polkit polkit-gnome polkit-qt-1 poppler poppler-data popt pulseaudio pycairo pycups pycurl pygobject pygobject3 pygtk pyparsing python-appdirs python-certifi python-cffi python-chardet python-charset-normalizer python-distro python-dnspython python-docutils python-future python-idna python-markdown python-notify2 python-packaging python-pillow python-ply python-pycparser python-pygments python-pysol_cards python-random2 python-requests python-sane python-six python-urllib3 python2-module-collection qca qrencode qt5 qt5-webkit qtkeychain quazip readline rpcsvc-proto rttr rubygem-asciidoctor sbc sdl serf sg3_utils shared-desktop-ontologies shared-mime-info sip slang slang1 sound-theme-freedesktop speech-dispatcher speex speexdsp spirv-llvm-translator startup-notification svgalib system-config-printer t1lib taglib taglib-extras talloc tango-icon-theme tango-icon-theme-extras tdb tevent tidy-html5 utf8proc v4l-utils vid.stab vte wavpack woff2 xapian-core xxHash zlib zstd \
|
||||
GConf LibRaw M2Crypto Mako PyQt5 QScintilla QtAV SDL2 SDL2_gfx SDL2_image SDL2_mixer SDL2_net SDL2_ttf a52dec aalib accountsservice adwaita-icon-theme alsa-lib alsa-oss alsa-plugins apr apr-util argon2 aspell aspell-en at-spi2-atk at-spi2-core atk atkmm audiofile babl boost brotli cairo cairomm cfitsio chmlib clucene cryfs cryptopp db48 dbus-glib dbus-python dconf dconf-editor desktop-file-utils djvulibre dotconf dvdauthor ebook-tools editorconfig-core-c eigen3 elfutils enchant esound espeak-ng exiv2 expat farstream ffmpeg fftw fluidsynth freecell-solver freetype frei0r-plugins fribidi fuse fuse3 gamin gc gcr gd gdbm gdk-pixbuf2 gdk-pixbuf2-xlib gegl gexiv2 giflib gjs glade glib glib-networking glib2 glibc glibc-i18n glibc-profile glibmm gmime gmm gmp gnome-keyring gnome-themes-extra gnu-efi gobject-introspection grantlee graphene graphite2 gsettings-desktop-schemas gsl gst-plugins-bad-free gst-plugins-base gst-plugins-good gst-plugins-libav gstreamer gtk+ gtk+2 gtk+3 gtk4 gtkmm2 gtkmm3 gtksourceview3 gtkspell gvfs harfbuzz hicolor-icon-theme hunspell hyphen icon-naming-utils icu4c id3lib imagemagick isl iso-codes jansson jasper jemalloc jmtpfs json-c json-glib judy kdsoap keybinder3 keyutils lame lcms lcms2 lensfun libaio libao libappindicator libarchive libasyncns libatasmart libbluray libburn libcaca libcanberra libcap libcap-ng libcddb libcdio libcdio-paranoia libclc libcue libdbusmenu libdbusmenu-qt libdiscid libdmtx libdvdnav libdvdread libedit libevent libexif libfakekey libffi libglade libgnome-keyring libgnt libgphoto2 libgpod libgsf libgtop libical libid3tag libidl libidn libidn2 libieee1284 libimobiledevice libindicator libiodbc libjpeg-turbo libkarma libmad libmcrypt libmng libmpc libmtp libnice libnih libnjb libnl libnl3 libnotify libnsl libnss_nis libodfgen libogg liboggz liboil libopusenc libpcap libplist libpng libproxy libpsl libqalculate libraw1394 librevenge librsvg libsamplerate libsass libseccomp libsecret libsigc++ libsigc++3 libsigsegv libsndfile libsodium libsoup libspectre libssh libssh2 libtasn1 libtheora libtiff libunistring libunwind liburing libusb libusb-compat libusbmuxd libuv libvisio libvisual libvisual-plugins libvncserver libvorbis libvpx libwebp libwmf libwnck libwnck3 libwpd libwpg libxkbcommon libxklavier libxml2 libxslt libyaml libzip lmdb loudmouth lz4 lzo media-player-info mhash mlt mm mozilla-nss mozjs78 mpfr ncurses neon netpbm newt ocl-icd oniguruma openal-soft opencv openexr openjpeg opus opusfile orc pango pangomm parted pcaudiolib pcre pcre2 phonon phonon-backend-gstreamer pilot-link pipewire polkit polkit-gnome polkit-qt-1 poppler poppler-data popt pulseaudio pycairo pycups pycurl pygobject pygobject3 pygtk pyparsing python-appdirs python-certifi python-cffi python-chardet python-charset-normalizer python-distro python-dnspython python-docutils python-future python-idna python-markdown python-notify2 python-packaging python-pillow python-ply python-pycparser python-pygments python-pysol_cards python-random2 python-requests python-sane python-six python-urllib3 python2-module-collection qca qrencode qt5 qt5-webkit qtkeychain quazip readline rpcsvc-proto rttr rubygem-asciidoctor sbc sdl serf sg3_utils shared-desktop-ontologies shared-mime-info sip slang slang1 sound-theme-freedesktop speech-dispatcher speex speexdsp spirv-llvm-translator startup-notification svgalib system-config-printer t1lib taglib taglib-extras talloc tango-icon-theme tango-icon-theme-extras tdb tevent tidy-html5 utf8proc v4l-utils vid.stab vte wavpack woff2 xapian-core xxHash zlib zstd \
|
||||
; do
|
||||
if grep "\(^\| \)$PACKAGE\( \|$\)" $TMP/SeTpkgs 1> /dev/null 2> /dev/null ; then
|
||||
echo "$PACKAGE: ADD" >> $TMP/SeTnewtag
|
||||
|
|
|
@ -225,6 +225,7 @@ you are done." 22 74 10 \
|
|||
"librsvg" "Scalable Vector Graphics library" "on" \
|
||||
"libsamplerate" "Digital audio resampling library" "on" \
|
||||
"libsass" "Sass library for C/C++" "on" \
|
||||
"libseccomp" "enhanced seccomp library" "on" \
|
||||
"libsecret" "library to access the Secret Service API" "on" \
|
||||
"libsigc++" "Typesafe callback system for C++" "on" \
|
||||
"libsigc++3" "Typesafe callback system for C++ v3" "on" \
|
||||
|
@ -386,7 +387,7 @@ if [ $? = 1 -o $? = 255 ]; then
|
|||
rm -f $TMP/SeTpkgs
|
||||
> $TMP/SeTnewtag
|
||||
for pkg in \
|
||||
GConf LibRaw M2Crypto Mako PyQt5 QScintilla QtAV SDL2 SDL2_gfx SDL2_image SDL2_mixer SDL2_net SDL2_ttf a52dec aalib accountsservice adwaita-icon-theme alsa-lib alsa-oss alsa-plugins apr apr-util argon2 aspell aspell-en at-spi2-atk at-spi2-core atk atkmm audiofile babl boost brotli cairo cairomm cfitsio chmlib clucene cryfs cryptopp db48 dbus-glib dbus-python dconf dconf-editor desktop-file-utils djvulibre dotconf dvdauthor ebook-tools editorconfig-core-c eigen3 elfutils enchant esound espeak-ng exiv2 expat farstream ffmpeg fftw fluidsynth freecell-solver freetype frei0r-plugins fribidi fuse fuse3 gamin gc gcr gd gdbm gdk-pixbuf2 gdk-pixbuf2-xlib gegl gexiv2 giflib gjs glade glib glib-networking glib2 glibc glibc-i18n glibc-profile glibmm gmime gmm gmp gnome-keyring gnome-themes-extra gnu-efi gobject-introspection grantlee graphene graphite2 gsettings-desktop-schemas gsl gst-plugins-bad-free gst-plugins-base gst-plugins-good gst-plugins-libav gstreamer gtk+ gtk+2 gtk+3 gtk4 gtkmm2 gtkmm3 gtksourceview3 gtkspell gvfs harfbuzz hicolor-icon-theme hunspell hyphen icon-naming-utils icu4c id3lib imagemagick isl iso-codes jansson jasper jemalloc jmtpfs json-c json-glib judy kdsoap keybinder3 keyutils lame lcms lcms2 lensfun libaio libao libappindicator libarchive libasyncns libatasmart libbluray libburn libcaca libcanberra libcap libcap-ng libcddb libcdio libcdio-paranoia libclc libcue libdbusmenu libdbusmenu-qt libdiscid libdmtx libdvdnav libdvdread libedit libevent libexif libfakekey libffi libglade libgnome-keyring libgnt libgphoto2 libgpod libgsf libgtop libical libid3tag libidl libidn libidn2 libieee1284 libimobiledevice libindicator libiodbc libjpeg-turbo libkarma libmad libmcrypt libmng libmpc libmtp libnice libnih libnjb libnl libnl3 libnotify libnsl libnss_nis libodfgen libogg liboggz liboil libopusenc libpcap libplist libpng libproxy libpsl libqalculate libraw1394 librevenge librsvg libsamplerate libsass libsecret libsigc++ libsigc++3 libsigsegv libsndfile libsodium libsoup libspectre libssh libssh2 libtasn1 libtheora libtiff libunistring libunwind liburing libusb libusb-compat libusbmuxd libuv libvisio libvisual libvisual-plugins libvncserver libvorbis libvpx libwebp libwmf libwnck libwnck3 libwpd libwpg libxkbcommon libxklavier libxml2 libxslt libyaml libzip lmdb loudmouth lz4 lzo media-player-info mhash mlt mm mozilla-nss mozjs78 mpfr ncurses neon netpbm newt ocl-icd oniguruma openal-soft opencv openexr openjpeg opus opusfile orc pango pangomm parted pcaudiolib pcre pcre2 phonon phonon-backend-gstreamer pilot-link pipewire polkit polkit-gnome polkit-qt-1 poppler poppler-data popt pulseaudio pycairo pycups pycurl pygobject pygobject3 pygtk pyparsing python-appdirs python-certifi python-cffi python-chardet python-charset-normalizer python-distro python-dnspython python-docutils python-future python-idna python-markdown python-notify2 python-packaging python-pillow python-ply python-pycparser python-pygments python-pysol_cards python-random2 python-requests python-sane python-six python-urllib3 python2-module-collection qca qrencode qt5 qt5-webkit qtkeychain quazip readline rpcsvc-proto rttr rubygem-asciidoctor sbc sdl serf sg3_utils shared-desktop-ontologies shared-mime-info sip slang slang1 sound-theme-freedesktop speech-dispatcher speex speexdsp spirv-llvm-translator startup-notification svgalib system-config-printer t1lib taglib taglib-extras talloc tango-icon-theme tango-icon-theme-extras tdb tevent tidy-html5 utf8proc v4l-utils vid.stab vte wavpack woff2 xapian-core xxHash zlib zstd \
|
||||
GConf LibRaw M2Crypto Mako PyQt5 QScintilla QtAV SDL2 SDL2_gfx SDL2_image SDL2_mixer SDL2_net SDL2_ttf a52dec aalib accountsservice adwaita-icon-theme alsa-lib alsa-oss alsa-plugins apr apr-util argon2 aspell aspell-en at-spi2-atk at-spi2-core atk atkmm audiofile babl boost brotli cairo cairomm cfitsio chmlib clucene cryfs cryptopp db48 dbus-glib dbus-python dconf dconf-editor desktop-file-utils djvulibre dotconf dvdauthor ebook-tools editorconfig-core-c eigen3 elfutils enchant esound espeak-ng exiv2 expat farstream ffmpeg fftw fluidsynth freecell-solver freetype frei0r-plugins fribidi fuse fuse3 gamin gc gcr gd gdbm gdk-pixbuf2 gdk-pixbuf2-xlib gegl gexiv2 giflib gjs glade glib glib-networking glib2 glibc glibc-i18n glibc-profile glibmm gmime gmm gmp gnome-keyring gnome-themes-extra gnu-efi gobject-introspection grantlee graphene graphite2 gsettings-desktop-schemas gsl gst-plugins-bad-free gst-plugins-base gst-plugins-good gst-plugins-libav gstreamer gtk+ gtk+2 gtk+3 gtk4 gtkmm2 gtkmm3 gtksourceview3 gtkspell gvfs harfbuzz hicolor-icon-theme hunspell hyphen icon-naming-utils icu4c id3lib imagemagick isl iso-codes jansson jasper jemalloc jmtpfs json-c json-glib judy kdsoap keybinder3 keyutils lame lcms lcms2 lensfun libaio libao libappindicator libarchive libasyncns libatasmart libbluray libburn libcaca libcanberra libcap libcap-ng libcddb libcdio libcdio-paranoia libclc libcue libdbusmenu libdbusmenu-qt libdiscid libdmtx libdvdnav libdvdread libedit libevent libexif libfakekey libffi libglade libgnome-keyring libgnt libgphoto2 libgpod libgsf libgtop libical libid3tag libidl libidn libidn2 libieee1284 libimobiledevice libindicator libiodbc libjpeg-turbo libkarma libmad libmcrypt libmng libmpc libmtp libnice libnih libnjb libnl libnl3 libnotify libnsl libnss_nis libodfgen libogg liboggz liboil libopusenc libpcap libplist libpng libproxy libpsl libqalculate libraw1394 librevenge librsvg libsamplerate libsass libseccomp libsecret libsigc++ libsigc++3 libsigsegv libsndfile libsodium libsoup libspectre libssh libssh2 libtasn1 libtheora libtiff libunistring libunwind liburing libusb libusb-compat libusbmuxd libuv libvisio libvisual libvisual-plugins libvncserver libvorbis libvpx libwebp libwmf libwnck libwnck3 libwpd libwpg libxkbcommon libxklavier libxml2 libxslt libyaml libzip lmdb loudmouth lz4 lzo media-player-info mhash mlt mm mozilla-nss mozjs78 mpfr ncurses neon netpbm newt ocl-icd oniguruma openal-soft opencv openexr openjpeg opus opusfile orc pango pangomm parted pcaudiolib pcre pcre2 phonon phonon-backend-gstreamer pilot-link pipewire polkit polkit-gnome polkit-qt-1 poppler poppler-data popt pulseaudio pycairo pycups pycurl pygobject pygobject3 pygtk pyparsing python-appdirs python-certifi python-cffi python-chardet python-charset-normalizer python-distro python-dnspython python-docutils python-future python-idna python-markdown python-notify2 python-packaging python-pillow python-ply python-pycparser python-pygments python-pysol_cards python-random2 python-requests python-sane python-six python-urllib3 python2-module-collection qca qrencode qt5 qt5-webkit qtkeychain quazip readline rpcsvc-proto rttr rubygem-asciidoctor sbc sdl serf sg3_utils shared-desktop-ontologies shared-mime-info sip slang slang1 sound-theme-freedesktop speech-dispatcher speex speexdsp spirv-llvm-translator startup-notification svgalib system-config-printer t1lib taglib taglib-extras talloc tango-icon-theme tango-icon-theme-extras tdb tevent tidy-html5 utf8proc v4l-utils vid.stab vte wavpack woff2 xapian-core xxHash zlib zstd \
|
||||
; do
|
||||
echo "$pkg: SKP" >> $TMP/SeTnewtag
|
||||
done
|
||||
|
@ -394,7 +395,7 @@ GConf LibRaw M2Crypto Mako PyQt5 QScintilla QtAV SDL2 SDL2_gfx SDL2_image SDL2_m
|
|||
fi
|
||||
cat /dev/null > $TMP/SeTnewtag
|
||||
for PACKAGE in \
|
||||
GConf LibRaw M2Crypto Mako PyQt5 QScintilla QtAV SDL2 SDL2_gfx SDL2_image SDL2_mixer SDL2_net SDL2_ttf a52dec aalib accountsservice adwaita-icon-theme alsa-lib alsa-oss alsa-plugins apr apr-util argon2 aspell aspell-en at-spi2-atk at-spi2-core atk atkmm audiofile babl boost brotli cairo cairomm cfitsio chmlib clucene cryfs cryptopp db48 dbus-glib dbus-python dconf dconf-editor desktop-file-utils djvulibre dotconf dvdauthor ebook-tools editorconfig-core-c eigen3 elfutils enchant esound espeak-ng exiv2 expat farstream ffmpeg fftw fluidsynth freecell-solver freetype frei0r-plugins fribidi fuse fuse3 gamin gc gcr gd gdbm gdk-pixbuf2 gdk-pixbuf2-xlib gegl gexiv2 giflib gjs glade glib glib-networking glib2 glibc glibc-i18n glibc-profile glibmm gmime gmm gmp gnome-keyring gnome-themes-extra gnu-efi gobject-introspection grantlee graphene graphite2 gsettings-desktop-schemas gsl gst-plugins-bad-free gst-plugins-base gst-plugins-good gst-plugins-libav gstreamer gtk+ gtk+2 gtk+3 gtk4 gtkmm2 gtkmm3 gtksourceview3 gtkspell gvfs harfbuzz hicolor-icon-theme hunspell hyphen icon-naming-utils icu4c id3lib imagemagick isl iso-codes jansson jasper jemalloc jmtpfs json-c json-glib judy kdsoap keybinder3 keyutils lame lcms lcms2 lensfun libaio libao libappindicator libarchive libasyncns libatasmart libbluray libburn libcaca libcanberra libcap libcap-ng libcddb libcdio libcdio-paranoia libclc libcue libdbusmenu libdbusmenu-qt libdiscid libdmtx libdvdnav libdvdread libedit libevent libexif libfakekey libffi libglade libgnome-keyring libgnt libgphoto2 libgpod libgsf libgtop libical libid3tag libidl libidn libidn2 libieee1284 libimobiledevice libindicator libiodbc libjpeg-turbo libkarma libmad libmcrypt libmng libmpc libmtp libnice libnih libnjb libnl libnl3 libnotify libnsl libnss_nis libodfgen libogg liboggz liboil libopusenc libpcap libplist libpng libproxy libpsl libqalculate libraw1394 librevenge librsvg libsamplerate libsass libsecret libsigc++ libsigc++3 libsigsegv libsndfile libsodium libsoup libspectre libssh libssh2 libtasn1 libtheora libtiff libunistring libunwind liburing libusb libusb-compat libusbmuxd libuv libvisio libvisual libvisual-plugins libvncserver libvorbis libvpx libwebp libwmf libwnck libwnck3 libwpd libwpg libxkbcommon libxklavier libxml2 libxslt libyaml libzip lmdb loudmouth lz4 lzo media-player-info mhash mlt mm mozilla-nss mozjs78 mpfr ncurses neon netpbm newt ocl-icd oniguruma openal-soft opencv openexr openjpeg opus opusfile orc pango pangomm parted pcaudiolib pcre pcre2 phonon phonon-backend-gstreamer pilot-link pipewire polkit polkit-gnome polkit-qt-1 poppler poppler-data popt pulseaudio pycairo pycups pycurl pygobject pygobject3 pygtk pyparsing python-appdirs python-certifi python-cffi python-chardet python-charset-normalizer python-distro python-dnspython python-docutils python-future python-idna python-markdown python-notify2 python-packaging python-pillow python-ply python-pycparser python-pygments python-pysol_cards python-random2 python-requests python-sane python-six python-urllib3 python2-module-collection qca qrencode qt5 qt5-webkit qtkeychain quazip readline rpcsvc-proto rttr rubygem-asciidoctor sbc sdl serf sg3_utils shared-desktop-ontologies shared-mime-info sip slang slang1 sound-theme-freedesktop speech-dispatcher speex speexdsp spirv-llvm-translator startup-notification svgalib system-config-printer t1lib taglib taglib-extras talloc tango-icon-theme tango-icon-theme-extras tdb tevent tidy-html5 utf8proc v4l-utils vid.stab vte wavpack woff2 xapian-core xxHash zlib zstd \
|
||||
GConf LibRaw M2Crypto Mako PyQt5 QScintilla QtAV SDL2 SDL2_gfx SDL2_image SDL2_mixer SDL2_net SDL2_ttf a52dec aalib accountsservice adwaita-icon-theme alsa-lib alsa-oss alsa-plugins apr apr-util argon2 aspell aspell-en at-spi2-atk at-spi2-core atk atkmm audiofile babl boost brotli cairo cairomm cfitsio chmlib clucene cryfs cryptopp db48 dbus-glib dbus-python dconf dconf-editor desktop-file-utils djvulibre dotconf dvdauthor ebook-tools editorconfig-core-c eigen3 elfutils enchant esound espeak-ng exiv2 expat farstream ffmpeg fftw fluidsynth freecell-solver freetype frei0r-plugins fribidi fuse fuse3 gamin gc gcr gd gdbm gdk-pixbuf2 gdk-pixbuf2-xlib gegl gexiv2 giflib gjs glade glib glib-networking glib2 glibc glibc-i18n glibc-profile glibmm gmime gmm gmp gnome-keyring gnome-themes-extra gnu-efi gobject-introspection grantlee graphene graphite2 gsettings-desktop-schemas gsl gst-plugins-bad-free gst-plugins-base gst-plugins-good gst-plugins-libav gstreamer gtk+ gtk+2 gtk+3 gtk4 gtkmm2 gtkmm3 gtksourceview3 gtkspell gvfs harfbuzz hicolor-icon-theme hunspell hyphen icon-naming-utils icu4c id3lib imagemagick isl iso-codes jansson jasper jemalloc jmtpfs json-c json-glib judy kdsoap keybinder3 keyutils lame lcms lcms2 lensfun libaio libao libappindicator libarchive libasyncns libatasmart libbluray libburn libcaca libcanberra libcap libcap-ng libcddb libcdio libcdio-paranoia libclc libcue libdbusmenu libdbusmenu-qt libdiscid libdmtx libdvdnav libdvdread libedit libevent libexif libfakekey libffi libglade libgnome-keyring libgnt libgphoto2 libgpod libgsf libgtop libical libid3tag libidl libidn libidn2 libieee1284 libimobiledevice libindicator libiodbc libjpeg-turbo libkarma libmad libmcrypt libmng libmpc libmtp libnice libnih libnjb libnl libnl3 libnotify libnsl libnss_nis libodfgen libogg liboggz liboil libopusenc libpcap libplist libpng libproxy libpsl libqalculate libraw1394 librevenge librsvg libsamplerate libsass libseccomp libsecret libsigc++ libsigc++3 libsigsegv libsndfile libsodium libsoup libspectre libssh libssh2 libtasn1 libtheora libtiff libunistring libunwind liburing libusb libusb-compat libusbmuxd libuv libvisio libvisual libvisual-plugins libvncserver libvorbis libvpx libwebp libwmf libwnck libwnck3 libwpd libwpg libxkbcommon libxklavier libxml2 libxslt libyaml libzip lmdb loudmouth lz4 lzo media-player-info mhash mlt mm mozilla-nss mozjs78 mpfr ncurses neon netpbm newt ocl-icd oniguruma openal-soft opencv openexr openjpeg opus opusfile orc pango pangomm parted pcaudiolib pcre pcre2 phonon phonon-backend-gstreamer pilot-link pipewire polkit polkit-gnome polkit-qt-1 poppler poppler-data popt pulseaudio pycairo pycups pycurl pygobject pygobject3 pygtk pyparsing python-appdirs python-certifi python-cffi python-chardet python-charset-normalizer python-distro python-dnspython python-docutils python-future python-idna python-markdown python-notify2 python-packaging python-pillow python-ply python-pycparser python-pygments python-pysol_cards python-random2 python-requests python-sane python-six python-urllib3 python2-module-collection qca qrencode qt5 qt5-webkit qtkeychain quazip readline rpcsvc-proto rttr rubygem-asciidoctor sbc sdl serf sg3_utils shared-desktop-ontologies shared-mime-info sip slang slang1 sound-theme-freedesktop speech-dispatcher speex speexdsp spirv-llvm-translator startup-notification svgalib system-config-printer t1lib taglib taglib-extras talloc tango-icon-theme tango-icon-theme-extras tdb tevent tidy-html5 utf8proc v4l-utils vid.stab vte wavpack woff2 xapian-core xxHash zlib zstd \
|
||||
; do
|
||||
if grep "\(^\| \)$PACKAGE\( \|$\)" $TMP/SeTpkgs 1> /dev/null 2> /dev/null ; then
|
||||
echo "$PACKAGE: ADD" >> $TMP/SeTnewtag
|
||||
|
|
|
@ -210,6 +210,7 @@ librevenge:REC
|
|||
librsvg:REC
|
||||
libsamplerate:REC
|
||||
libsass:REC
|
||||
libseccomp:REC
|
||||
libsecret:REC
|
||||
libsigc++:REC
|
||||
libsigc++3:REC
|
||||
|
|
|
@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
|
|||
|
||||
PKGNAM=sdparm
|
||||
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
|
||||
BUILD=${BUILD:-1}
|
||||
BUILD=${BUILD:-2}
|
||||
|
||||
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
|
||||
|
||||
|
|
|
@ -4,15 +4,21 @@
|
|||
# 0 (halt) or runlevel 6 (reboot). It kills all processes,
|
||||
# unmounts file systems and then either halts or reboots.
|
||||
#
|
||||
# Version: @(#)/etc/rc.d/rc.6 2.47 Sat Jan 13 13:37:26 PST 2001
|
||||
# Version: @(#)/etc/rc.d/rc.6 15.0 Wed Nov 10 21:19:42 UTC 2021
|
||||
#
|
||||
# Author: Miquel van Smoorenburg <miquels@drinkel.nl.mugnet.org>
|
||||
# Modified by: Patrick J. Volkerding, <volkerdi@slackware.com>
|
||||
#
|
||||
|
||||
# Set the path.
|
||||
PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin
|
||||
|
||||
# If we are in an lxc container, set $container to skip parts of the script.
|
||||
# Thanks to Matteo Bernardini <ponce@slackbuilds.org> and Chris Willing for
|
||||
# the initial work making this script lxc compatible.
|
||||
if grep -aq container=lxc /proc/1/environ 2> /dev/null ; then
|
||||
container="lxc"
|
||||
fi
|
||||
|
||||
# If there are SystemV init scripts for this runlevel, run them.
|
||||
if [ -x /etc/rc.d/rc.sysvinit ]; then
|
||||
/etc/rc.d/rc.sysvinit
|
||||
|
@ -43,7 +49,7 @@ esac
|
|||
|
||||
# Save the system time to the hardware clock using hwclock --systohc.
|
||||
# This will also create or update the timestamps in /etc/adjtime.
|
||||
if [ -x /sbin/hwclock ]; then
|
||||
if [ -x /sbin/hwclock -a -z "$container" ]; then
|
||||
# Check for a broken motherboard RTC clock (where ioports for rtc are
|
||||
# unknown) to prevent hwclock causing a hang:
|
||||
if ! grep -q " : rtc" /proc/ioports ; then
|
||||
|
@ -112,7 +118,7 @@ if [ -x /etc/rc.d/rc.openldap ]; then
|
|||
fi
|
||||
|
||||
# Stop the haveged entropy daemon:
|
||||
if [ -x /etc/rc.d/rc.haveged ]; then
|
||||
if [ -x /etc/rc.d/rc.haveged -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.haveged stop
|
||||
fi
|
||||
|
||||
|
@ -172,7 +178,7 @@ if /bin/ls /etc/dhcpc/*.pid 1> /dev/null 2> /dev/null ; then
|
|||
fi
|
||||
|
||||
# Shut down PCMCIA devices:
|
||||
if [ -x /etc/rc.d/rc.pcmcia ]; then
|
||||
if [ -x /etc/rc.d/rc.pcmcia -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.pcmcia stop
|
||||
# The cards might need a little extra time here to deactivate:
|
||||
/bin/sleep 5
|
||||
|
@ -184,12 +190,12 @@ if [ -x /sbin/accton -a -r /var/log/pacct ]; then
|
|||
fi
|
||||
|
||||
# Terminate acpid before syslog:
|
||||
if [ -x /etc/rc.d/rc.acpid -a -r /var/run/acpid.pid ]; then # quit
|
||||
if [ -x /etc/rc.d/rc.acpid -a -r /var/run/acpid.pid -a -z "$container" ]; then # quit
|
||||
/etc/rc.d/rc.acpid stop
|
||||
fi
|
||||
|
||||
# Stop udev:
|
||||
if [ -x /etc/rc.d/rc.udev ]; then
|
||||
if [ -x /etc/rc.d/rc.udev -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.udev force-stop
|
||||
fi
|
||||
|
||||
|
@ -205,48 +211,52 @@ fi
|
|||
|
||||
# Try to turn off quota.
|
||||
if /bin/grep -q quota /etc/fstab ; then
|
||||
if [ -x /sbin/quotaoff ]; then
|
||||
if [ -x /sbin/quotaoff -a -z "$container" ]; then
|
||||
echo "Turning off filesystem quotas."
|
||||
/sbin/quotaoff -a
|
||||
fi
|
||||
fi
|
||||
|
||||
# Carry a random seed between reboots.
|
||||
echo "Saving random seed from /dev/urandom in /etc/random-seed."
|
||||
# Use the pool size from /proc, or 4096 bits:
|
||||
if [ -r /proc/sys/kernel/random/poolsize ]; then
|
||||
/bin/dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(expr $(cat /proc/sys/kernel/random/poolsize) / 8) 2> /dev/null
|
||||
else
|
||||
/bin/dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null
|
||||
if [ -z "$container" ]; then
|
||||
echo "Saving random seed from /dev/urandom in /etc/random-seed."
|
||||
# Use the pool size from /proc, or 4096 bits:
|
||||
if [ -r /proc/sys/kernel/random/poolsize ]; then
|
||||
/bin/dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(expr $(cat /proc/sys/kernel/random/poolsize) / 8) 2> /dev/null
|
||||
else
|
||||
/bin/dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null
|
||||
fi
|
||||
/bin/chmod 600 /etc/random-seed
|
||||
fi
|
||||
/bin/chmod 600 /etc/random-seed
|
||||
|
||||
# Before unmounting file systems write a reboot or halt record to wtmp.
|
||||
$shutdown_command -w
|
||||
|
||||
# Turn off swap:
|
||||
if [ ! "$(cat /proc/swaps | wc -l)" = "1" ]; then
|
||||
if [ ! "$(cat /proc/swaps | wc -l)" = "1" -a -z "$container" ]; then
|
||||
echo "Turning off swap."
|
||||
/sbin/swapoff -a
|
||||
/bin/sync
|
||||
fi
|
||||
|
||||
# Umount all tmpfs mounts except /dev/shm and under /run:
|
||||
cat /proc/mounts | grep " tmpfs " | grep -v -e " /run " -e " /run/" -e " /dev/shm " | while read mount ; do
|
||||
umount --recursive -v $(echo $mount | cut -f 2 -d ' ') 2> /dev/null
|
||||
done
|
||||
if [ -z "$container" ]; then
|
||||
cat /proc/mounts | grep " tmpfs " | grep -v -e " /run " -e " /run/" -e " /dev/shm " | while read mount ; do
|
||||
umount --recursive -v $(echo $mount | cut -f 2 -d ' ') 2> /dev/null
|
||||
done
|
||||
fi
|
||||
|
||||
# Unmount local file systems:
|
||||
echo "Unmounting local file systems:"
|
||||
/bin/umount -v -a -t no,proc,sysfs,devtmpfs,fuse.gvfsd-fuse,tmpfs
|
||||
|
||||
# JFS needs a sync here or the / partition cannot be remounted read-only.
|
||||
# In spite of this, it seems that a JFS root partition will always be checked
|
||||
# (and found to be clean) at boot:
|
||||
/bin/sync
|
||||
|
||||
echo "Remounting root filesystem read-only:"
|
||||
/bin/mount -v -n -o remount,ro /
|
||||
if [ -z "$container" ]; then
|
||||
echo "Unmounting local file systems:"
|
||||
/bin/umount -v -a -t no,proc,sysfs,devtmpfs,fuse.gvfsd-fuse,tmpfs
|
||||
# JFS needs a sync here or the / partition cannot be remounted read-only.
|
||||
# In spite of this, it seems that a JFS root partition will always be checked
|
||||
# (and found to be clean) at boot:
|
||||
/bin/sync
|
||||
echo "Remounting root filesystem read-only:"
|
||||
/bin/mount -v -n -o remount,ro /
|
||||
fi
|
||||
|
||||
# This never hurts:
|
||||
/bin/sync
|
||||
|
@ -273,9 +283,11 @@ if [ -f /etc/crypttab -a -x /sbin/cryptsetup ]; then
|
|||
fi
|
||||
|
||||
# Deactivate LVM volume groups:
|
||||
if [ -r /etc/lvmtab -o -d /etc/lvm/backup ]; then
|
||||
echo "Deactivating LVM volume groups:"
|
||||
/sbin/vgchange -an
|
||||
if [ -z "$container" ]; then
|
||||
if [ -r /etc/lvmtab -o -d /etc/lvm/backup ]; then
|
||||
echo "Deactivating LVM volume groups:"
|
||||
/sbin/vgchange -an
|
||||
fi
|
||||
fi
|
||||
|
||||
# This never hurts again (especially since root-on-LVM always fails
|
||||
|
@ -290,7 +302,7 @@ fi
|
|||
# This is to ensure all processes have completed on SMP machines:
|
||||
wait
|
||||
|
||||
if [ -x /sbin/genpowerd ]; then
|
||||
if [ -x /sbin/genpowerd -a -z "$container" ]; then
|
||||
# See if this is a powerfail situation:
|
||||
if /bin/egrep -q "FAIL|SCRAM" /etc/upsstatus 2> /dev/null ; then
|
||||
# Signal UPS to shut off the inverter:
|
||||
|
@ -306,6 +318,11 @@ if [ -x /sbin/genpowerd ]; then
|
|||
fi
|
||||
fi
|
||||
|
||||
if [ "$container" = "lxc" ]; then
|
||||
# Confirm successful shutdown of the container:
|
||||
echo "LXC container stopped."
|
||||
fi
|
||||
|
||||
# Now halt (poweroff with APM or ACPI enabled kernels) or reboot.
|
||||
if [ "$shutdown_command" = "reboot" ]; then
|
||||
echo "Rebooting."
|
||||
|
@ -313,4 +330,3 @@ if [ "$shutdown_command" = "reboot" ]; then
|
|||
else
|
||||
/sbin/poweroff
|
||||
fi
|
||||
|
||||
|
|
|
@ -14,6 +14,13 @@
|
|||
# Tell the viewers what's going to happen.
|
||||
echo "Going multiuser..."
|
||||
|
||||
# If we are in an lxc container, set $container to skip parts of the script.
|
||||
# Thanks to Matteo Bernardini <ponce@slackbuilds.org> and Chris Willing for
|
||||
# the initial work making this script lxc compatible.
|
||||
if grep -aq container=lxc /proc/1/environ 2> /dev/null ; then
|
||||
container="lxc"
|
||||
fi
|
||||
|
||||
# Update all the shared library links:
|
||||
if [ -x /sbin/ldconfig ]; then
|
||||
echo "Updating shared library links: /sbin/ldconfig &"
|
||||
|
@ -22,17 +29,19 @@ fi
|
|||
|
||||
# Call the setterm init script to set screen blanking and power management
|
||||
# defaults:
|
||||
if [ -x /etc/rc.d/rc.setterm ]; then
|
||||
if [ -x /etc/rc.d/rc.setterm -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.setterm
|
||||
fi
|
||||
|
||||
# Set the hostname.
|
||||
if [ -r /etc/HOSTNAME ]; then
|
||||
/bin/hostname $(cat /etc/HOSTNAME)
|
||||
else
|
||||
# fall back on this old default:
|
||||
echo "darkstar.example.net" > /etc/HOSTNAME
|
||||
/bin/hostname $(cat /etc/HOSTNAME)
|
||||
# Set the hostname:
|
||||
if [ -z "$container" ]; then
|
||||
if [ -r /etc/HOSTNAME ]; then
|
||||
/bin/hostname $(cat /etc/HOSTNAME)
|
||||
else
|
||||
# fall back on this old default:
|
||||
echo "darkstar.example.net" > /etc/HOSTNAME
|
||||
/bin/hostname $(cat /etc/HOSTNAME)
|
||||
fi
|
||||
fi
|
||||
|
||||
# Set the permissions on /var/log/dmesg according to whether the kernel
|
||||
|
@ -68,7 +77,7 @@ fi
|
|||
# Hopefully this situation will be unified in the future, but for now
|
||||
# that's how it is...
|
||||
#
|
||||
if [ -x /etc/rc.d/rc.pcmcia ]; then
|
||||
if [ -x /etc/rc.d/rc.pcmcia -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.pcmcia start
|
||||
# The cards might need a little extra time here to initialize.
|
||||
sleep 5
|
||||
|
@ -90,19 +99,19 @@ fi
|
|||
# to look for device changes and to generate persistent rules if needed.
|
||||
if grep -wq sysfs /proc/mounts && grep -q devtmpfs /proc/filesystems ; then
|
||||
if ! grep -wq nohotplug /proc/cmdline ; then
|
||||
if [ -x /etc/rc.d/rc.udev ]; then
|
||||
if [ -x /etc/rc.d/rc.udev -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.udev start
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Start the haveged entropy daemon:
|
||||
if [ -x /etc/rc.d/rc.haveged ]; then
|
||||
if [ -x /etc/rc.d/rc.haveged -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.haveged start
|
||||
fi
|
||||
|
||||
# Start the rngd entropy daemon:
|
||||
if [ -x /etc/rc.d/rc.rngd ]; then
|
||||
if [ -x /etc/rc.d/rc.rngd -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.rngd start
|
||||
fi
|
||||
|
||||
|
@ -167,12 +176,12 @@ chmod 755 / 2> /dev/null
|
|||
chmod 1777 /tmp /var/tmp
|
||||
|
||||
# Start ACPI daemon.
|
||||
if [ -x /etc/rc.d/rc.acpid ]; then
|
||||
if [ -x /etc/rc.d/rc.acpid -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.acpid start
|
||||
fi
|
||||
|
||||
# Enable CPU frequency scaling:
|
||||
if [ -x /etc/rc.d/rc.cpufreq ]; then
|
||||
if [ -x /etc/rc.d/rc.cpufreq -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.cpufreq start
|
||||
fi
|
||||
|
||||
|
@ -258,7 +267,7 @@ fi
|
|||
|
||||
# Start smartd, which monitors the status of S.M.A.R.T. compatible
|
||||
# hard drives and reports any problems:
|
||||
if [ -x /etc/rc.d/rc.smartd ]; then
|
||||
if [ -x /etc/rc.d/rc.smartd -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.smartd start
|
||||
fi
|
||||
|
||||
|
@ -269,7 +278,7 @@ fi
|
|||
# /usr/doc/genpower-*/ directory.
|
||||
# You'll also need to configure a similar block in /etc/rc.d/rc.6 if you want
|
||||
# support for stopping the UPS's inverter after the machine halts.
|
||||
#if [ -x /sbin/genpowerd ]; then
|
||||
#if [ -x /sbin/genpowerd -a -z "$container" ]; then
|
||||
# echo "Starting genpowerd daemon..."
|
||||
# /sbin/genpowerd
|
||||
#fi
|
||||
|
@ -339,7 +348,7 @@ elif [ -x /etc/rc.d/rc.postfix -a -x usr/sbin/postdrop ]; then
|
|||
fi
|
||||
|
||||
# Load ALSA (sound) defaults:
|
||||
if [ -x /etc/rc.d/rc.alsa ]; then
|
||||
if [ -x /etc/rc.d/rc.alsa -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.alsa
|
||||
fi
|
||||
|
||||
|
|
|
@ -7,26 +7,33 @@
|
|||
|
||||
PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin
|
||||
|
||||
# If we are in an lxc container, set $container to skip parts of the script.
|
||||
# Thanks to Matteo Bernardini <ponce@slackbuilds.org> and Chris Willing for
|
||||
# the initial work making this script lxc compatible.
|
||||
if grep -aq container=lxc /proc/1/environ 2> /dev/null ; then
|
||||
container="lxc"
|
||||
fi
|
||||
|
||||
# Mount /proc if it is not already mounted:
|
||||
if [ ! -d /proc/sys ]; then
|
||||
if [ ! -d /proc/sys -a -z "$container" ]; then
|
||||
/sbin/mount -v proc /proc -n -t proc 2> /dev/null
|
||||
fi
|
||||
|
||||
# Mount /sys if it is not already mounted:
|
||||
if [ ! -d /sys/kernel ]; then
|
||||
if [ ! -d /sys/kernel -a -z "$container" ]; then
|
||||
/sbin/mount -v sysfs /sys -n -t sysfs 2> /dev/null
|
||||
fi
|
||||
|
||||
# If /run exists, mount a tmpfs on it (unless the
|
||||
# initrd has already done so):
|
||||
if [ -d /run ]; then
|
||||
if [ -d /run -a -z "$container" ]; then
|
||||
if ! grep -wq "tmpfs /run tmpfs" /proc/mounts ; then
|
||||
/sbin/mount -v -n -t tmpfs tmpfs /run -o mode=0755,size=32M,nodev,nosuid,noexec
|
||||
fi
|
||||
fi
|
||||
|
||||
# Load the loop device kernel module:
|
||||
if [ -x /etc/rc.d/rc.loop ]; then
|
||||
if [ -x /etc/rc.d/rc.loop -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.loop start
|
||||
fi
|
||||
|
||||
|
@ -40,34 +47,36 @@ fi
|
|||
# So use it. :-)
|
||||
if grep -wq sysfs /proc/mounts && grep -q devtmpfs /proc/filesystems ; then
|
||||
if ! grep -wq nohotplug /proc/cmdline ; then
|
||||
if [ -x /etc/rc.d/rc.udev ]; then
|
||||
if [ -x /etc/rc.d/rc.udev -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.udev start
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Mount Control Groups filesystem interface:
|
||||
if grep -wq cgroup /proc/filesystems ; then
|
||||
if [ -d /sys/fs/cgroup ]; then
|
||||
# See linux-*/Documentation/cgroups/cgroups.txt (section 1.6)
|
||||
# Check if we have some tools to autodetect the available cgroup controllers
|
||||
if [ -x /bin/cut -a -x /bin/tail ]; then
|
||||
# Mount a tmpfs as the cgroup filesystem root
|
||||
mount -t tmpfs -o mode=0755,size=8M cgroup_root /sys/fs/cgroup
|
||||
# Autodetect available controllers and mount them in subfolders
|
||||
controllers="$(/bin/cut -f 1 /proc/cgroups | /bin/tail -n +2)"
|
||||
for i in $controllers; do
|
||||
mkdir /sys/fs/cgroup/$i
|
||||
mount -t cgroup -o $i $i /sys/fs/cgroup/$i
|
||||
done
|
||||
unset i controllers
|
||||
if [ -z "$container" ]; then
|
||||
if grep -wq cgroup /proc/filesystems ; then
|
||||
if [ -d /sys/fs/cgroup ]; then
|
||||
# See linux-*/Documentation/cgroups/cgroups.txt (section 1.6)
|
||||
# Check if we have some tools to autodetect the available cgroup controllers
|
||||
if [ -x /bin/cut -a -x /bin/tail ]; then
|
||||
# Mount a tmpfs as the cgroup filesystem root
|
||||
mount -t tmpfs -o mode=0755,size=8M cgroup_root /sys/fs/cgroup
|
||||
# Autodetect available controllers and mount them in subfolders
|
||||
controllers="$(/bin/cut -f 1 /proc/cgroups | /bin/tail -n +2)"
|
||||
for i in $controllers; do
|
||||
mkdir /sys/fs/cgroup/$i
|
||||
mount -t cgroup -o $i $i /sys/fs/cgroup/$i
|
||||
done
|
||||
unset i controllers
|
||||
else
|
||||
# We can't use autodetection so fall back mounting them all together
|
||||
mount -t cgroup cgroup /sys/fs/cgroup
|
||||
fi
|
||||
else
|
||||
# We can't use autodetection so fall back mounting them all together
|
||||
mount -t cgroup cgroup /sys/fs/cgroup
|
||||
mkdir -p /dev/cgroup
|
||||
mount -t cgroup cgroup /dev/cgroup
|
||||
fi
|
||||
else
|
||||
mkdir -p /dev/cgroup
|
||||
mount -t cgroup cgroup /dev/cgroup
|
||||
fi
|
||||
fi
|
||||
|
||||
|
@ -76,21 +85,23 @@ fi
|
|||
# /etc/lvm/backup/ (LVM2). This is created by /sbin/vgscan, so to
|
||||
# use LVM you must run /sbin/vgscan yourself the first time (and
|
||||
# create some VGs and LVs).
|
||||
# Create LVM lock/run directories:
|
||||
mkdir -p -m 0700 /run/lvm /run/lock /run/lock/lvm
|
||||
if [ -r /etc/lvmtab -o -d /etc/lvm/backup ]; then
|
||||
echo "Initializing LVM (Logical Volume Manager):"
|
||||
# Check for device-mapper support.
|
||||
if ! grep -wq device-mapper /proc/devices ; then
|
||||
# Try to load a device-mapper kernel module:
|
||||
/sbin/modprobe -q dm-mod
|
||||
fi
|
||||
# Scan for new volume groups:
|
||||
/sbin/vgscan --mknodes --ignorelockingfailure 2> /dev/null
|
||||
if [ $? = 0 ]; then
|
||||
# Make volume groups available to the kernel.
|
||||
# This should also make logical volumes available.
|
||||
/sbin/vgchange -ay --ignorelockingfailure
|
||||
if [ -z "$container" ]; then
|
||||
# Create LVM lock/run directories:
|
||||
mkdir -p -m 0700 /run/lvm /run/lock /run/lock/lvm
|
||||
if [ -r /etc/lvmtab -o -d /etc/lvm/backup ]; then
|
||||
echo "Initializing LVM (Logical Volume Manager):"
|
||||
# Check for device-mapper support.
|
||||
if ! grep -wq device-mapper /proc/devices ; then
|
||||
# Try to load a device-mapper kernel module:
|
||||
/sbin/modprobe -q dm-mod
|
||||
fi
|
||||
# Scan for new volume groups:
|
||||
/sbin/vgscan --mknodes --ignorelockingfailure 2> /dev/null
|
||||
if [ $? = 0 ]; then
|
||||
# Make volume groups available to the kernel.
|
||||
# This should also make logical volumes available.
|
||||
/sbin/vgchange -ay --ignorelockingfailure
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
|
@ -124,7 +135,7 @@ fi
|
|||
# be formatted as a new encrypted volume with a random key on boot, and used as
|
||||
# swap.
|
||||
#
|
||||
if [ -f /etc/crypttab -a -x /sbin/cryptsetup ]; then
|
||||
if [ -f /etc/crypttab -a -x /sbin/cryptsetup -a -z "$container" ]; then
|
||||
# First, check for device-mapper support.
|
||||
if ! grep -wq device-mapper /proc/devices ; then
|
||||
# If device-mapper exists as a module, try to load it.
|
||||
|
@ -172,25 +183,29 @@ if [ -f /etc/crypttab -a -x /sbin/cryptsetup ]; then
|
|||
fi
|
||||
|
||||
# Enable swapping:
|
||||
/sbin/swapon -a 2> /dev/null
|
||||
if [ -z "$container" ]; then
|
||||
/sbin/swapon -a 2> /dev/null
|
||||
fi
|
||||
|
||||
# Set the tick and frequency for the system clock.
|
||||
# Default values are: TICK=10000 and FREQ=0
|
||||
TICK=10000
|
||||
FREQ=0
|
||||
# If there's a /etc/default/adjtimex config file, source it to override
|
||||
# the default TICK and FREQ:
|
||||
if [ -r /etc/default/adjtimex ]; then
|
||||
. /etc/default/adjtimex
|
||||
fi
|
||||
if /sbin/adjtimex --tick $TICK --frequency $FREQ; then
|
||||
echo "Setting the system clock rate: /sbin/adjtimex --tick $TICK --frequency $FREQ"
|
||||
else
|
||||
echo "Failed to set system clock with adjtimex, possibly invalid parameters? (TICK=$TICK FREQ=$FREQ)"
|
||||
if [ -z "$container" ]; then
|
||||
TICK=10000
|
||||
FREQ=0
|
||||
# If there's a /etc/default/adjtimex config file, source it to override
|
||||
# the default TICK and FREQ:
|
||||
if [ -r /etc/default/adjtimex ]; then
|
||||
. /etc/default/adjtimex
|
||||
fi
|
||||
if /sbin/adjtimex --tick $TICK --frequency $FREQ; then
|
||||
echo "Setting the system clock rate: /sbin/adjtimex --tick $TICK --frequency $FREQ"
|
||||
else
|
||||
echo "Failed to set system clock with adjtimex, possibly invalid parameters? (TICK=$TICK FREQ=$FREQ)"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Set the system time from the hardware clock using hwclock --hctosys.
|
||||
if [ -x /sbin/hwclock ]; then
|
||||
if [ -x /sbin/hwclock -a -z "$container" ]; then
|
||||
# Check for a broken motherboard RTC clock (where ioports for rtc are
|
||||
# unknown) to prevent hwclock causing a hang:
|
||||
if ! grep -q " : rtc" /proc/ioports ; then
|
||||
|
@ -214,106 +229,113 @@ if [ -x /sbin/hwclock ]; then
|
|||
fi
|
||||
|
||||
# Test to see if the root partition is read-only, like it ought to be.
|
||||
READWRITE=no
|
||||
if touch /fsrwtestfile 2>/dev/null; then
|
||||
rm -f /fsrwtestfile
|
||||
READWRITE=yes
|
||||
else
|
||||
echo "Testing root filesystem status: read-only filesystem"
|
||||
if [ -z "$container" ]; then
|
||||
READWRITE=no
|
||||
if touch /fsrwtestfile 2>/dev/null; then
|
||||
rm -f /fsrwtestfile
|
||||
READWRITE=yes
|
||||
else
|
||||
echo "Testing root filesystem status: read-only filesystem"
|
||||
fi
|
||||
fi
|
||||
|
||||
# See if a forced filesystem check was requested at shutdown:
|
||||
if [ -r /etc/forcefsck ]; then
|
||||
if [ -r /etc/forcefsck -a -z "$container" ]; then
|
||||
FORCEFSCK="-f"
|
||||
fi
|
||||
|
||||
# If we're using F2FS for the root filesystem, don't check it as it doesn't
|
||||
# allow checking a read-only filesystem:
|
||||
if grep -q ' / f2fs ' /proc/mounts ; then
|
||||
echo "Remounting root device with read-write enabled."
|
||||
/sbin/mount -w -v -n -o remount /
|
||||
elif [ ! $READWRITE = yes ]; then
|
||||
# Check the root filesystem:
|
||||
RETVAL=0
|
||||
if [ ! -r /etc/fastboot ]; then
|
||||
echo "Checking root filesystem:"
|
||||
/sbin/fsck $FORCEFSCK -C -a /
|
||||
RETVAL=$?
|
||||
fi
|
||||
# An error code of 2 or higher will require a reboot.
|
||||
if [ $RETVAL -ge 2 ]; then
|
||||
# An error code equal to or greater than 4 means that some errors
|
||||
# could not be corrected. This requires manual attention, so we
|
||||
# offer a chance to try to fix the problem in single-user mode:
|
||||
if [ $RETVAL -ge 4 ]; then
|
||||
echo
|
||||
echo "***********************************************************"
|
||||
echo "*** An error occurred during the root filesystem check. ***"
|
||||
echo "*** You will now be given a chance to log into the ***"
|
||||
echo "*** system in single-user mode to fix the problem. ***"
|
||||
echo "*** ***"
|
||||
echo "*** If you are using the ext2 filesystem, running ***"
|
||||
echo "*** 'e2fsck -v -y <partition>' might help. ***"
|
||||
echo "***********************************************************"
|
||||
echo
|
||||
echo "Once you exit the single-user shell, the system will reboot."
|
||||
echo
|
||||
PS1="(Repair filesystem) \#"; export PS1
|
||||
sulogin
|
||||
else # With an error code of 2 or 3, reboot the machine automatically:
|
||||
echo
|
||||
echo "***********************************"
|
||||
echo "*** The filesystem was changed. ***"
|
||||
echo "*** The system will now reboot. ***"
|
||||
echo "***********************************"
|
||||
echo
|
||||
# Check the root filesystem:
|
||||
if [ -z "$container" ]; then
|
||||
# If we're using F2FS for the root filesystem, don't check it as it doesn't
|
||||
# allow checking a read-only filesystem:
|
||||
if grep -q ' / f2fs ' /proc/mounts ; then
|
||||
echo "Remounting root device with read-write enabled."
|
||||
/sbin/mount -w -v -n -o remount /
|
||||
elif [ ! $READWRITE = yes ]; then
|
||||
# Check the root filesystem:
|
||||
RETVAL=0
|
||||
if [ ! -r /etc/fastboot ]; then
|
||||
echo "Checking root filesystem:"
|
||||
/sbin/fsck $FORCEFSCK -C -a /
|
||||
RETVAL=$?
|
||||
fi
|
||||
echo "Unmounting file systems."
|
||||
/sbin/umount -a -r
|
||||
/sbin/mount -n -o remount,ro /
|
||||
echo "Rebooting system."
|
||||
reboot -f
|
||||
fi
|
||||
# Remount the root filesystem in read-write mode
|
||||
echo "Remounting root device with read-write enabled."
|
||||
/sbin/mount -w -v -n -o remount /
|
||||
if [ $? -gt 0 ] ; then
|
||||
echo "FATAL: Attempt to remount root device as read-write failed! This is going to"
|
||||
echo "cause serious problems."
|
||||
fi
|
||||
else
|
||||
echo "Testing root filesystem status: read-write filesystem"
|
||||
echo
|
||||
echo "ERROR: Root partition has already been mounted read-write. Cannot check!"
|
||||
echo
|
||||
echo "For filesystem checking to work properly, your system must initially mount"
|
||||
echo "the root partition as read only. If you're booting with LILO, add a line:"
|
||||
echo
|
||||
echo " read-only"
|
||||
echo
|
||||
echo "to the Linux section in your /etc/lilo.conf and type 'lilo' to reinstall it."
|
||||
fi # Done checking root filesystem
|
||||
# An error code of 2 or higher will require a reboot.
|
||||
if [ $RETVAL -ge 2 ]; then
|
||||
# An error code equal to or greater than 4 means that some errors
|
||||
# could not be corrected. This requires manual attention, so we
|
||||
# offer a chance to try to fix the problem in single-user mode:
|
||||
if [ $RETVAL -ge 4 ]; then
|
||||
echo
|
||||
echo "***********************************************************"
|
||||
echo "*** An error occurred during the root filesystem check. ***"
|
||||
echo "*** You will now be given a chance to log into the ***"
|
||||
echo "*** system in single-user mode to fix the problem. ***"
|
||||
echo "*** ***"
|
||||
echo "*** If you are using the ext2 filesystem, running ***"
|
||||
echo "*** 'e2fsck -v -y <partition>' might help. ***"
|
||||
echo "***********************************************************"
|
||||
echo
|
||||
echo "Once you exit the single-user shell, the system will reboot."
|
||||
echo
|
||||
PS1="(Repair filesystem) \#"; export PS1
|
||||
sulogin
|
||||
else # With an error code of 2 or 3, reboot the machine automatically:
|
||||
echo
|
||||
echo "***********************************"
|
||||
echo "*** The filesystem was changed. ***"
|
||||
echo "*** The system will now reboot. ***"
|
||||
echo "***********************************"
|
||||
echo
|
||||
fi
|
||||
echo "Unmounting file systems."
|
||||
/sbin/umount -a -r
|
||||
/sbin/mount -n -o remount,ro /
|
||||
echo "Rebooting system."
|
||||
reboot -f
|
||||
fi
|
||||
# Remount the root filesystem in read-write mode
|
||||
echo "Remounting root device with read-write enabled."
|
||||
/sbin/mount -w -v -n -o remount /
|
||||
if [ $? -gt 0 ] ; then
|
||||
echo "FATAL: Attempt to remount root device as read-write failed! This is going to"
|
||||
echo "cause serious problems."
|
||||
fi
|
||||
else
|
||||
echo "Testing root filesystem status: read-write filesystem"
|
||||
echo
|
||||
echo "ERROR: Root partition has already been mounted read-write. Cannot check!"
|
||||
echo
|
||||
echo "For filesystem checking to work properly, your system must initially mount"
|
||||
echo "the root partition as read only. If you're booting with LILO, add a line:"
|
||||
echo
|
||||
echo " read-only"
|
||||
echo
|
||||
echo "to the Linux section in your /etc/lilo.conf and type 'lilo' to reinstall it."
|
||||
fi # Done checking root filesystem
|
||||
fi
|
||||
|
||||
# If /etc/mtab is a symlink (probably to /proc/mounts) then we don't want to mess with it.
|
||||
if [ ! -L /etc/mtab -o ! -r /etc/mtab ]; then
|
||||
# /etc/mtab is a file (or doesn't exist), so we'll handle it the old way:
|
||||
# Any /etc/mtab that exists here is old, so we start with a new one:
|
||||
/bin/rm -f /etc/mtab{,~,.tmp} && /bin/touch /etc/mtab
|
||||
# Add /, /proc, /sys, and /dev/shm mounts to /etc/mtab:
|
||||
/sbin/mount -f -w /
|
||||
if [ -d /proc/sys ]; then
|
||||
/sbin/mount -f -t proc proc /proc
|
||||
fi
|
||||
if [ -d /sys/bus ]; then
|
||||
/sbin/mount -f -t sysfs sysfs /sys
|
||||
fi
|
||||
if grep -q '^[^ ]\+ /dev/shm ' /proc/mounts 2> /dev/null ; then
|
||||
/sbin/mount -f -t tmpfs tmpfs /dev/shm
|
||||
if [ -z "$container" ]; then
|
||||
# Add /, /proc, /sys, and /dev/shm mounts to /etc/mtab:
|
||||
/sbin/mount -f -w /
|
||||
if [ -d /proc/sys ]; then
|
||||
/sbin/mount -f -t proc proc /proc
|
||||
fi
|
||||
if [ -d /sys/bus ]; then
|
||||
/sbin/mount -f -t sysfs sysfs /sys
|
||||
fi
|
||||
if grep -q '^[^ ]\+ /dev/shm ' /proc/mounts 2> /dev/null ; then
|
||||
/sbin/mount -f -t tmpfs tmpfs /dev/shm
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Configure ISA Plug-and-Play devices:
|
||||
if [ -r /etc/isapnp.conf ]; then
|
||||
if [ -r /etc/isapnp.conf -a -z "$container" ]; then
|
||||
if [ -x /sbin/isapnp ]; then
|
||||
/sbin/isapnp /etc/isapnp.conf
|
||||
fi
|
||||
|
@ -321,31 +343,33 @@ fi
|
|||
|
||||
# Run the kernel module script. This updates the module dependencies and
|
||||
# also supports manually loading kernel modules through rc.modules.local.
|
||||
if [ -x /etc/rc.d/rc.modules ]; then
|
||||
if [ -x /etc/rc.d/rc.modules -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.modules
|
||||
fi
|
||||
|
||||
# Configure kernel parameters:
|
||||
if [ -x /sbin/sysctl -a -r /etc/sysctl.conf ]; then
|
||||
if [ -x /sbin/sysctl -a -r /etc/sysctl.conf -a -z "$container" ]; then
|
||||
echo "Configuring kernel parameters: /sbin/sysctl -e --system"
|
||||
/sbin/sysctl -e --system
|
||||
elif [ -x /sbin/sysctl ]; then
|
||||
elif [ -x /sbin/sysctl -a -z "$container" ]; then
|
||||
echo "Configuring kernel parameters: /sbin/sysctl -e --system"
|
||||
# Don't say "Applying /etc/sysctl.conf" or complain if the file doesn't exist
|
||||
/sbin/sysctl -e --system 2> /dev/null | grep -v "Applying /etc/sysctl.conf"
|
||||
fi
|
||||
|
||||
# Check all the non-root filesystems:
|
||||
if [ ! -r /etc/fastboot ]; then
|
||||
if [ ! -r /etc/fastboot -a -z "$container" ]; then
|
||||
echo "Checking non-root filesystems:"
|
||||
/sbin/fsck $FORCEFSCK -C -R -A -a
|
||||
fi
|
||||
|
||||
# Mount usbfs only if it is found in /etc/fstab:
|
||||
if grep -wq usbfs /proc/filesystems; then
|
||||
if ! grep -wq usbfs /proc/mounts ; then
|
||||
if grep -wq usbfs /etc/fstab; then
|
||||
/sbin/mount -v /proc/bus/usb
|
||||
if [ -z "$container" ]; then
|
||||
if grep -wq usbfs /proc/filesystems; then
|
||||
if ! grep -wq usbfs /proc/mounts ; then
|
||||
if grep -wq usbfs /etc/fstab; then
|
||||
/sbin/mount -v /proc/bus/usb
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
@ -355,14 +379,16 @@ fi
|
|||
# because those have already been mounted. Also check that
|
||||
# devpts is not already mounted before attempting to mount
|
||||
# it. With a 2.6.x or newer kernel udev mounts devpts.
|
||||
echo "Mounting non-root local filesystems:"
|
||||
if /bin/grep -wq devpts /proc/mounts ; then
|
||||
# This pipe after the mount command is just to convert the new
|
||||
# mount verbose output back to the old format that contained
|
||||
# more useful information:
|
||||
/sbin/mount -a -v -t nonfs,nosmbfs,nocifs,noproc,nosysfs,nodevpts | grep successfully | cut -f 1 -d : | tr -d ' ' | while read dev ; do mount | grep " ${dev} " ; done
|
||||
else
|
||||
/sbin/mount -a -v -t nonfs,nosmbfs,nocifs,noproc,nosysfs | grep successfully | cut -f 1 -d : | tr -d ' ' | while read dev ; do mount | grep " ${dev} " ; done
|
||||
if [ -z "$container" ]; then
|
||||
echo "Mounting non-root local filesystems:"
|
||||
if /bin/grep -wq devpts /proc/mounts ; then
|
||||
# This pipe after the mount command is just to convert the new
|
||||
# mount verbose output back to the old format that contained
|
||||
# more useful information:
|
||||
/sbin/mount -a -v -t nonfs,nosmbfs,nocifs,noproc,nosysfs,nodevpts | grep successfully | cut -f 1 -d : | tr -d ' ' | while read dev ; do mount | grep " ${dev} " ; done
|
||||
else
|
||||
/sbin/mount -a -v -t nonfs,nosmbfs,nocifs,noproc,nosysfs | grep successfully | cut -f 1 -d : | tr -d ' ' | while read dev ; do mount | grep " ${dev} " ; done
|
||||
fi
|
||||
fi
|
||||
|
||||
# Make sure that /var/run is a symbolic link pointing to /run:
|
||||
|
@ -373,7 +399,9 @@ fi
|
|||
# Enable swapping again. This is needed in case a swapfile is used,
|
||||
# as it can't be enabled until the filesystem it resides on has been
|
||||
# mounted read-write.
|
||||
/sbin/swapon -a 2> /dev/null
|
||||
if [ -z "$container" ]; then
|
||||
/sbin/swapon -a 2> /dev/null
|
||||
fi
|
||||
|
||||
# Start libcgroup services:
|
||||
if [ -x /etc/rc.d/rc.cgconfig -a -x /etc/rc.d/rc.cgred -a -d /sys/fs/cgroup ]; then
|
||||
|
@ -430,19 +458,21 @@ fi
|
|||
# CAREFUL! This can make some systems hang if the rc.serial script isn't
|
||||
# set up correctly. If this happens, you may have to edit the file from a
|
||||
# boot disk, and/or set it as non-executable:
|
||||
if [ -x /etc/rc.d/rc.serial ]; then
|
||||
if [ -x /etc/rc.d/rc.serial -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.serial start
|
||||
fi
|
||||
|
||||
# Carry an entropy pool between reboots to improve randomness.
|
||||
if [ -f /etc/random-seed ]; then
|
||||
echo "Using /etc/random-seed to initialize /dev/urandom."
|
||||
cat /etc/random-seed > /dev/urandom
|
||||
if [ -z "$container" ]; then
|
||||
if [ -f /etc/random-seed ]; then
|
||||
echo "Using /etc/random-seed to initialize /dev/urandom."
|
||||
cat /etc/random-seed > /dev/urandom
|
||||
fi
|
||||
# Use the pool size from /proc, or 4096 bits:
|
||||
if [ -r /proc/sys/kernel/random/poolsize ]; then
|
||||
dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(expr $(cat /proc/sys/kernel/random/poolsize) / 8) 2> /dev/null
|
||||
else
|
||||
dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null
|
||||
fi
|
||||
chmod 600 /etc/random-seed
|
||||
fi
|
||||
# Use the pool size from /proc, or 4096 bits:
|
||||
if [ -r /proc/sys/kernel/random/poolsize ]; then
|
||||
dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(expr $(cat /proc/sys/kernel/random/poolsize) / 8) 2> /dev/null
|
||||
else
|
||||
dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null
|
||||
fi
|
||||
chmod 600 /etc/random-seed
|
||||
|
|
|
@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
|
|||
PKGNAM=sysvinit-scripts
|
||||
VERSION=${VERSION:-15.0}
|
||||
ARCH=noarch
|
||||
BUILD=${BUILD:-5}
|
||||
BUILD=${BUILD:-6}
|
||||
|
||||
# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
|
||||
# the name of the created package would be, and then exit. This information
|
||||
|
|
|
@ -28,7 +28,7 @@ cd $(dirname $0) ; CWD=$(pwd)
|
|||
|
||||
PKGNAM=udisks
|
||||
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
|
||||
BUILD=${BUILD:-9}
|
||||
BUILD=${BUILD:-10}
|
||||
|
||||
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
|
||||
|
||||
|
|
|
@ -131,16 +131,6 @@ none /dev/shm tmpfs defaults 0 0
|
|||
none /run tmpfs defaults,mode=0755 0 0
|
||||
EOF
|
||||
|
||||
# Back up the existing init scripts and install the lxc versions:
|
||||
( cd $rootfs/etc/rc.d
|
||||
cp -a /usr/share/lxc/scripts/slackware/* .
|
||||
chmod 755 rc.*.lxc
|
||||
for file in rc.*.lxc ; do
|
||||
cp -a $(basename $file .lxc) $(basename $file .lxc).orig
|
||||
cp -a $file $(basename $file .lxc)
|
||||
done
|
||||
)
|
||||
|
||||
# restart rc.inet1 to have routing for the loop device
|
||||
echo "/etc/rc.d/rc.inet1 restart" >> $rootfs/etc/rc.d/rc.local
|
||||
|
||||
|
|
|
@ -125,12 +125,6 @@ rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
|
|||
cat $CWD/lxc-slackware.in > $PKG/usr/share/lxc/templates/lxc-slackware
|
||||
chmod 755 $PKG/usr/share/lxc/templates/lxc-slackware
|
||||
|
||||
# Add the modified Slackware startup scripts:
|
||||
mkdir -p $PKG/usr/share/lxc/scripts/slackware
|
||||
cp -a $CWD/scripts/*.lxc $PKG/usr/share/lxc/scripts/slackware
|
||||
chown root:root $PKG/usr/share/lxc/scripts/slackware/*
|
||||
chmod 644 $PKG/usr/share/lxc/scripts/slackware/*
|
||||
|
||||
# Make the default configuration directories and an empty rootfs folder:
|
||||
mkdir -p $PKG/var/lib/lxc $PKG/etc/lxc $PKG/var/lib/rootfs-lxc $PKG/var/lib/misc
|
||||
|
||||
|
|
1
source/ap/lxc/lxc.url
Normal file
1
source/ap/lxc/lxc.url
Normal file
|
@ -0,0 +1 @@
|
|||
https://linuxcontainers.org/lxc/downloads/
|
|
@ -1,11 +0,0 @@
|
|||
These are modified versions of some sysvinit-scripts and network-scripts for
|
||||
Slackware for use in a container (although they should also work for a regular
|
||||
non-container system as well).
|
||||
|
||||
Versions ending in .lxc are the scripts to be used in a container.
|
||||
Versions ending in .orig are the scripts from the sysvinit-scripts and
|
||||
network-scripts packages that the .lxc scripts are based on.
|
||||
|
||||
Any changes made to the original scripts in sysvinit-scripts or network-scripts
|
||||
*may* need to be ported to these versions.
|
||||
|
|
@ -1,329 +0,0 @@
|
|||
#! /bin/sh
|
||||
#
|
||||
# rc.6 This file is executed by init when it goes into runlevel
|
||||
# 0 (halt) or runlevel 6 (reboot). It kills all processes,
|
||||
# unmounts file systems and then either halts or reboots.
|
||||
#
|
||||
# Version: @(#)/etc/rc.d/rc.6 2.47 Sat Jan 13 13:37:26 PST 2001
|
||||
#
|
||||
# Author: Miquel van Smoorenburg <miquels@drinkel.nl.mugnet.org>
|
||||
# Modified by: Patrick J. Volkerding, <volkerdi@slackware.com>
|
||||
#
|
||||
|
||||
# Set the path.
|
||||
PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin
|
||||
|
||||
# Set $container variable since this is a modified version of rc.6 with
|
||||
# changes for running in an lxc container. A check to see if this variable
|
||||
# is set will be used to skip parts of the script that we don't want to run
|
||||
# in a container. Thanks to Matteo Bernardini <ponce@slackbuilds.org> and
|
||||
# Chris Willing for the initial work making this script lxc compatible.
|
||||
container="lxc"
|
||||
|
||||
# If there are SystemV init scripts for this runlevel, run them.
|
||||
if [ -x /etc/rc.d/rc.sysvinit ]; then
|
||||
/etc/rc.d/rc.sysvinit
|
||||
fi
|
||||
|
||||
# Set linefeed mode to avoid staircase effect.
|
||||
/bin/stty onlcr
|
||||
|
||||
echo "Running shutdown script $0:"
|
||||
|
||||
# Find out how we were called.
|
||||
case "$0" in
|
||||
*0)
|
||||
shutdown_command="halt"
|
||||
;;
|
||||
*6)
|
||||
shutdown_command=reboot
|
||||
;;
|
||||
*)
|
||||
echo "$0: call me as \"rc.0\" or \"rc.6\" please!"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# Restart init. This prevents init from hanging on to file handles for removed
|
||||
# glibc shared libraries in the case that those were upgraded or reinstalled.
|
||||
/sbin/telinit u
|
||||
|
||||
# Save the system time to the hardware clock using hwclock --systohc.
|
||||
# This will also create or update the timestamps in /etc/adjtime.
|
||||
if [ -x /sbin/hwclock -a -z "$container" ]; then
|
||||
# Check for a broken motherboard RTC clock (where ioports for rtc are
|
||||
# unknown) to prevent hwclock causing a hang:
|
||||
if ! grep -q " : rtc" /proc/ioports ; then
|
||||
CLOCK_OPT="--directisa"
|
||||
fi
|
||||
if [ /etc/adjtime -nt /etc/hardwareclock ]; then
|
||||
if grep -q "^LOCAL" /etc/adjtime ; then
|
||||
echo "Saving system time to the hardware clock (localtime)."
|
||||
else
|
||||
echo "Saving system time to the hardware clock (UTC)."
|
||||
fi
|
||||
/sbin/hwclock $CLOCK_OPT --systohc
|
||||
elif grep -q "^UTC" /etc/hardwareclock 2> /dev/null ; then
|
||||
echo "Saving system time to the hardware clock (UTC)."
|
||||
if [ ! -r /etc/adjtime ]; then
|
||||
echo "Creating system time correction file /etc/adjtime."
|
||||
fi
|
||||
/sbin/hwclock $CLOCK_OPT --utc --systohc
|
||||
else
|
||||
echo "Saving system time to the hardware clock (localtime)."
|
||||
if [ ! -r /etc/adjtime ]; then
|
||||
echo "Creating system time correction file /etc/adjtime."
|
||||
fi
|
||||
/sbin/hwclock $CLOCK_OPT --localtime --systohc
|
||||
fi
|
||||
fi
|
||||
|
||||
# Run any local shutdown scripts:
|
||||
if [ -x /etc/rc.d/rc.local_shutdown ]; then
|
||||
/etc/rc.d/rc.local_shutdown stop
|
||||
fi
|
||||
|
||||
# Stop the Apache web server:
|
||||
if [ -x /etc/rc.d/rc.httpd ]; then
|
||||
/etc/rc.d/rc.httpd stop
|
||||
fi
|
||||
|
||||
# Stop the MySQL database:
|
||||
if [ -x /etc/rc.d/rc.mysqld -a -r /var/run/mysql/mysql.pid ]; then
|
||||
/etc/rc.d/rc.mysqld stop
|
||||
fi
|
||||
|
||||
# Stop the Samba server:
|
||||
if [ -x /etc/rc.d/rc.samba ]; then
|
||||
/etc/rc.d/rc.samba stop
|
||||
fi
|
||||
|
||||
# Shut down the NFS server:
|
||||
if [ -x /etc/rc.d/rc.nfsd ]; then
|
||||
/etc/rc.d/rc.nfsd stop
|
||||
fi
|
||||
|
||||
# Shut down the SSH server:
|
||||
if [ -x /etc/rc.d/rc.sshd ]; then
|
||||
/etc/rc.d/rc.sshd stop
|
||||
fi
|
||||
|
||||
# Shut down the SASL authentication daemon:
|
||||
if [ -x /etc/rc.d/rc.saslauthd ]; then
|
||||
/etc/rc.d/rc.saslauthd stop
|
||||
fi
|
||||
|
||||
# Shut down OpenLDAP:
|
||||
if [ -x /etc/rc.d/rc.openldap ]; then
|
||||
/etc/rc.d/rc.openldap stop
|
||||
fi
|
||||
|
||||
# Stop the haveged entropy daemon:
|
||||
if [ -x /etc/rc.d/rc.haveged -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.haveged stop
|
||||
fi
|
||||
|
||||
# Stop D-Bus:
|
||||
if [ -x /etc/rc.d/rc.messagebus ]; then
|
||||
/etc/rc.d/rc.messagebus stop
|
||||
fi
|
||||
|
||||
# Kill any processes (typically gam) that would otherwise prevent
|
||||
# unmounting NFS volumes:
|
||||
unset FUSER_DELAY
|
||||
for dir in $(/bin/mount | grep 'type nfs ' | sed -e 's|.* on ||g' | cut -d ' ' -f 1) ; do
|
||||
echo "Killing processes holding NFS mount $dir open..."
|
||||
# Background this to prevent fuser from also blocking shutdown:
|
||||
/usr/bin/fuser -k -M -m "$dir" &
|
||||
FUSER_DELAY=5
|
||||
done
|
||||
# If fuser was run, let it have some delay:
|
||||
if [ ! -z "$FUSER_DELAY" ]; then
|
||||
sleep $FUSER_DELAY
|
||||
fi
|
||||
|
||||
# Unmount any NFS, SMB, or CIFS filesystems:
|
||||
echo "Unmounting remote filesystems:"
|
||||
/bin/umount -v -a -l -f -r -t nfs,smbfs,cifs | tr -d ' ' | grep successfully | sed "s/:successfullyunmounted/ has been successfully unmounted./g"
|
||||
|
||||
# Try to shut down pppd:
|
||||
PS="$(ps ax)"
|
||||
if echo "$PS" | /bin/grep -q -w pppd ; then
|
||||
if [ -x /usr/sbin/ppp-off ]; then
|
||||
/usr/sbin/ppp-off
|
||||
fi
|
||||
fi
|
||||
|
||||
# Shut down YP services:
|
||||
if [ -x /etc/rc.d/rc.yp ]; then
|
||||
if grep -wq stop /etc/rc.d/rc.yp ; then
|
||||
/etc/rc.d/rc.yp stop
|
||||
fi
|
||||
fi
|
||||
|
||||
# Bring down the networking system, but first make sure that this
|
||||
# isn't a diskless client with the / partition mounted via NFS:
|
||||
if ! /bin/mount | /bin/grep -q 'on / type nfs' ; then
|
||||
if [ -x /etc/rc.d/rc.inet1 ]; then
|
||||
/etc/rc.d/rc.inet1 stop
|
||||
fi
|
||||
fi
|
||||
|
||||
# In case dhcpcd might have been manually started on the command line,
|
||||
# look for the .pid file, and shut dhcpcd down if it's found:
|
||||
if /bin/ls /etc/dhcpc/*.pid 1> /dev/null 2> /dev/null ; then
|
||||
/sbin/dhcpcd -k 1> /dev/null 2> /dev/null
|
||||
# A little time for /etc/resolv.conf and/or other files to
|
||||
# restore themselves.
|
||||
sleep 2
|
||||
fi
|
||||
|
||||
# Shut down PCMCIA devices:
|
||||
if [ -x /etc/rc.d/rc.pcmcia -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.pcmcia stop
|
||||
# The cards might need a little extra time here to deactivate:
|
||||
/bin/sleep 5
|
||||
fi
|
||||
|
||||
# Turn off process accounting:
|
||||
if [ -x /sbin/accton -a -r /var/log/pacct ]; then
|
||||
/sbin/accton off
|
||||
fi
|
||||
|
||||
# Terminate acpid before syslog:
|
||||
if [ -x /etc/rc.d/rc.acpid -a -r /var/run/acpid.pid -a -z "$container" ]; then # quit
|
||||
/etc/rc.d/rc.acpid stop
|
||||
fi
|
||||
|
||||
# Stop udev:
|
||||
if [ -x /etc/rc.d/rc.udev -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.udev force-stop
|
||||
fi
|
||||
|
||||
# Kill all remaining processes.
|
||||
OMITPIDS="$(for p in $(pgrep mdmon); do echo -o $p; done)" # Don't kill mdmon
|
||||
if [ ! "$1" = "fast" ]; then
|
||||
echo "Sending all processes the SIGTERM signal."
|
||||
/sbin/killall5 -15 $OMITPIDS
|
||||
/bin/sleep 5
|
||||
echo "Sending all processes the SIGKILL signal."
|
||||
/sbin/killall5 -9 $OMITPIDS
|
||||
fi
|
||||
|
||||
# Try to turn off quota.
|
||||
if /bin/grep -q quota /etc/fstab ; then
|
||||
if [ -x /sbin/quotaoff -a -z "$container" ]; then
|
||||
echo "Turning off filesystem quotas."
|
||||
/sbin/quotaoff -a
|
||||
fi
|
||||
fi
|
||||
|
||||
# Carry a random seed between reboots.
|
||||
echo "Saving random seed from /dev/urandom in /etc/random-seed."
|
||||
# Use the pool size from /proc, or 4096 bits:
|
||||
if [ -r /proc/sys/kernel/random/poolsize ]; then
|
||||
/bin/dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(expr $(cat /proc/sys/kernel/random/poolsize) / 8) 2> /dev/null
|
||||
else
|
||||
/bin/dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null
|
||||
fi
|
||||
/bin/chmod 600 /etc/random-seed
|
||||
|
||||
# Before unmounting file systems write a reboot or halt record to wtmp.
|
||||
$shutdown_command -w
|
||||
|
||||
# Turn off swap:
|
||||
if [ -z "$container" ]; then
|
||||
echo "Turning off swap."
|
||||
/sbin/swapoff -a
|
||||
/bin/sync
|
||||
fi
|
||||
|
||||
# Stop cgmanager and cgproxy:
|
||||
if [ -x /etc/rc.d/rc.cgmanager -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.cgmanager stop
|
||||
fi
|
||||
|
||||
if [ -z "$container" ]; then
|
||||
echo "Unmounting local file systems:"
|
||||
/bin/umount -v -a -t no,proc,sysfs,devtmpfs,fuse.gvfsd-fuse,tmpfs
|
||||
# JFS needs a sync here or the / partition cannot be remounted read-only.
|
||||
# In spite of this, it seems that a JFS root partition will always be checked
|
||||
# (and found to be clean) at boot:
|
||||
/bin/sync
|
||||
echo "Remounting root filesystem read-only:"
|
||||
/bin/mount -v -n -o remount,ro /
|
||||
fi
|
||||
|
||||
# This never hurts:
|
||||
/bin/sync
|
||||
|
||||
# Close any volumes opened by cryptsetup:
|
||||
if [ -f /etc/crypttab -a -x /sbin/cryptsetup ]; then
|
||||
cat /etc/crypttab | grep -v "^#" | grep -v "^$" | while read line; do
|
||||
# NOTE: we only support LUKS formatted volumes (except for swap)!
|
||||
LUKS=$(echo $line | tr '\t' ' ' | tr -s ' ' | cut -f1 -d' ')
|
||||
DEV=$(echo $line | tr '\t' ' ' | tr -s ' ' | cut -f2 -d' ')
|
||||
OPTS=$(echo $line | tr '\t' ' ' | tr -s ' ' | cut -f4 -d' ')
|
||||
if /sbin/cryptsetup isLuks $DEV 2>/dev/null ; then
|
||||
echo "Locking LUKS crypt volume '${LUKS}':"
|
||||
/sbin/cryptsetup luksClose ${LUKS}
|
||||
elif echo $OPTS | grep -wq swap ; then
|
||||
# If any of the volumes was used as encrypted swap,
|
||||
# then run mkswap on the underlying device -
|
||||
# in case other Linux installations on this computer should use it:
|
||||
echo "Erasing encrypted swap '${LUKS}' and restoring normal swap on ${DEV}:"
|
||||
/sbin/cryptsetup remove ${LUKS}
|
||||
mkswap $DEV
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
# Deactivate LVM volume groups:
|
||||
if [ -z "$container" ]; then
|
||||
if [ -r /etc/lvmtab -o -d /etc/lvm/backup ]; then
|
||||
echo "Deactivating LVM volume groups:"
|
||||
/sbin/vgchange -an
|
||||
fi
|
||||
fi
|
||||
|
||||
# This never hurts again (especially since root-on-LVM always fails
|
||||
# to deactivate the / logical volume... but at least it was
|
||||
# remounted as read-only first)
|
||||
/bin/sync
|
||||
|
||||
# sleep 3 fixes problems with some hard drives that don't
|
||||
# otherwise finish syncing before reboot or poweroff
|
||||
/bin/sleep 3
|
||||
|
||||
# This is to ensure all processes have completed on SMP machines:
|
||||
wait
|
||||
|
||||
if [ -x /sbin/genpowerd -a -z "$container" ]; then
|
||||
# See if this is a powerfail situation:
|
||||
if /bin/egrep -q "FAIL|SCRAM" /etc/upsstatus 2> /dev/null ; then
|
||||
# Signal UPS to shut off the inverter:
|
||||
/sbin/genpowerd -k
|
||||
if [ ! $? = 0 ]; then
|
||||
echo
|
||||
echo "There was an error signaling the UPS."
|
||||
echo "Perhaps you need to edit /etc/genpowerd.conf to configure"
|
||||
echo "the serial line and UPS type."
|
||||
# Wasting 15 seconds of precious power:
|
||||
/bin/sleep 15
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$container" = "lxc" ]; then
|
||||
# confirm successful shutdown of the container
|
||||
echo "LXC container stopped."
|
||||
fi
|
||||
|
||||
# Now halt (poweroff with APM or ACPI enabled kernels) or reboot.
|
||||
if [ "$shutdown_command" = "reboot" ]; then
|
||||
echo "Rebooting."
|
||||
/sbin/reboot
|
||||
else
|
||||
/sbin/poweroff
|
||||
fi
|
||||
|
|
@ -1,319 +0,0 @@
|
|||
#! /bin/sh
|
||||
#
|
||||
# rc.6 This file is executed by init when it goes into runlevel
|
||||
# 0 (halt) or runlevel 6 (reboot). It kills all processes,
|
||||
# unmounts file systems and then either halts or reboots.
|
||||
#
|
||||
# Version: @(#)/etc/rc.d/rc.6 2.47 Sat Jan 13 13:37:26 PST 2001
|
||||
#
|
||||
# Author: Miquel van Smoorenburg <miquels@drinkel.nl.mugnet.org>
|
||||
# Modified by: Patrick J. Volkerding, <volkerdi@slackware.com>
|
||||
#
|
||||
|
||||
# Set the path.
|
||||
PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin
|
||||
|
||||
# If there are SystemV init scripts for this runlevel, run them.
|
||||
if [ -x /etc/rc.d/rc.sysvinit ]; then
|
||||
/etc/rc.d/rc.sysvinit
|
||||
fi
|
||||
|
||||
# Set linefeed mode to avoid staircase effect.
|
||||
/bin/stty onlcr
|
||||
|
||||
echo "Running shutdown script $0:"
|
||||
|
||||
# Find out how we were called.
|
||||
case "$0" in
|
||||
*0)
|
||||
shutdown_command="halt"
|
||||
;;
|
||||
*6)
|
||||
shutdown_command=reboot
|
||||
;;
|
||||
*)
|
||||
echo "$0: call me as \"rc.0\" or \"rc.6\" please!"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# Restart init. This prevents init from hanging on to file handles for removed
|
||||
# glibc shared libraries in the case that those were upgraded or reinstalled.
|
||||
/sbin/telinit u
|
||||
|
||||
# Save the system time to the hardware clock using hwclock --systohc.
|
||||
# This will also create or update the timestamps in /etc/adjtime.
|
||||
if [ -x /sbin/hwclock ]; then
|
||||
# Check for a broken motherboard RTC clock (where ioports for rtc are
|
||||
# unknown) to prevent hwclock causing a hang:
|
||||
if ! grep -q " : rtc" /proc/ioports ; then
|
||||
CLOCK_OPT="--directisa"
|
||||
fi
|
||||
if [ /etc/adjtime -nt /etc/hardwareclock ]; then
|
||||
if grep -q "^LOCAL" /etc/adjtime ; then
|
||||
echo "Saving system time to the hardware clock (localtime)."
|
||||
else
|
||||
echo "Saving system time to the hardware clock (UTC)."
|
||||
fi
|
||||
/sbin/hwclock $CLOCK_OPT --systohc
|
||||
elif grep -q "^UTC" /etc/hardwareclock 2> /dev/null ; then
|
||||
echo "Saving system time to the hardware clock (UTC)."
|
||||
if [ ! -r /etc/adjtime ]; then
|
||||
echo "Creating system time correction file /etc/adjtime."
|
||||
fi
|
||||
/sbin/hwclock $CLOCK_OPT --utc --systohc
|
||||
else
|
||||
echo "Saving system time to the hardware clock (localtime)."
|
||||
if [ ! -r /etc/adjtime ]; then
|
||||
echo "Creating system time correction file /etc/adjtime."
|
||||
fi
|
||||
/sbin/hwclock $CLOCK_OPT --localtime --systohc
|
||||
fi
|
||||
fi
|
||||
|
||||
# Run any local shutdown scripts:
|
||||
if [ -x /etc/rc.d/rc.local_shutdown ]; then
|
||||
/etc/rc.d/rc.local_shutdown stop
|
||||
fi
|
||||
|
||||
# Stop the Apache web server:
|
||||
if [ -x /etc/rc.d/rc.httpd ]; then
|
||||
/etc/rc.d/rc.httpd stop
|
||||
fi
|
||||
|
||||
# Stop the MySQL database:
|
||||
if [ -x /etc/rc.d/rc.mysqld -a -r /var/run/mysql/mysql.pid ]; then
|
||||
/etc/rc.d/rc.mysqld stop
|
||||
fi
|
||||
|
||||
# Stop the Samba server:
|
||||
if [ -x /etc/rc.d/rc.samba ]; then
|
||||
/etc/rc.d/rc.samba stop
|
||||
fi
|
||||
|
||||
# Shut down the NFS server:
|
||||
if [ -x /etc/rc.d/rc.nfsd ]; then
|
||||
/etc/rc.d/rc.nfsd stop
|
||||
fi
|
||||
|
||||
# Shut down the SSH server:
|
||||
if [ -x /etc/rc.d/rc.sshd ]; then
|
||||
/etc/rc.d/rc.sshd stop
|
||||
fi
|
||||
|
||||
# Shut down the SASL authentication daemon:
|
||||
if [ -x /etc/rc.d/rc.saslauthd ]; then
|
||||
/etc/rc.d/rc.saslauthd stop
|
||||
fi
|
||||
|
||||
# Shut down OpenLDAP:
|
||||
if [ -x /etc/rc.d/rc.openldap ]; then
|
||||
/etc/rc.d/rc.openldap stop
|
||||
fi
|
||||
|
||||
# Stop the haveged entropy daemon:
|
||||
if [ -x /etc/rc.d/rc.haveged ]; then
|
||||
/etc/rc.d/rc.haveged stop
|
||||
fi
|
||||
|
||||
# Stop D-Bus:
|
||||
if [ -x /etc/rc.d/rc.messagebus ]; then
|
||||
/etc/rc.d/rc.messagebus stop
|
||||
fi
|
||||
|
||||
# Kill any processes (typically gam) that would otherwise prevent
|
||||
# unmounting NFS volumes:
|
||||
unset FUSER_DELAY
|
||||
for dir in $(/bin/mount | grep 'type nfs ' | sed -e 's|.* on ||g' | cut -d ' ' -f 1) ; do
|
||||
echo "Killing processes holding NFS mount $dir open..."
|
||||
# Background this to prevent fuser from also blocking shutdown:
|
||||
/usr/bin/fuser -k -M -m "$dir" &
|
||||
FUSER_DELAY=5
|
||||
done
|
||||
# If fuser was run, let it have some delay:
|
||||
if [ ! -z "$FUSER_DELAY" ]; then
|
||||
sleep $FUSER_DELAY
|
||||
fi
|
||||
|
||||
# Unmount any NFS, SMB, or CIFS filesystems:
|
||||
echo "Unmounting remote filesystems:"
|
||||
/bin/umount -v -a -l -f -r -t nfs,smbfs,cifs | tr -d ' ' | grep successfully | sed "s/:successfullyunmounted/ has been successfully unmounted./g"
|
||||
|
||||
# Try to shut down pppd:
|
||||
PS="$(ps ax)"
|
||||
if echo "$PS" | /bin/grep -q -w pppd ; then
|
||||
if [ -x /usr/sbin/ppp-off ]; then
|
||||
/usr/sbin/ppp-off
|
||||
fi
|
||||
fi
|
||||
|
||||
# Shut down YP services:
|
||||
if [ -x /etc/rc.d/rc.yp ]; then
|
||||
if grep -wq stop /etc/rc.d/rc.yp ; then
|
||||
/etc/rc.d/rc.yp stop
|
||||
fi
|
||||
fi
|
||||
|
||||
# Bring down the networking system, but first make sure that this
|
||||
# isn't a diskless client with the / partition mounted via NFS:
|
||||
if ! /bin/mount | /bin/grep -q 'on / type nfs' ; then
|
||||
if [ -x /etc/rc.d/rc.inet1 ]; then
|
||||
/etc/rc.d/rc.inet1 stop
|
||||
fi
|
||||
fi
|
||||
|
||||
# In case dhcpcd might have been manually started on the command line,
|
||||
# look for the .pid file, and shut dhcpcd down if it's found:
|
||||
if /bin/ls /etc/dhcpc/*.pid 1> /dev/null 2> /dev/null ; then
|
||||
/sbin/dhcpcd -k 1> /dev/null 2> /dev/null
|
||||
# A little time for /etc/resolv.conf and/or other files to
|
||||
# restore themselves.
|
||||
sleep 2
|
||||
fi
|
||||
|
||||
# Shut down PCMCIA devices:
|
||||
if [ -x /etc/rc.d/rc.pcmcia ]; then
|
||||
/etc/rc.d/rc.pcmcia stop
|
||||
# The cards might need a little extra time here to deactivate:
|
||||
/bin/sleep 5
|
||||
fi
|
||||
|
||||
# Turn off process accounting:
|
||||
if [ -x /sbin/accton -a -r /var/log/pacct ]; then
|
||||
/sbin/accton off
|
||||
fi
|
||||
|
||||
# Terminate acpid before syslog:
|
||||
if [ -x /etc/rc.d/rc.acpid -a -r /var/run/acpid.pid ]; then # quit
|
||||
/etc/rc.d/rc.acpid stop
|
||||
fi
|
||||
|
||||
# Stop udev:
|
||||
if [ -x /etc/rc.d/rc.udev ]; then
|
||||
/etc/rc.d/rc.udev force-stop
|
||||
fi
|
||||
|
||||
# Kill all remaining processes.
|
||||
OMITPIDS="$(for p in $(pgrep mdmon); do echo -o $p; done)" # Don't kill mdmon
|
||||
if [ ! "$1" = "fast" ]; then
|
||||
echo "Sending all processes the SIGTERM signal."
|
||||
/sbin/killall5 -15 $OMITPIDS
|
||||
/bin/sleep 5
|
||||
echo "Sending all processes the SIGKILL signal."
|
||||
/sbin/killall5 -9 $OMITPIDS
|
||||
fi
|
||||
|
||||
# Try to turn off quota.
|
||||
if /bin/grep -q quota /etc/fstab ; then
|
||||
if [ -x /sbin/quotaoff ]; then
|
||||
echo "Turning off filesystem quotas."
|
||||
/sbin/quotaoff -a
|
||||
fi
|
||||
fi
|
||||
|
||||
# Carry a random seed between reboots.
|
||||
echo "Saving random seed from /dev/urandom in /etc/random-seed."
|
||||
# Use the pool size from /proc, or 4096 bits:
|
||||
if [ -r /proc/sys/kernel/random/poolsize ]; then
|
||||
/bin/dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(expr $(cat /proc/sys/kernel/random/poolsize) / 8) 2> /dev/null
|
||||
else
|
||||
/bin/dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null
|
||||
fi
|
||||
/bin/chmod 600 /etc/random-seed
|
||||
|
||||
# Before unmounting file systems write a reboot or halt record to wtmp.
|
||||
$shutdown_command -w
|
||||
|
||||
# Turn off swap:
|
||||
echo "Turning off swap."
|
||||
/sbin/swapoff -a
|
||||
/bin/sync
|
||||
|
||||
# Stop cgmanager and cgproxy:
|
||||
if [ -x /etc/rc.d/rc.cgmanager ]; then
|
||||
/etc/rc.d/rc.cgmanager stop
|
||||
fi
|
||||
|
||||
# Umount all tmpfs mounts except /dev/shm and under /run:
|
||||
cat /proc/mounts | grep " tmpfs " | grep -v -e " /run " -e " /run/" -e " /dev/shm " | while read mount ; do
|
||||
umount --recursive -v $(echo $mount | cut -f 2 -d ' ') 2> /dev/null
|
||||
done
|
||||
|
||||
# Unmount local file systems:
|
||||
echo "Unmounting local file systems:"
|
||||
/bin/umount -v -a -t no,proc,sysfs,devtmpfs,fuse.gvfsd-fuse,tmpfs
|
||||
|
||||
# JFS needs a sync here or the / partition cannot be remounted read-only.
|
||||
# In spite of this, it seems that a JFS root partition will always be checked
|
||||
# (and found to be clean) at boot:
|
||||
/bin/sync
|
||||
|
||||
echo "Remounting root filesystem read-only:"
|
||||
/bin/mount -v -n -o remount,ro /
|
||||
|
||||
# This never hurts:
|
||||
/bin/sync
|
||||
|
||||
# Close any volumes opened by cryptsetup:
|
||||
if [ -f /etc/crypttab -a -x /sbin/cryptsetup ]; then
|
||||
cat /etc/crypttab | grep -v "^#" | grep -v "^$" | while read line; do
|
||||
# NOTE: we only support LUKS formatted volumes (except for swap)!
|
||||
LUKS=$(echo $line | tr '\t' ' ' | tr -s ' ' | cut -f1 -d' ')
|
||||
DEV=$(echo $line | tr '\t' ' ' | tr -s ' ' | cut -f2 -d' ')
|
||||
OPTS=$(echo $line | tr '\t' ' ' | tr -s ' ' | cut -f4 -d' ')
|
||||
if /sbin/cryptsetup isLuks $DEV 2>/dev/null ; then
|
||||
echo "Locking LUKS crypt volume '${LUKS}':"
|
||||
/sbin/cryptsetup luksClose ${LUKS}
|
||||
elif echo $OPTS | grep -wq swap ; then
|
||||
# If any of the volumes was used as encrypted swap,
|
||||
# then run mkswap on the underlying device -
|
||||
# in case other Linux installations on this computer should use it:
|
||||
echo "Erasing encrypted swap '${LUKS}' and restoring normal swap on ${DEV}:"
|
||||
/sbin/cryptsetup remove ${LUKS}
|
||||
mkswap $DEV
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
# Deactivate LVM volume groups:
|
||||
if [ -r /etc/lvmtab -o -d /etc/lvm/backup ]; then
|
||||
echo "Deactivating LVM volume groups:"
|
||||
/sbin/vgchange -an
|
||||
fi
|
||||
|
||||
# This never hurts again (especially since root-on-LVM always fails
|
||||
# to deactivate the / logical volume... but at least it was
|
||||
# remounted as read-only first)
|
||||
/bin/sync
|
||||
|
||||
# sleep 3 fixes problems with some hard drives that don't
|
||||
# otherwise finish syncing before reboot or poweroff
|
||||
/bin/sleep 3
|
||||
|
||||
# This is to ensure all processes have completed on SMP machines:
|
||||
wait
|
||||
|
||||
if [ -x /sbin/genpowerd ]; then
|
||||
# See if this is a powerfail situation:
|
||||
if /bin/egrep -q "FAIL|SCRAM" /etc/upsstatus 2> /dev/null ; then
|
||||
# Signal UPS to shut off the inverter:
|
||||
/sbin/genpowerd -k
|
||||
if [ ! $? = 0 ]; then
|
||||
echo
|
||||
echo "There was an error signaling the UPS."
|
||||
echo "Perhaps you need to edit /etc/genpowerd.conf to configure"
|
||||
echo "the serial line and UPS type."
|
||||
# Wasting 15 seconds of precious power:
|
||||
/bin/sleep 15
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Now halt (poweroff with APM or ACPI enabled kernels) or reboot.
|
||||
if [ "$shutdown_command" = "reboot" ]; then
|
||||
echo "Rebooting."
|
||||
/sbin/reboot
|
||||
else
|
||||
/sbin/poweroff
|
||||
fi
|
||||
|
|
@ -1,416 +0,0 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# rc.M This file is executed by init(8) when the system is being
|
||||
# initialized for one of the "multi user" run levels (i.e.
|
||||
# levels 1 through 6). It usually does mounting of file
|
||||
# systems et al.
|
||||
#
|
||||
# Version: @(#)/etc/rc.d/rc.M 2.23 Wed Feb 26 19:20:58 PST 2003
|
||||
#
|
||||
# Author: Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org>
|
||||
# Heavily modified by Patrick Volkerding <volkerdi@slackware.com>
|
||||
#
|
||||
|
||||
# Tell the viewers what's going to happen.
|
||||
echo "Going multiuser..."
|
||||
|
||||
# Set $container variable since this is a modified version of rc.M with
|
||||
# changes for running in an lxc container. A check to see if this variable
|
||||
# is set will be used to skip parts of the script that we don't want to run
|
||||
# in a container. Thanks to Matteo Bernardini <ponce@slackbuilds.org> and
|
||||
# Chris Willing for the initial work making this script lxc compatible.
|
||||
container="lxc"
|
||||
|
||||
# Update all the shared library links:
|
||||
if [ -x /sbin/ldconfig ]; then
|
||||
echo "Updating shared library links: /sbin/ldconfig &"
|
||||
/sbin/ldconfig &
|
||||
fi
|
||||
|
||||
# Call the setterm init script to set screen blanking and power management
|
||||
# defaults:
|
||||
if [ -x /etc/rc.d/rc.setterm -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.setterm
|
||||
fi
|
||||
|
||||
# Set the hostname.
|
||||
if [ -z "$container" ]; then
|
||||
if [ -r /etc/HOSTNAME ]; then
|
||||
/bin/hostname $(cat /etc/HOSTNAME)
|
||||
else
|
||||
# fall back on this old default:
|
||||
echo "darkstar.example.net" > /etc/HOSTNAME
|
||||
/bin/hostname $(cat /etc/HOSTNAME)
|
||||
fi
|
||||
fi
|
||||
|
||||
# Set the permissions on /var/log/dmesg according to whether the kernel
|
||||
# permits non-root users to access kernel dmesg information:
|
||||
if [ -r /proc/sys/kernel/dmesg_restrict ]; then
|
||||
if [ $(cat /proc/sys/kernel/dmesg_restrict) = 1 ]; then
|
||||
touch /var/log/dmesg
|
||||
chmod 640 /var/log/dmesg
|
||||
fi
|
||||
else
|
||||
touch /var/log/dmesg
|
||||
chmod 644 /var/log/dmesg
|
||||
fi
|
||||
# Save the contents of 'dmesg':
|
||||
/bin/dmesg -s 65536 > /var/log/dmesg
|
||||
|
||||
# Initialize PCMCIA devices:
|
||||
#
|
||||
# NOTE: This used to be started near the top of rc.S so that PCMCIA devices
|
||||
# could be fsck'ed along with the other drives. This had some unfortunate
|
||||
# side effects, however, since root isn't yet read-write, and /var might not
|
||||
# even be mounted the .pid files can't be correctly written in /var/run and
|
||||
# the pcmcia system can't be correctly shut down. If you want some PCMCIA
|
||||
# partition to be mounted at boot (or when the card is inserted) then add
|
||||
# the appropriate lines to /etc/pcmcia/scsi.opts.
|
||||
#
|
||||
# Note that the stuff in /etc/pcmcia/ is only for 2.4.x kernels using
|
||||
# 16-bit PCMCIA cards (not 32-bit Cardbus cards!). For example, with a
|
||||
# wireless card you might need to set options in /etc/pcmcia OR in
|
||||
# /etc/rc.d/rc.wireless.conf, or even in /etc/rc.d/rc.inet1.conf (with
|
||||
# extra options if needed for the encryption key, ESSID, etc.)
|
||||
#
|
||||
# Hopefully this situation will be unified in the future, but for now
|
||||
# that's how it is...
|
||||
#
|
||||
if [ -x /etc/rc.d/rc.pcmcia -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.pcmcia start
|
||||
# The cards might need a little extra time here to initialize.
|
||||
sleep 5
|
||||
fi
|
||||
|
||||
# Start the system logger.
|
||||
if [ -x /etc/rc.d/rc.syslog -a -x /usr/sbin/syslogd -a -d /var/log ]; then
|
||||
/etc/rc.d/rc.syslog start
|
||||
fi
|
||||
|
||||
# Update the X font indexes:
|
||||
if [ -x /usr/bin/fc-cache ]; then
|
||||
echo "Updating X font indexes: /usr/bin/fc-cache -f &"
|
||||
/usr/bin/fc-cache -f &
|
||||
fi
|
||||
|
||||
# Run rc.udev again. This will start udev if it is not already running
|
||||
# (for example, upon return from runlevel 1), otherwise it will trigger it
|
||||
# to look for device changes and to generate persistent rules if needed.
|
||||
if grep -wq sysfs /proc/mounts && grep -q devtmpfs /proc/filesystems ; then
|
||||
if ! grep -wq nohotplug /proc/cmdline ; then
|
||||
if [ -x /etc/rc.d/rc.udev -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.udev start
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Start the haveged entropy daemon:
|
||||
if [ -x /etc/rc.d/rc.haveged -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.haveged start
|
||||
fi
|
||||
|
||||
# Start the rngd entropy daemon:
|
||||
if [ -x /etc/rc.d/rc.rngd -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.rngd start
|
||||
fi
|
||||
|
||||
# Initialize the networking hardware.
|
||||
if [ -x /etc/rc.d/rc.inet1 ]; then
|
||||
/etc/rc.d/rc.inet1
|
||||
fi
|
||||
|
||||
# Start D-Bus:
|
||||
if [ -x /etc/rc.d/rc.messagebus ]; then
|
||||
/etc/rc.d/rc.messagebus start
|
||||
fi
|
||||
|
||||
# Start console-kit-daemon:
|
||||
if [ -x /etc/rc.d/rc.consolekit ]; then
|
||||
/etc/rc.d/rc.consolekit start
|
||||
fi
|
||||
|
||||
# Start Bluetooth:
|
||||
if [ -x /etc/rc.d/rc.bluetooth ]; then
|
||||
/etc/rc.d/rc.bluetooth start
|
||||
fi
|
||||
|
||||
# Start wicd or networkmanager:
|
||||
if [ -x /etc/rc.d/rc.wicd -a -x /usr/sbin/wicd ]; then
|
||||
/etc/rc.d/rc.wicd start
|
||||
elif [ -x /etc/rc.d/rc.networkmanager ]; then
|
||||
/etc/rc.d/rc.networkmanager start
|
||||
fi
|
||||
|
||||
# Start networking daemons:
|
||||
if [ -x /etc/rc.d/rc.inet2 ]; then
|
||||
/etc/rc.d/rc.inet2
|
||||
fi
|
||||
|
||||
# Mount any additional filesystem types that haven't already been mounted:
|
||||
mount -a -v 2> /dev/null | grep -v -e "already mounted" -e "ignored" | cut -f 1 -d : | tr -d ' ' | while read dev ; do mount | grep "${dev} " ; done
|
||||
|
||||
# Start the Control Script for automounter:
|
||||
if [ -x /etc/rc.d/rc.autofs ]; then
|
||||
/etc/rc.d/rc.autofs start
|
||||
fi
|
||||
|
||||
# Start the Network Time Protocol daemon:
|
||||
if [ -x /etc/rc.d/rc.ntpd ]; then
|
||||
/etc/rc.d/rc.ntpd start
|
||||
fi
|
||||
|
||||
# Remove stale locks and junk files (must be done after mount -a!)
|
||||
/bin/rm -f /var/lock/* /var/spool/uucp/LCK..* /tmp/.X*lock /tmp/.X11-unix/* 2> /dev/null
|
||||
|
||||
# Remove stale hunt sockets so the game can start.
|
||||
if [ -r /tmp/hunt -o -r /tmp/hunt.stats ]; then
|
||||
echo "Removing your stale hunt sockets from /tmp."
|
||||
/bin/rm -f /tmp/hunt*
|
||||
fi
|
||||
|
||||
# Ensure basic filesystem permissions sanity.
|
||||
chmod 755 / 2> /dev/null
|
||||
chmod 1777 /tmp /var/tmp
|
||||
|
||||
# Start ACPI daemon.
|
||||
if [ -x /etc/rc.d/rc.acpid -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.acpid start
|
||||
fi
|
||||
|
||||
# Enable CPU frequency scaling:
|
||||
if [ -x /etc/rc.d/rc.cpufreq -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.cpufreq start
|
||||
fi
|
||||
|
||||
# Update any existing icon cache files:
|
||||
if find /usr/share/icons -maxdepth 2 2> /dev/null | grep -q icon-theme.cache ; then
|
||||
for theme_dir in /usr/share/icons/* ; do
|
||||
if [ -r ${theme_dir}/icon-theme.cache ]; then
|
||||
echo "Updating icon-theme.cache in ${theme_dir}..."
|
||||
/usr/bin/gtk-update-icon-cache -t -f ${theme_dir} 1> /dev/null 2> /dev/null &
|
||||
fi
|
||||
done
|
||||
# This would be a large file and probably shouldn't be there.
|
||||
if [ -r /usr/share/icons/icon-theme.cache ]; then
|
||||
echo "Deleting icon-theme.cache in /usr/share/icons..."
|
||||
#/usr/bin/gtk-update-icon-cache -t -f /usr/share/icons 1> /dev/null 2> /dev/null &
|
||||
rm -f /usr/share/icons/icon-theme.cache
|
||||
fi
|
||||
fi
|
||||
|
||||
# Update mime database:
|
||||
if [ -x /usr/bin/update-mime-database -a -d /usr/share/mime ]; then
|
||||
echo "Updating MIME database: /usr/bin/update-mime-database /usr/share/mime &"
|
||||
/usr/bin/update-mime-database /usr/share/mime 1> /dev/null 2> /dev/null &
|
||||
fi
|
||||
|
||||
# Start HAL:
|
||||
if [ -x /etc/rc.d/rc.hald ]; then
|
||||
/etc/rc.d/rc.hald start
|
||||
fi
|
||||
|
||||
# Start system-wide PulseAudio daemon (not recommended, nor required in
|
||||
# order to use PulseAudio -- see the script for details):
|
||||
if [ -x /etc/rc.d/rc.pulseaudio ]; then
|
||||
/etc/rc.d/rc.pulseaudio start
|
||||
fi
|
||||
|
||||
# These GTK+/pango files need to be kept up to date for
|
||||
# proper input method, pixbuf loaders, and font support.
|
||||
if [ -x /usr/bin/update-gtk-immodules ]; then
|
||||
echo "Updating gtk.immodules:"
|
||||
echo " /usr/bin/update-gtk-immodules &"
|
||||
/usr/bin/update-gtk-immodules > /dev/null 2>&1 &
|
||||
fi
|
||||
if [ -x /usr/bin/update-gdk-pixbuf-loaders ]; then
|
||||
echo "Updating gdk-pixbuf.loaders:"
|
||||
echo " /usr/bin/update-gdk-pixbuf-loaders &"
|
||||
HOME=/root /usr/bin/update-gdk-pixbuf-loaders > /dev/null 2>&1 &
|
||||
fi
|
||||
if [ -x /usr/bin/update-pango-querymodules ]; then
|
||||
echo "Updating pango.modules:"
|
||||
echo " /usr/bin/update-pango-querymodules &"
|
||||
/usr/bin/update-pango-querymodules > /dev/null 2>&1 &
|
||||
fi
|
||||
if [ -x /usr/bin/glib-compile-schemas ]; then
|
||||
echo "Compiling GSettings XML schema files:"
|
||||
echo " /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas &"
|
||||
/usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas >/dev/null 2>&1 &
|
||||
fi
|
||||
|
||||
# Start dnsmasq, a simple DHCP/DNS server:
|
||||
if [ -x /etc/rc.d/rc.dnsmasq ]; then
|
||||
/etc/rc.d/rc.dnsmasq start
|
||||
fi
|
||||
|
||||
# Start snmpd:
|
||||
if [ -x /etc/rc.d/rc.snmpd ]; then
|
||||
/etc/rc.d/rc.snmpd start
|
||||
fi
|
||||
|
||||
# Start the print spooling system. This will usually be LPRng (lpd) or CUPS.
|
||||
if [ -x /etc/rc.d/rc.cups ]; then
|
||||
# Start CUPS:
|
||||
/etc/rc.d/rc.cups start
|
||||
elif [ -x /etc/rc.d/rc.lprng ]; then
|
||||
# Start LPRng (lpd):
|
||||
/etc/rc.d/rc.lprng start
|
||||
fi
|
||||
|
||||
# Start netatalk. (a file/print server for Macs using Appletalk)
|
||||
if [ -x /etc/rc.d/rc.atalk ]; then
|
||||
/etc/rc.d/rc.atalk start
|
||||
fi
|
||||
|
||||
# Start smartd, which monitors the status of S.M.A.R.T. compatible
|
||||
# hard drives and reports any problems:
|
||||
if [ -x /etc/rc.d/rc.smartd -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.smartd start
|
||||
fi
|
||||
|
||||
# Monitor the UPS with genpowerd.
|
||||
# To use this, uncomment this section and edit your settings in
|
||||
# /etc/genpowerd.conf (serial device, UPS type, etc). For more information,
|
||||
# see "man genpowerd" or the extensive documentation in the
|
||||
# /usr/doc/genpower-*/ directory.
|
||||
# You'll also need to configure a similar block in /etc/rc.d/rc.6 if you want
|
||||
# support for stopping the UPS's inverter after the machine halts.
|
||||
#if [ -x /sbin/genpowerd ]; then
|
||||
# echo "Starting genpowerd daemon..."
|
||||
# /sbin/genpowerd
|
||||
#fi
|
||||
|
||||
# Turn on process accounting. To enable process accounting, make sure the
|
||||
# option for BSD process accounting is enabled in your kernel, and then
|
||||
# create the file /var/log/pacct (touch /var/log/pacct). By default, process
|
||||
# accounting is not enabled (since /var/log/pacct does not exist). This is
|
||||
# because the log file can get VERY large.
|
||||
if [ -x /sbin/accton -a -r /var/log/pacct ]; then
|
||||
chmod 640 /var/log/pacct
|
||||
/sbin/accton /var/log/pacct
|
||||
fi
|
||||
|
||||
# Start crond (Dillon's crond):
|
||||
if [ -x /etc/rc.d/rc.crond ]; then
|
||||
/etc/rc.d/rc.crond start
|
||||
fi
|
||||
|
||||
# Start atd (manages jobs scheduled with 'at'):
|
||||
if [ -x /etc/rc.d/rc.atd ]; then
|
||||
/etc/rc.d/rc.atd start
|
||||
fi
|
||||
|
||||
# Slackware-Mini-Quota-HOWTO:
|
||||
# To really activate quotas, you'll need to add 'usrquota' and/or 'grpquota' to
|
||||
# the appropriate partitions as listed in /etc/fstab. Here's an example:
|
||||
#
|
||||
# /dev/hda2 /home ext3 defaults,usrquota 1 1
|
||||
#
|
||||
# You'll then need to setup initial quota files at the top of the partitions
|
||||
# to support quota, like this:
|
||||
# touch /home/aquota.user /home/aquota.group
|
||||
# chmod 600 /home/aquota.user /home/aquota.group
|
||||
#
|
||||
# Then, reboot to activate the system.
|
||||
# To edit user quotas, use 'edquota'. See 'man edquota'. Also, the
|
||||
# official Quota Mini-HOWTO has lots of useful information. That can be found
|
||||
# here: /usr/doc/Linux-HOWTOs/Quota
|
||||
|
||||
# Check quotas and then turn quota system on:
|
||||
if grep -q quota /etc/fstab ; then
|
||||
for quotafs in $(awk '/quota/ {print $2}' /etc/fstab) ; do
|
||||
/bin/rm -f $quotafs/{a,}quota.{group,user}.new
|
||||
done
|
||||
if [ -x /sbin/quotacheck ]; then
|
||||
echo "Checking filesystem quotas: /sbin/quotacheck -avugm"
|
||||
/sbin/quotacheck -avugm
|
||||
fi
|
||||
if [ -x /sbin/quotaon ]; then
|
||||
echo "Activating filesystem quotas: /sbin/quotaon -avug"
|
||||
/sbin/quotaon -avug
|
||||
fi
|
||||
fi
|
||||
|
||||
# Start the SASL authentication server. This provides SASL
|
||||
# authentication services for sendmail/postfix:
|
||||
if [ -x /etc/rc.d/rc.saslauthd ]; then
|
||||
/etc/rc.d/rc.saslauthd start
|
||||
fi
|
||||
|
||||
# Start the mail server. Try the rc.sendmail script first, then try rc.postfix.
|
||||
if [ -x /etc/rc.d/rc.sendmail -a -x usr/sbin/makemap ]; then
|
||||
/etc/rc.d/rc.sendmail start
|
||||
elif [ -x /etc/rc.d/rc.postfix -a -x usr/sbin/postdrop ]; then
|
||||
/etc/rc.d/rc.postfix start
|
||||
fi
|
||||
|
||||
# Load ALSA (sound) defaults:
|
||||
if [ -x /etc/rc.d/rc.alsa -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.alsa
|
||||
fi
|
||||
|
||||
# Load a custom screen font if the user has an rc.font script.
|
||||
if [ -x /etc/rc.d/rc.font ]; then
|
||||
/etc/rc.d/rc.font
|
||||
fi
|
||||
|
||||
# Load a custom keymap if the user has an rc.keymap script.
|
||||
if [ -x /etc/rc.d/rc.keymap ]; then
|
||||
/etc/rc.d/rc.keymap
|
||||
fi
|
||||
|
||||
# Start the MySQL database:
|
||||
if [ -x /etc/rc.d/rc.mysqld ]; then
|
||||
/etc/rc.d/rc.mysqld start
|
||||
fi
|
||||
|
||||
# Start Apache web server:
|
||||
if [ -x /etc/rc.d/rc.httpd ]; then
|
||||
/etc/rc.d/rc.httpd start
|
||||
fi
|
||||
|
||||
# Start OpenLDAP:
|
||||
if [ -x /etc/rc.d/rc.openldap ]; then
|
||||
/etc/rc.d/rc.openldap start
|
||||
fi
|
||||
|
||||
# Start Dovecot:
|
||||
if [ -x /etc/rc.d/rc.dovecot ]; then
|
||||
/etc/rc.d/rc.dovecot start
|
||||
fi
|
||||
|
||||
# Start Samba (a file/print server for Win95/NT machines).
|
||||
# Samba can be started in /etc/inetd.conf instead.
|
||||
if [ -x /etc/rc.d/rc.samba ]; then
|
||||
/etc/rc.d/rc.samba start
|
||||
fi
|
||||
|
||||
# Start the GPM mouse server:
|
||||
if [ -x /etc/rc.d/rc.gpm ]; then
|
||||
/etc/rc.d/rc.gpm start
|
||||
fi
|
||||
|
||||
# Start the Icecream scheduler. This needs to run on only one machine that is
|
||||
# part of the compile cluster:
|
||||
if [ -x /etc/rc.d/rc.icecc-scheduler ]; then
|
||||
/etc/rc.d/rc.icecc-scheduler start
|
||||
fi
|
||||
|
||||
# Start the Icecream daemon. This needs to run on every machine that will be
|
||||
# part of the compile cluster (including the machine running the scheduler):
|
||||
if [ -x /etc/rc.d/rc.iceccd ]; then
|
||||
/etc/rc.d/rc.iceccd start
|
||||
fi
|
||||
|
||||
# If there are SystemV init scripts for this runlevel, run them.
|
||||
if [ -x /etc/rc.d/rc.sysvinit ]; then
|
||||
/etc/rc.d/rc.sysvinit
|
||||
fi
|
||||
|
||||
# Start the local setup procedure.
|
||||
if [ -x /etc/rc.d/rc.local ]; then
|
||||
/etc/rc.d/rc.local
|
||||
fi
|
||||
|
||||
# All done.
|
|
@ -1,407 +0,0 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# rc.M This file is executed by init(8) when the system is being
|
||||
# initialized for one of the "multi user" run levels (i.e.
|
||||
# levels 1 through 6). It usually does mounting of file
|
||||
# systems et al.
|
||||
#
|
||||
# Version: @(#)/etc/rc.d/rc.M 2.23 Wed Feb 26 19:20:58 PST 2003
|
||||
#
|
||||
# Author: Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org>
|
||||
# Heavily modified by Patrick Volkerding <volkerdi@slackware.com>
|
||||
#
|
||||
|
||||
# Tell the viewers what's going to happen.
|
||||
echo "Going multiuser..."
|
||||
|
||||
# Update all the shared library links:
|
||||
if [ -x /sbin/ldconfig ]; then
|
||||
echo "Updating shared library links: /sbin/ldconfig &"
|
||||
/sbin/ldconfig &
|
||||
fi
|
||||
|
||||
# Call the setterm init script to set screen blanking and power management
|
||||
# defaults:
|
||||
if [ -x /etc/rc.d/rc.setterm ]; then
|
||||
/etc/rc.d/rc.setterm
|
||||
fi
|
||||
|
||||
# Set the hostname.
|
||||
if [ -r /etc/HOSTNAME ]; then
|
||||
/bin/hostname $(cat /etc/HOSTNAME)
|
||||
else
|
||||
# fall back on this old default:
|
||||
echo "darkstar.example.net" > /etc/HOSTNAME
|
||||
/bin/hostname $(cat /etc/HOSTNAME)
|
||||
fi
|
||||
|
||||
# Set the permissions on /var/log/dmesg according to whether the kernel
|
||||
# permits non-root users to access kernel dmesg information:
|
||||
if [ -r /proc/sys/kernel/dmesg_restrict ]; then
|
||||
if [ $(cat /proc/sys/kernel/dmesg_restrict) = 1 ]; then
|
||||
touch /var/log/dmesg
|
||||
chmod 640 /var/log/dmesg
|
||||
fi
|
||||
else
|
||||
touch /var/log/dmesg
|
||||
chmod 644 /var/log/dmesg
|
||||
fi
|
||||
# Save the contents of 'dmesg':
|
||||
/bin/dmesg -s 65536 > /var/log/dmesg
|
||||
|
||||
# Initialize PCMCIA devices:
|
||||
#
|
||||
# NOTE: This used to be started near the top of rc.S so that PCMCIA devices
|
||||
# could be fsck'ed along with the other drives. This had some unfortunate
|
||||
# side effects, however, since root isn't yet read-write, and /var might not
|
||||
# even be mounted the .pid files can't be correctly written in /var/run and
|
||||
# the pcmcia system can't be correctly shut down. If you want some PCMCIA
|
||||
# partition to be mounted at boot (or when the card is inserted) then add
|
||||
# the appropriate lines to /etc/pcmcia/scsi.opts.
|
||||
#
|
||||
# Note that the stuff in /etc/pcmcia/ is only for 2.4.x kernels using
|
||||
# 16-bit PCMCIA cards (not 32-bit Cardbus cards!). For example, with a
|
||||
# wireless card you might need to set options in /etc/pcmcia OR in
|
||||
# /etc/rc.d/rc.wireless.conf, or even in /etc/rc.d/rc.inet1.conf (with
|
||||
# extra options if needed for the encryption key, ESSID, etc.)
|
||||
#
|
||||
# Hopefully this situation will be unified in the future, but for now
|
||||
# that's how it is...
|
||||
#
|
||||
if [ -x /etc/rc.d/rc.pcmcia ]; then
|
||||
/etc/rc.d/rc.pcmcia start
|
||||
# The cards might need a little extra time here to initialize.
|
||||
sleep 5
|
||||
fi
|
||||
|
||||
# Start the system logger.
|
||||
if [ -x /etc/rc.d/rc.syslog -a -x /usr/sbin/syslogd -a -d /var/log ]; then
|
||||
/etc/rc.d/rc.syslog start
|
||||
fi
|
||||
|
||||
# Update the X font indexes:
|
||||
if [ -x /usr/bin/fc-cache ]; then
|
||||
echo "Updating X font indexes: /usr/bin/fc-cache -f &"
|
||||
/usr/bin/fc-cache -f &
|
||||
fi
|
||||
|
||||
# Run rc.udev again. This will start udev if it is not already running
|
||||
# (for example, upon return from runlevel 1), otherwise it will trigger it
|
||||
# to look for device changes and to generate persistent rules if needed.
|
||||
if grep -wq sysfs /proc/mounts && grep -q devtmpfs /proc/filesystems ; then
|
||||
if ! grep -wq nohotplug /proc/cmdline ; then
|
||||
if [ -x /etc/rc.d/rc.udev ]; then
|
||||
/etc/rc.d/rc.udev start
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Start the haveged entropy daemon:
|
||||
if [ -x /etc/rc.d/rc.haveged ]; then
|
||||
/etc/rc.d/rc.haveged start
|
||||
fi
|
||||
|
||||
# Start the rngd entropy daemon:
|
||||
if [ -x /etc/rc.d/rc.rngd ]; then
|
||||
/etc/rc.d/rc.rngd start
|
||||
fi
|
||||
|
||||
# Initialize the networking hardware.
|
||||
if [ -x /etc/rc.d/rc.inet1 ]; then
|
||||
/etc/rc.d/rc.inet1
|
||||
fi
|
||||
|
||||
# Start D-Bus:
|
||||
if [ -x /etc/rc.d/rc.messagebus ]; then
|
||||
/etc/rc.d/rc.messagebus start
|
||||
fi
|
||||
|
||||
# Start console-kit-daemon:
|
||||
if [ -x /etc/rc.d/rc.consolekit ]; then
|
||||
/etc/rc.d/rc.consolekit start
|
||||
fi
|
||||
|
||||
# Start Bluetooth:
|
||||
if [ -x /etc/rc.d/rc.bluetooth ]; then
|
||||
/etc/rc.d/rc.bluetooth start
|
||||
fi
|
||||
|
||||
# Start wicd or networkmanager:
|
||||
if [ -x /etc/rc.d/rc.wicd -a -x /usr/sbin/wicd ]; then
|
||||
/etc/rc.d/rc.wicd start
|
||||
elif [ -x /etc/rc.d/rc.networkmanager ]; then
|
||||
/etc/rc.d/rc.networkmanager start
|
||||
fi
|
||||
|
||||
# Start networking daemons:
|
||||
if [ -x /etc/rc.d/rc.inet2 ]; then
|
||||
/etc/rc.d/rc.inet2
|
||||
fi
|
||||
|
||||
# Mount any additional filesystem types that haven't already been mounted:
|
||||
mount -a -v 2> /dev/null | grep -v -e "already mounted" -e "ignored" | cut -f 1 -d : | tr -d ' ' | while read dev ; do mount | grep "${dev} " ; done
|
||||
|
||||
# Start the Control Script for automounter:
|
||||
if [ -x /etc/rc.d/rc.autofs ]; then
|
||||
/etc/rc.d/rc.autofs start
|
||||
fi
|
||||
|
||||
# Start the Network Time Protocol daemon:
|
||||
if [ -x /etc/rc.d/rc.ntpd ]; then
|
||||
/etc/rc.d/rc.ntpd start
|
||||
fi
|
||||
|
||||
# Remove stale locks and junk files (must be done after mount -a!)
|
||||
/bin/rm -f /var/lock/* /var/spool/uucp/LCK..* /tmp/.X*lock /tmp/.X11-unix/* 2> /dev/null
|
||||
|
||||
# Remove stale hunt sockets so the game can start.
|
||||
if [ -r /tmp/hunt -o -r /tmp/hunt.stats ]; then
|
||||
echo "Removing your stale hunt sockets from /tmp."
|
||||
/bin/rm -f /tmp/hunt*
|
||||
fi
|
||||
|
||||
# Ensure basic filesystem permissions sanity.
|
||||
chmod 755 / 2> /dev/null
|
||||
chmod 1777 /tmp /var/tmp
|
||||
|
||||
# Start ACPI daemon.
|
||||
if [ -x /etc/rc.d/rc.acpid ]; then
|
||||
/etc/rc.d/rc.acpid start
|
||||
fi
|
||||
|
||||
# Enable CPU frequency scaling:
|
||||
if [ -x /etc/rc.d/rc.cpufreq ]; then
|
||||
/etc/rc.d/rc.cpufreq start
|
||||
fi
|
||||
|
||||
# Update any existing icon cache files:
|
||||
if find /usr/share/icons -maxdepth 2 2> /dev/null | grep -q icon-theme.cache ; then
|
||||
for theme_dir in /usr/share/icons/* ; do
|
||||
if [ -r ${theme_dir}/icon-theme.cache ]; then
|
||||
echo "Updating icon-theme.cache in ${theme_dir}..."
|
||||
/usr/bin/gtk-update-icon-cache -t -f ${theme_dir} 1> /dev/null 2> /dev/null &
|
||||
fi
|
||||
done
|
||||
# This would be a large file and probably shouldn't be there.
|
||||
if [ -r /usr/share/icons/icon-theme.cache ]; then
|
||||
echo "Deleting icon-theme.cache in /usr/share/icons..."
|
||||
#/usr/bin/gtk-update-icon-cache -t -f /usr/share/icons 1> /dev/null 2> /dev/null &
|
||||
rm -f /usr/share/icons/icon-theme.cache
|
||||
fi
|
||||
fi
|
||||
|
||||
# Update mime database:
|
||||
if [ -x /usr/bin/update-mime-database -a -d /usr/share/mime ]; then
|
||||
echo "Updating MIME database: /usr/bin/update-mime-database /usr/share/mime &"
|
||||
/usr/bin/update-mime-database /usr/share/mime 1> /dev/null 2> /dev/null &
|
||||
fi
|
||||
|
||||
# Start HAL:
|
||||
if [ -x /etc/rc.d/rc.hald ]; then
|
||||
/etc/rc.d/rc.hald start
|
||||
fi
|
||||
|
||||
# Start system-wide PulseAudio daemon (not recommended, nor required in
|
||||
# order to use PulseAudio -- see the script for details):
|
||||
if [ -x /etc/rc.d/rc.pulseaudio ]; then
|
||||
/etc/rc.d/rc.pulseaudio start
|
||||
fi
|
||||
|
||||
# These GTK+/pango files need to be kept up to date for
|
||||
# proper input method, pixbuf loaders, and font support.
|
||||
if [ -x /usr/bin/update-gtk-immodules ]; then
|
||||
echo "Updating gtk.immodules:"
|
||||
echo " /usr/bin/update-gtk-immodules &"
|
||||
/usr/bin/update-gtk-immodules > /dev/null 2>&1 &
|
||||
fi
|
||||
if [ -x /usr/bin/update-gdk-pixbuf-loaders ]; then
|
||||
echo "Updating gdk-pixbuf.loaders:"
|
||||
echo " /usr/bin/update-gdk-pixbuf-loaders &"
|
||||
HOME=/root /usr/bin/update-gdk-pixbuf-loaders > /dev/null 2>&1 &
|
||||
fi
|
||||
if [ -x /usr/bin/update-pango-querymodules ]; then
|
||||
echo "Updating pango.modules:"
|
||||
echo " /usr/bin/update-pango-querymodules &"
|
||||
/usr/bin/update-pango-querymodules > /dev/null 2>&1 &
|
||||
fi
|
||||
if [ -x /usr/bin/glib-compile-schemas ]; then
|
||||
echo "Compiling GSettings XML schema files:"
|
||||
echo " /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas &"
|
||||
/usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas >/dev/null 2>&1 &
|
||||
fi
|
||||
|
||||
# Start dnsmasq, a simple DHCP/DNS server:
|
||||
if [ -x /etc/rc.d/rc.dnsmasq ]; then
|
||||
/etc/rc.d/rc.dnsmasq start
|
||||
fi
|
||||
|
||||
# Start snmpd:
|
||||
if [ -x /etc/rc.d/rc.snmpd ]; then
|
||||
/etc/rc.d/rc.snmpd start
|
||||
fi
|
||||
|
||||
# Start the print spooling system. This will usually be LPRng (lpd) or CUPS.
|
||||
if [ -x /etc/rc.d/rc.cups ]; then
|
||||
# Start CUPS:
|
||||
/etc/rc.d/rc.cups start
|
||||
elif [ -x /etc/rc.d/rc.lprng ]; then
|
||||
# Start LPRng (lpd):
|
||||
/etc/rc.d/rc.lprng start
|
||||
fi
|
||||
|
||||
# Start netatalk. (a file/print server for Macs using Appletalk)
|
||||
if [ -x /etc/rc.d/rc.atalk ]; then
|
||||
/etc/rc.d/rc.atalk start
|
||||
fi
|
||||
|
||||
# Start smartd, which monitors the status of S.M.A.R.T. compatible
|
||||
# hard drives and reports any problems:
|
||||
if [ -x /etc/rc.d/rc.smartd ]; then
|
||||
/etc/rc.d/rc.smartd start
|
||||
fi
|
||||
|
||||
# Monitor the UPS with genpowerd.
|
||||
# To use this, uncomment this section and edit your settings in
|
||||
# /etc/genpowerd.conf (serial device, UPS type, etc). For more information,
|
||||
# see "man genpowerd" or the extensive documentation in the
|
||||
# /usr/doc/genpower-*/ directory.
|
||||
# You'll also need to configure a similar block in /etc/rc.d/rc.6 if you want
|
||||
# support for stopping the UPS's inverter after the machine halts.
|
||||
#if [ -x /sbin/genpowerd ]; then
|
||||
# echo "Starting genpowerd daemon..."
|
||||
# /sbin/genpowerd
|
||||
#fi
|
||||
|
||||
# Turn on process accounting. To enable process accounting, make sure the
|
||||
# option for BSD process accounting is enabled in your kernel, and then
|
||||
# create the file /var/log/pacct (touch /var/log/pacct). By default, process
|
||||
# accounting is not enabled (since /var/log/pacct does not exist). This is
|
||||
# because the log file can get VERY large.
|
||||
if [ -x /sbin/accton -a -r /var/log/pacct ]; then
|
||||
chmod 640 /var/log/pacct
|
||||
/sbin/accton /var/log/pacct
|
||||
fi
|
||||
|
||||
# Start crond (Dillon's crond):
|
||||
if [ -x /etc/rc.d/rc.crond ]; then
|
||||
/etc/rc.d/rc.crond start
|
||||
fi
|
||||
|
||||
# Start atd (manages jobs scheduled with 'at'):
|
||||
if [ -x /etc/rc.d/rc.atd ]; then
|
||||
/etc/rc.d/rc.atd start
|
||||
fi
|
||||
|
||||
# Slackware-Mini-Quota-HOWTO:
|
||||
# To really activate quotas, you'll need to add 'usrquota' and/or 'grpquota' to
|
||||
# the appropriate partitions as listed in /etc/fstab. Here's an example:
|
||||
#
|
||||
# /dev/hda2 /home ext3 defaults,usrquota 1 1
|
||||
#
|
||||
# You'll then need to setup initial quota files at the top of the partitions
|
||||
# to support quota, like this:
|
||||
# touch /home/aquota.user /home/aquota.group
|
||||
# chmod 600 /home/aquota.user /home/aquota.group
|
||||
#
|
||||
# Then, reboot to activate the system.
|
||||
# To edit user quotas, use 'edquota'. See 'man edquota'. Also, the
|
||||
# official Quota Mini-HOWTO has lots of useful information. That can be found
|
||||
# here: /usr/doc/Linux-HOWTOs/Quota
|
||||
|
||||
# Check quotas and then turn quota system on:
|
||||
if grep -q quota /etc/fstab ; then
|
||||
for quotafs in $(awk '/quota/ {print $2}' /etc/fstab) ; do
|
||||
/bin/rm -f $quotafs/{a,}quota.{group,user}.new
|
||||
done
|
||||
if [ -x /sbin/quotacheck ]; then
|
||||
echo "Checking filesystem quotas: /sbin/quotacheck -avugm"
|
||||
/sbin/quotacheck -avugm
|
||||
fi
|
||||
if [ -x /sbin/quotaon ]; then
|
||||
echo "Activating filesystem quotas: /sbin/quotaon -avug"
|
||||
/sbin/quotaon -avug
|
||||
fi
|
||||
fi
|
||||
|
||||
# Start the SASL authentication server. This provides SASL
|
||||
# authentication services for sendmail/postfix:
|
||||
if [ -x /etc/rc.d/rc.saslauthd ]; then
|
||||
/etc/rc.d/rc.saslauthd start
|
||||
fi
|
||||
|
||||
# Start the mail server. Try the rc.sendmail script first, then try rc.postfix.
|
||||
if [ -x /etc/rc.d/rc.sendmail -a -x usr/sbin/makemap ]; then
|
||||
/etc/rc.d/rc.sendmail start
|
||||
elif [ -x /etc/rc.d/rc.postfix -a -x usr/sbin/postdrop ]; then
|
||||
/etc/rc.d/rc.postfix start
|
||||
fi
|
||||
|
||||
# Load ALSA (sound) defaults:
|
||||
if [ -x /etc/rc.d/rc.alsa ]; then
|
||||
/etc/rc.d/rc.alsa
|
||||
fi
|
||||
|
||||
# Load a custom screen font if the user has an rc.font script.
|
||||
if [ -x /etc/rc.d/rc.font ]; then
|
||||
/etc/rc.d/rc.font
|
||||
fi
|
||||
|
||||
# Load a custom keymap if the user has an rc.keymap script.
|
||||
if [ -x /etc/rc.d/rc.keymap ]; then
|
||||
/etc/rc.d/rc.keymap
|
||||
fi
|
||||
|
||||
# Start the MySQL database:
|
||||
if [ -x /etc/rc.d/rc.mysqld ]; then
|
||||
/etc/rc.d/rc.mysqld start
|
||||
fi
|
||||
|
||||
# Start Apache web server:
|
||||
if [ -x /etc/rc.d/rc.httpd ]; then
|
||||
/etc/rc.d/rc.httpd start
|
||||
fi
|
||||
|
||||
# Start OpenLDAP:
|
||||
if [ -x /etc/rc.d/rc.openldap ]; then
|
||||
/etc/rc.d/rc.openldap start
|
||||
fi
|
||||
|
||||
# Start Dovecot:
|
||||
if [ -x /etc/rc.d/rc.dovecot ]; then
|
||||
/etc/rc.d/rc.dovecot start
|
||||
fi
|
||||
|
||||
# Start Samba (a file/print server for Win95/NT machines).
|
||||
# Samba can be started in /etc/inetd.conf instead.
|
||||
if [ -x /etc/rc.d/rc.samba ]; then
|
||||
/etc/rc.d/rc.samba start
|
||||
fi
|
||||
|
||||
# Start the GPM mouse server:
|
||||
if [ -x /etc/rc.d/rc.gpm ]; then
|
||||
/etc/rc.d/rc.gpm start
|
||||
fi
|
||||
|
||||
# Start the Icecream scheduler. This needs to run on only one machine that is
|
||||
# part of the compile cluster:
|
||||
if [ -x /etc/rc.d/rc.icecc-scheduler ]; then
|
||||
/etc/rc.d/rc.icecc-scheduler start
|
||||
fi
|
||||
|
||||
# Start the Icecream daemon. This needs to run on every machine that will be
|
||||
# part of the compile cluster (including the machine running the scheduler):
|
||||
if [ -x /etc/rc.d/rc.iceccd ]; then
|
||||
/etc/rc.d/rc.iceccd start
|
||||
fi
|
||||
|
||||
# If there are SystemV init scripts for this runlevel, run them.
|
||||
if [ -x /etc/rc.d/rc.sysvinit ]; then
|
||||
/etc/rc.d/rc.sysvinit
|
||||
fi
|
||||
|
||||
# Start the local setup procedure.
|
||||
if [ -x /etc/rc.d/rc.local ]; then
|
||||
/etc/rc.d/rc.local
|
||||
fi
|
||||
|
||||
# All done.
|
|
@ -1,478 +0,0 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# /etc/rc.d/rc.S: System initialization script.
|
||||
#
|
||||
# Mostly written by: Patrick J. Volkerding, <volkerdi@slackware.com>
|
||||
#
|
||||
|
||||
# Set $container variable since this is a modified version of rc.S with
|
||||
# changes for running in an lxc container. A check to see if this variable
|
||||
# is set will be used to skip parts of the script that we don't want to run
|
||||
# in a container. Thanks to Matteo Bernardini <ponce@slackbuilds.org> and
|
||||
# Chris Willing for the initial work making this script lxc compatible.
|
||||
container="lxc"
|
||||
|
||||
PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin
|
||||
|
||||
# Try to mount /proc:
|
||||
if [ -z "$container" ]; then
|
||||
/sbin/mount -v proc /proc -n -t proc 2> /dev/null
|
||||
fi
|
||||
|
||||
# Mount sysfs next, if the kernel supports it:
|
||||
if [ -d /sys -a -z "$container" ]; then
|
||||
if grep -wq sysfs /proc/filesystems ; then
|
||||
if ! grep -wq sysfs /proc/mounts ; then
|
||||
/sbin/mount -v sysfs /sys -n -t sysfs
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# If /run exists, mount a tmpfs on it (unless the
|
||||
# initrd has already done so):
|
||||
if [ -d /run -a -z "$container" ]; then
|
||||
if ! grep -wq "tmpfs /run tmpfs" /proc/mounts ; then
|
||||
/sbin/mount -v -n -t tmpfs tmpfs /run -o mode=0755,size=32M,nodev,nosuid,noexec
|
||||
fi
|
||||
fi
|
||||
|
||||
# Load the loop device kernel module:
|
||||
if [ -x /etc/rc.d/rc.loop -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.loop start
|
||||
fi
|
||||
|
||||
# Initialize udev to manage /dev entries and hotplugging.
|
||||
# You may turn off udev by making the /etc/rc.d/rc.udev file non-executable
|
||||
# or giving the "nohotplug" option at boot, but realize that if you turn off
|
||||
# udev that you will have to load all the kernel modules that you need
|
||||
# yourself (possibly in /etc/rc.d/rc.modules.local), and make any additional
|
||||
# device nodes that you need in the /dev directory. Even USB and IEEE1394
|
||||
# devices will need to have the modules loaded by hand if udev is not used.
|
||||
# So use it. :-)
|
||||
if grep -wq sysfs /proc/mounts && grep -q devtmpfs /proc/filesystems ; then
|
||||
if ! grep -wq nohotplug /proc/cmdline ; then
|
||||
if [ -x /etc/rc.d/rc.udev -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.udev start
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Mount Control Groups filesystem interface:
|
||||
if [ -z "$container" ]; then
|
||||
if grep -wq cgroup /proc/filesystems ; then
|
||||
if [ -d /sys/fs/cgroup ]; then
|
||||
# See linux-*/Documentation/cgroups/cgroups.txt (section 1.6)
|
||||
# Check if we have some tools to autodetect the available cgroup controllers
|
||||
if [ -x /bin/cut -a -x /bin/tail ]; then
|
||||
# Mount a tmpfs as the cgroup filesystem root
|
||||
mount -t tmpfs -o mode=0755 cgroup_root /sys/fs/cgroup
|
||||
# Autodetect available controllers and mount them in subfolders
|
||||
controllers="$(/bin/cut -f 1 /proc/cgroups | /bin/tail -n +2)"
|
||||
for i in $controllers; do
|
||||
mkdir /sys/fs/cgroup/$i
|
||||
mount -t cgroup -o $i $i /sys/fs/cgroup/$i
|
||||
done
|
||||
unset i controllers
|
||||
else
|
||||
# We can't use autodetection so fall back mounting them all together
|
||||
mount -t cgroup cgroup /sys/fs/cgroup
|
||||
fi
|
||||
else
|
||||
mkdir -p /dev/cgroup
|
||||
mount -t cgroup cgroup /dev/cgroup
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Initialize the Logical Volume Manager.
|
||||
# This won't start unless we find /etc/lvmtab (LVM1) or
|
||||
# /etc/lvm/backup/ (LVM2). This is created by /sbin/vgscan, so to
|
||||
# use LVM you must run /sbin/vgscan yourself the first time (and
|
||||
# create some VGs and LVs).
|
||||
if [ -z "$container" ]; then
|
||||
# Create LVM lock/run directories:
|
||||
mkdir -p -m 0700 /run/lvm /run/lock /run/lock/lvm
|
||||
if [ -r /etc/lvmtab -o -d /etc/lvm/backup ]; then
|
||||
echo "Initializing LVM (Logical Volume Manager):"
|
||||
# Check for device-mapper support.
|
||||
if ! grep -wq device-mapper /proc/devices ; then
|
||||
# Try to load a device-mapper kernel module:
|
||||
/sbin/modprobe -q dm-mod
|
||||
fi
|
||||
# Scan for new volume groups:
|
||||
/sbin/vgscan --mknodes --ignorelockingfailure 2> /dev/null
|
||||
if [ $? = 0 ]; then
|
||||
# Make volume groups available to the kernel.
|
||||
# This should also make logical volumes available.
|
||||
/sbin/vgchange -ay --ignorelockingfailure
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Open any volumes created by cryptsetup.
|
||||
#
|
||||
# Some notes on /etc/crypttab in Slackware:
|
||||
# Only LUKS formatted volumes are supported (except for swap)
|
||||
# crypttab follows the following format:
|
||||
# <luks_name> <device> <password> <options>
|
||||
#
|
||||
# <luks_name>: This is the name of your LUKS volume.
|
||||
# For example: crypt-home
|
||||
#
|
||||
# <device>: This is the device containing your LUKS volume.
|
||||
# For example: /dev/sda2
|
||||
#
|
||||
# <password>: This is either the volume password in plain text, or the name of
|
||||
# a key file. Use 'none' to interactively enter password on boot.
|
||||
#
|
||||
# <options>: Comma-separated list of options. Note that there must be a
|
||||
# password field for any options to be picked up (use a password of 'none' to
|
||||
# get a password prompt at boot). The following options are supported:
|
||||
#
|
||||
# discard -- this will cause --allow-discards to be passed to the cryptsetup
|
||||
# program while opening the LUKS volume.
|
||||
#
|
||||
# ro -- this will cause --readonly to be passed to the cryptsetup program while
|
||||
# opening the LUKS volume.
|
||||
#
|
||||
# swap -- this option cannot be used with other options. The device given will
|
||||
# be formatted as a new encrypted volume with a random key on boot, and used as
|
||||
# swap.
|
||||
#
|
||||
if [ -f /etc/crypttab -a -x /sbin/cryptsetup -a -z "$container" ]; then
|
||||
# First, check for device-mapper support.
|
||||
if ! grep -wq device-mapper /proc/devices ; then
|
||||
# If device-mapper exists as a module, try to load it.
|
||||
# Try to load a device-mapper kernel module:
|
||||
/sbin/modprobe -q dm-mod
|
||||
fi
|
||||
# NOTE: we only support LUKS formatted volumes (except for swap)!
|
||||
cat /etc/crypttab | grep -v "^#" | grep -v "^$" | while read line; do
|
||||
eval LUKSARRAY=( $line )
|
||||
LUKS="${LUKSARRAY[0]}"
|
||||
DEV="${LUKSARRAY[1]}"
|
||||
PASS="${LUKSARRAY[2]}"
|
||||
OPTS="${LUKSARRAY[3]}"
|
||||
LUKSOPTS=""
|
||||
if echo $OPTS | grep -wq ro ; then LUKSOPTS="${LUKSOPTS} --readonly" ; fi
|
||||
if echo $OPTS | grep -wq discard ; then LUKSOPTS="${LUKSOPTS} --allow-discards" ; fi
|
||||
# Skip LUKS volumes that were already unlocked (in the initrd):
|
||||
/sbin/cryptsetup status $LUKS 2>/dev/null | head -n 1 | grep -q "is active" && continue
|
||||
if /sbin/cryptsetup isLuks $DEV 2>/dev/null ; then
|
||||
if [ -z "${LUKSOPTS}" ]; then
|
||||
echo "Unlocking LUKS encrypted volume '${LUKS}' on device '$DEV':"
|
||||
else
|
||||
echo "Unlocking LUKS encrypted volume '${LUKS}' on device '$DEV' with options '${LUKSOPTS}':"
|
||||
fi
|
||||
if [ -n "${PASS}" -a "${PASS}" != "none" ]; then
|
||||
if [ -f "${PASS}" ]; then
|
||||
# A password was given a key-file filename
|
||||
/sbin/cryptsetup ${LUKSOPTS} --key-file=${PASS} luksOpen $DEV $LUKS
|
||||
else
|
||||
# A password was provided in plain text
|
||||
echo "${PASS}" | /sbin/cryptsetup ${LUKSOPTS} luksOpen $DEV $LUKS
|
||||
fi
|
||||
else
|
||||
# No password was given, or a password of 'none' was given
|
||||
/sbin/cryptsetup ${LUKSOPTS} luksOpen $DEV $LUKS </dev/tty0 >/dev/tty0 2>&1
|
||||
fi
|
||||
elif echo $OPTS | grep -wq swap ; then
|
||||
# If any of the volumes is to be used as encrypted swap,
|
||||
# then encrypt it using a random key and run mkswap:
|
||||
echo "Creating encrypted swap volume '${LUKS}' on device '$DEV':"
|
||||
/sbin/cryptsetup --cipher=aes --key-file=/dev/urandom --key-size=256 create $LUKS $DEV
|
||||
mkswap /dev/mapper/$LUKS
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
# Enable swapping:
|
||||
if [ -z "$container" ]; then
|
||||
/sbin/swapon -a 2> /dev/null
|
||||
fi
|
||||
|
||||
# Set the tick and frequency for the system clock.
|
||||
# Default values are: TICK=10000 and FREQ=0
|
||||
if [ -z "$container" ]; then
|
||||
TICK=10000
|
||||
FREQ=0
|
||||
# If there's a /etc/default/adjtimex config file, source it to override
|
||||
# the default TICK and FREQ:
|
||||
if [ -r /etc/default/adjtimex ]; then
|
||||
. /etc/default/adjtimex
|
||||
fi
|
||||
if /sbin/adjtimex --tick $TICK --frequency $FREQ; then
|
||||
echo "Setting the system clock rate: /sbin/adjtimex --tick $TICK --frequency $FREQ"
|
||||
else
|
||||
echo "Failed to set system clock with adjtimex, possibly invalid parameters? (TICK=$TICK FREQ=$FREQ)"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Set the system time from the hardware clock using hwclock --hctosys.
|
||||
if [ -x /sbin/hwclock -a -z "$container" ]; then
|
||||
# Check for a broken motherboard RTC clock (where ioports for rtc are
|
||||
# unknown) to prevent hwclock causing a hang:
|
||||
if ! grep -q " : rtc" /proc/ioports ; then
|
||||
CLOCK_OPT="--directisa"
|
||||
fi
|
||||
if [ /etc/adjtime -nt /etc/hardwareclock ]; then
|
||||
if grep -q "^LOCAL" /etc/adjtime ; then
|
||||
echo -n "Setting system time from the hardware clock (localtime): "
|
||||
else
|
||||
echo -n "Setting system time from the hardware clock (UTC): "
|
||||
fi
|
||||
/sbin/hwclock $CLOCK_OPT --hctosys
|
||||
elif grep -wq "^localtime" /etc/hardwareclock 2> /dev/null ; then
|
||||
echo -n "Setting system time from the hardware clock (localtime): "
|
||||
/sbin/hwclock $CLOCK_OPT --localtime --hctosys
|
||||
else
|
||||
echo -n "Setting system time from the hardware clock (UTC): "
|
||||
/sbin/hwclock $CLOCK_OPT --utc --hctosys
|
||||
fi
|
||||
date
|
||||
fi
|
||||
|
||||
# Test to see if the root partition is read-only, like it ought to be.
|
||||
if [ -z "$container" ]; then
|
||||
READWRITE=no
|
||||
if touch /fsrwtestfile 2>/dev/null; then
|
||||
rm -f /fsrwtestfile
|
||||
READWRITE=yes
|
||||
else
|
||||
echo "Testing root filesystem status: read-only filesystem"
|
||||
fi
|
||||
fi
|
||||
|
||||
# See if a forced filesystem check was requested at shutdown:
|
||||
if [ -r /etc/forcefsck -a -z "$container" ]; then
|
||||
FORCEFSCK="-f"
|
||||
fi
|
||||
|
||||
# Check the root filesystem:
|
||||
if [ -z "$container" ]; then
|
||||
# If we're using F2FS for the root filesystem, don't check it as it doesn't
|
||||
# allow checking a read-only filesystem:
|
||||
if grep -q ' / f2fs ' /proc/mounts ; then
|
||||
echo "Remounting root device with read-write enabled."
|
||||
/sbin/mount -w -v -n -o remount /
|
||||
elif [ ! $READWRITE = yes ]; then
|
||||
RETVAL=0
|
||||
if [ ! -r /etc/fastboot ]; then
|
||||
echo "Checking root filesystem:"
|
||||
/sbin/fsck $FORCEFSCK -C -a /
|
||||
RETVAL=$?
|
||||
fi
|
||||
# An error code of 2 or higher will require a reboot.
|
||||
if [ $RETVAL -ge 2 ]; then
|
||||
# An error code equal to or greater than 4 means that some errors
|
||||
# could not be corrected. This requires manual attention, so we
|
||||
# offer a chance to try to fix the problem in single-user mode:
|
||||
if [ $RETVAL -ge 4 ]; then
|
||||
echo
|
||||
echo "***********************************************************"
|
||||
echo "*** An error occurred during the root filesystem check. ***"
|
||||
echo "*** You will now be given a chance to log into the ***"
|
||||
echo "*** system in single-user mode to fix the problem. ***"
|
||||
echo "*** ***"
|
||||
echo "*** If you are using the ext2 filesystem, running ***"
|
||||
echo "*** 'e2fsck -v -y <partition>' might help. ***"
|
||||
echo "***********************************************************"
|
||||
echo
|
||||
echo "Once you exit the single-user shell, the system will reboot."
|
||||
echo
|
||||
PS1="(Repair filesystem) \#"; export PS1
|
||||
sulogin
|
||||
else # With an error code of 2 or 3, reboot the machine automatically:
|
||||
echo
|
||||
echo "***********************************"
|
||||
echo "*** The filesystem was changed. ***"
|
||||
echo "*** The system will now reboot. ***"
|
||||
echo "***********************************"
|
||||
echo
|
||||
fi
|
||||
echo "Unmounting file systems."
|
||||
/sbin/umount -a -r
|
||||
/sbin/mount -n -o remount,ro /
|
||||
echo "Rebooting system."
|
||||
reboot -f
|
||||
fi
|
||||
# Remount the root filesystem in read-write mode
|
||||
echo "Remounting root device with read-write enabled."
|
||||
/sbin/mount -w -v -n -o remount /
|
||||
if [ $? -gt 0 ] ; then
|
||||
echo "FATAL: Attempt to remount root device as read-write failed! This is going to"
|
||||
echo "cause serious problems."
|
||||
fi
|
||||
else
|
||||
echo "Testing root filesystem status: read-write filesystem"
|
||||
echo
|
||||
echo "ERROR: Root partition has already been mounted read-write. Cannot check!"
|
||||
echo
|
||||
echo "For filesystem checking to work properly, your system must initially mount"
|
||||
echo "the root partition as read only. If you're booting with LILO, add a line:"
|
||||
echo
|
||||
echo " read-only"
|
||||
echo
|
||||
echo "to the Linux section in your /etc/lilo.conf and type 'lilo' to reinstall it."
|
||||
fi # Done checking root filesystem
|
||||
fi
|
||||
|
||||
# If /etc/mtab is a symlink (probably to /proc/mounts) then we don't want to mess with it.
|
||||
if [ ! -L /etc/mtab -o ! -r /etc/mtab ]; then
|
||||
# /etc/mtab is a file (or doesn't exist), so we'll handle it the old way:
|
||||
# Any /etc/mtab that exists here is old, so we start with a new one:
|
||||
/bin/rm -f /etc/mtab{,~,.tmp} && /bin/touch /etc/mtab
|
||||
if [ -z "$container" ]; then
|
||||
# Add /, /proc, /sys, and /dev/shm mounts to /etc/mtab:
|
||||
/sbin/mount -f -w /
|
||||
if [ -d /proc/sys ]; then
|
||||
/sbin/mount -f -t proc proc /proc
|
||||
fi
|
||||
if [ -d /sys/bus ]; then
|
||||
/sbin/mount -f -t sysfs sysfs /sys
|
||||
fi
|
||||
if grep -q '^[^ ]\+ /dev/shm ' /proc/mounts 2> /dev/null ; then
|
||||
/sbin/mount -f -t tmpfs tmpfs /dev/shm
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Configure ISA Plug-and-Play devices:
|
||||
if [ -r /etc/isapnp.conf -a -z "$container" ]; then
|
||||
if [ -x /sbin/isapnp ]; then
|
||||
/sbin/isapnp /etc/isapnp.conf
|
||||
fi
|
||||
fi
|
||||
|
||||
# Run the kernel module script. This updates the module dependencies and
|
||||
# also supports manually loading kernel modules through rc.modules.local.
|
||||
if [ -x /etc/rc.d/rc.modules -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.modules
|
||||
fi
|
||||
|
||||
# Configure kernel parameters:
|
||||
if [ -x /sbin/sysctl -a -r /etc/sysctl.conf -a -z "$container" ]; then
|
||||
echo "Configuring kernel parameters: /sbin/sysctl -e --system"
|
||||
/sbin/sysctl -e --system
|
||||
elif [ -x /sbin/sysctl -a -z "$container" ]; then
|
||||
echo "Configuring kernel parameters: /sbin/sysctl -e --system"
|
||||
# Don't say "Applying /etc/sysctl.conf" or complain if the file doesn't exist
|
||||
/sbin/sysctl -e --system 2> /dev/null | grep -v "Applying /etc/sysctl.conf"
|
||||
fi
|
||||
|
||||
# Check all the non-root filesystems:
|
||||
if [ ! -r /etc/fastboot -a -z "$container" ]; then
|
||||
echo "Checking non-root filesystems:"
|
||||
/sbin/fsck $FORCEFSCK -C -R -A -a
|
||||
fi
|
||||
|
||||
# Mount usbfs only if it is found in /etc/fstab:
|
||||
if [ -z "$container" ]; then
|
||||
if grep -wq usbfs /proc/filesystems; then
|
||||
if ! grep -wq usbfs /proc/mounts ; then
|
||||
if grep -wq usbfs /etc/fstab; then
|
||||
/sbin/mount -v /proc/bus/usb
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Mount non-root file systems in fstab, but not NFS or SMB
|
||||
# because TCP/IP is not yet configured, and not proc or sysfs
|
||||
# because those have already been mounted. Also check that
|
||||
# devpts is not already mounted before attempting to mount
|
||||
# it. With a 2.6.x or newer kernel udev mounts devpts.
|
||||
if [ -z "$container" ]; then
|
||||
echo "Mounting non-root local filesystems:"
|
||||
if /bin/grep -wq devpts /proc/mounts ; then
|
||||
# This pipe after the mount command is just to convert the new
|
||||
# mount verbose output back to the old format that contained
|
||||
# more useful information:
|
||||
/sbin/mount -a -v -t nonfs,nosmbfs,nocifs,noproc,nosysfs,nodevpts | grep successfully | cut -f 1 -d : | tr -d ' ' | while read dev ; do mount | grep " ${dev} " ; done
|
||||
else
|
||||
/sbin/mount -a -v -t nonfs,nosmbfs,nocifs,noproc,nosysfs | grep successfully | cut -f 1 -d : | tr -d ' ' | while read dev ; do mount | grep " ${dev} " ; done
|
||||
fi
|
||||
fi
|
||||
|
||||
# Enable swapping again. This is needed in case a swapfile is used,
|
||||
# as it can't be enabled until the filesystem it resides on has been
|
||||
# mounted read-write.
|
||||
if [ -z "$container" ]; then
|
||||
/sbin/swapon -a 2> /dev/null
|
||||
fi
|
||||
|
||||
# Start cgmanager (or cgproxy in a container):
|
||||
if [ -x /etc/rc.d/rc.cgmanager -a -d /sys/fs/cgroup ]; then
|
||||
/etc/rc.d/rc.cgmanager start
|
||||
fi
|
||||
|
||||
# Start libcgroup services:
|
||||
if [ -x /etc/rc.d/rc.cgconfig -a -x /etc/rc.d/rc.cgred -a -d /sys/fs/cgroup ]; then
|
||||
/etc/rc.d/rc.cgconfig start ; echo " /usr/sbin/cgconfigparser -l /etc/cgconfig.conf"
|
||||
/etc/rc.d/rc.cgred start
|
||||
fi
|
||||
|
||||
# Clean up some temporary files:
|
||||
rm -f /var/run/* /var/run/*/* /var/run/*/*/* /etc/nologin \
|
||||
/etc/dhcpc/*.pid /etc/forcefsck /etc/fastboot \
|
||||
/var/state/saslauthd/saslauthd.pid \
|
||||
/tmp/.Xauth* 1> /dev/null 2> /dev/null
|
||||
if [ -d /var/lib/pkgtools/setup/tmp ]; then
|
||||
( cd /var/lib/pkgtools/setup/tmp && rm -rf * )
|
||||
elif [ -d /var/log/setup/tmp ]; then
|
||||
( cd /var/log/setup/tmp && rm -rf * )
|
||||
fi
|
||||
( cd /tmp && rm -rf kde-[a-zA-Z]* ksocket-[a-zA-Z]* hsperfdata_[a-zA-Z]* plugtmp* )
|
||||
|
||||
# Clear /var/lock/subsys:
|
||||
if [ -d /var/lock/subsys ]; then
|
||||
rm -f /var/lock/subsys/*
|
||||
fi
|
||||
|
||||
# Create /tmp/{.ICE-unix,.X11-unix} if they are not present:
|
||||
if [ ! -e /tmp/.ICE-unix ]; then
|
||||
mkdir -p /tmp/.ICE-unix
|
||||
chmod 1777 /tmp/.ICE-unix
|
||||
fi
|
||||
if [ ! -e /tmp/.X11-unix ]; then
|
||||
mkdir -p /tmp/.X11-unix
|
||||
chmod 1777 /tmp/.X11-unix
|
||||
fi
|
||||
|
||||
# Create a fresh utmp file:
|
||||
touch /var/run/utmp
|
||||
chown root:utmp /var/run/utmp
|
||||
chmod 664 /var/run/utmp
|
||||
|
||||
# Update the current kernel level in the /etc/motd (Message Of The Day) file,
|
||||
# if the first line of that file begins with the word 'Linux'.
|
||||
# You are free to modify the rest of the file as you see fit.
|
||||
if [ -x /bin/sed ]; then
|
||||
/bin/sed -i "{1s/^Linux.*/$(/bin/uname -sr)\./}" /etc/motd
|
||||
fi
|
||||
|
||||
# If there are SystemV init scripts for this runlevel, run them.
|
||||
if [ -x /etc/rc.d/rc.sysvinit ]; then
|
||||
/etc/rc.d/rc.sysvinit
|
||||
fi
|
||||
|
||||
# Run serial port setup script:
|
||||
# CAREFUL! This can make some systems hang if the rc.serial script isn't
|
||||
# set up correctly. If this happens, you may have to edit the file from a
|
||||
# boot disk, and/or set it as non-executable:
|
||||
if [ -x /etc/rc.d/rc.serial -a -z "$container" ]; then
|
||||
/etc/rc.d/rc.serial start
|
||||
fi
|
||||
|
||||
# Carry an entropy pool between reboots to improve randomness.
|
||||
if [ -f /etc/random-seed ]; then
|
||||
echo "Using /etc/random-seed to initialize /dev/urandom."
|
||||
cat /etc/random-seed > /dev/urandom
|
||||
fi
|
||||
# Use the pool size from /proc, or 4096 bits:
|
||||
if [ -r /proc/sys/kernel/random/poolsize ]; then
|
||||
dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(expr $(cat /proc/sys/kernel/random/poolsize) / 8) 2> /dev/null
|
||||
else
|
||||
dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null
|
||||
fi
|
||||
chmod 600 /etc/random-seed
|
|
@ -1,449 +0,0 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# /etc/rc.d/rc.S: System initialization script.
|
||||
#
|
||||
# Mostly written by: Patrick J. Volkerding, <volkerdi@slackware.com>
|
||||
#
|
||||
|
||||
PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin
|
||||
|
||||
# Try to mount /proc:
|
||||
/sbin/mount -v proc /proc -n -t proc 2> /dev/null
|
||||
|
||||
# Mount sysfs next, if the kernel supports it:
|
||||
if [ -d /sys ]; then
|
||||
if grep -wq sysfs /proc/filesystems ; then
|
||||
if ! grep -wq sysfs /proc/mounts ; then
|
||||
/sbin/mount -v sysfs /sys -n -t sysfs
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# If /run exists, mount a tmpfs on it (unless the
|
||||
# initrd has already done so):
|
||||
if [ -d /run ]; then
|
||||
if ! grep -wq "tmpfs /run tmpfs" /proc/mounts ; then
|
||||
/sbin/mount -v -n -t tmpfs tmpfs /run -o mode=0755,size=32M,nodev,nosuid,noexec
|
||||
fi
|
||||
fi
|
||||
|
||||
# Load the loop device kernel module:
|
||||
if [ -x /etc/rc.d/rc.loop ]; then
|
||||
/etc/rc.d/rc.loop start
|
||||
fi
|
||||
|
||||
# Initialize udev to manage /dev entries and hotplugging.
|
||||
# You may turn off udev by making the /etc/rc.d/rc.udev file non-executable
|
||||
# or giving the "nohotplug" option at boot, but realize that if you turn off
|
||||
# udev that you will have to load all the kernel modules that you need
|
||||
# yourself (possibly in /etc/rc.d/rc.modules.local), and make any additional
|
||||
# device nodes that you need in the /dev directory. Even USB and IEEE1394
|
||||
# devices will need to have the modules loaded by hand if udev is not used.
|
||||
# So use it. :-)
|
||||
if grep -wq sysfs /proc/mounts && grep -q devtmpfs /proc/filesystems ; then
|
||||
if ! grep -wq nohotplug /proc/cmdline ; then
|
||||
if [ -x /etc/rc.d/rc.udev ]; then
|
||||
/etc/rc.d/rc.udev start
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Mount Control Groups filesystem interface:
|
||||
if grep -wq cgroup /proc/filesystems ; then
|
||||
if [ -d /sys/fs/cgroup ]; then
|
||||
# See linux-*/Documentation/cgroups/cgroups.txt (section 1.6)
|
||||
# Check if we have some tools to autodetect the available cgroup controllers
|
||||
if [ -x /bin/cut -a -x /bin/tail ]; then
|
||||
# Mount a tmpfs as the cgroup filesystem root
|
||||
mount -t tmpfs -o mode=0755,size=8M cgroup_root /sys/fs/cgroup
|
||||
# Autodetect available controllers and mount them in subfolders
|
||||
controllers="$(/bin/cut -f 1 /proc/cgroups | /bin/tail -n +2)"
|
||||
for i in $controllers; do
|
||||
mkdir /sys/fs/cgroup/$i
|
||||
mount -t cgroup -o $i $i /sys/fs/cgroup/$i
|
||||
done
|
||||
unset i controllers
|
||||
else
|
||||
# We can't use autodetection so fall back mounting them all together
|
||||
mount -t cgroup cgroup /sys/fs/cgroup
|
||||
fi
|
||||
else
|
||||
mkdir -p /dev/cgroup
|
||||
mount -t cgroup cgroup /dev/cgroup
|
||||
fi
|
||||
fi
|
||||
|
||||
# Initialize the Logical Volume Manager.
|
||||
# This won't start unless we find /etc/lvmtab (LVM1) or
|
||||
# /etc/lvm/backup/ (LVM2). This is created by /sbin/vgscan, so to
|
||||
# use LVM you must run /sbin/vgscan yourself the first time (and
|
||||
# create some VGs and LVs).
|
||||
# Create LVM lock/run directories:
|
||||
mkdir -p -m 0700 /run/lvm /run/lock /run/lock/lvm
|
||||
if [ -r /etc/lvmtab -o -d /etc/lvm/backup ]; then
|
||||
echo "Initializing LVM (Logical Volume Manager):"
|
||||
# Check for device-mapper support.
|
||||
if ! grep -wq device-mapper /proc/devices ; then
|
||||
# Try to load a device-mapper kernel module:
|
||||
/sbin/modprobe -q dm-mod
|
||||
fi
|
||||
# Scan for new volume groups:
|
||||
/sbin/vgscan --mknodes --ignorelockingfailure 2> /dev/null
|
||||
if [ $? = 0 ]; then
|
||||
# Make volume groups available to the kernel.
|
||||
# This should also make logical volumes available.
|
||||
/sbin/vgchange -ay --ignorelockingfailure
|
||||
fi
|
||||
fi
|
||||
|
||||
# Open any volumes created by cryptsetup.
|
||||
#
|
||||
# Some notes on /etc/crypttab in Slackware:
|
||||
# Only LUKS formatted volumes are supported (except for swap)
|
||||
# crypttab follows the following format:
|
||||
# <luks_name> <device> <password> <options>
|
||||
#
|
||||
# <luks_name>: This is the name of your LUKS volume.
|
||||
# For example: crypt-home
|
||||
#
|
||||
# <device>: This is the device containing your LUKS volume.
|
||||
# For example: /dev/sda2
|
||||
#
|
||||
# <password>: This is either the volume password in plain text, or the name of
|
||||
# a key file. Use 'none' to interactively enter password on boot.
|
||||
#
|
||||
# <options>: Comma-separated list of options. Note that there must be a
|
||||
# password field for any options to be picked up (use a password of 'none' to
|
||||
# get a password prompt at boot). The following options are supported:
|
||||
#
|
||||
# discard -- this will cause --allow-discards to be passed to the cryptsetup
|
||||
# program while opening the LUKS volume.
|
||||
#
|
||||
# ro -- this will cause --readonly to be passed to the cryptsetup program while
|
||||
# opening the LUKS volume.
|
||||
#
|
||||
# swap -- this option cannot be used with other options. The device given will
|
||||
# be formatted as a new encrypted volume with a random key on boot, and used as
|
||||
# swap.
|
||||
#
|
||||
if [ -f /etc/crypttab -a -x /sbin/cryptsetup ]; then
|
||||
# First, check for device-mapper support.
|
||||
if ! grep -wq device-mapper /proc/devices ; then
|
||||
# If device-mapper exists as a module, try to load it.
|
||||
# Try to load a device-mapper kernel module:
|
||||
/sbin/modprobe -q dm-mod
|
||||
fi
|
||||
# NOTE: we only support LUKS formatted volumes (except for swap)!
|
||||
cat /etc/crypttab | grep -v "^#" | grep -v "^$" | while read line; do
|
||||
eval LUKSARRAY=( $line )
|
||||
LUKS="${LUKSARRAY[0]}"
|
||||
DEV="${LUKSARRAY[1]}"
|
||||
PASS="${LUKSARRAY[2]}"
|
||||
OPTS="${LUKSARRAY[3]}"
|
||||
LUKSOPTS=""
|
||||
if echo $OPTS | grep -wq ro ; then LUKSOPTS="${LUKSOPTS} --readonly" ; fi
|
||||
if echo $OPTS | grep -wq discard ; then LUKSOPTS="${LUKSOPTS} --allow-discards" ; fi
|
||||
# Skip LUKS volumes that were already unlocked (in the initrd):
|
||||
/sbin/cryptsetup status $LUKS 2>/dev/null | head -n 1 | grep -q "is active" && continue
|
||||
if /sbin/cryptsetup isLuks $DEV 2>/dev/null ; then
|
||||
if [ -z "${LUKSOPTS}" ]; then
|
||||
echo "Unlocking LUKS encrypted volume '${LUKS}' on device '$DEV':"
|
||||
else
|
||||
echo "Unlocking LUKS encrypted volume '${LUKS}' on device '$DEV' with options '${LUKSOPTS}':"
|
||||
fi
|
||||
if [ -n "${PASS}" -a "${PASS}" != "none" ]; then
|
||||
if [ -f "${PASS}" ]; then
|
||||
# A password was given a key-file filename
|
||||
/sbin/cryptsetup ${LUKSOPTS} --key-file=${PASS} luksOpen $DEV $LUKS
|
||||
else
|
||||
# A password was provided in plain text
|
||||
echo "${PASS}" | /sbin/cryptsetup ${LUKSOPTS} luksOpen $DEV $LUKS
|
||||
fi
|
||||
else
|
||||
# No password was given, or a password of 'none' was given
|
||||
/sbin/cryptsetup ${LUKSOPTS} luksOpen $DEV $LUKS </dev/tty0 >/dev/tty0 2>&1
|
||||
fi
|
||||
elif echo $OPTS | grep -wq swap ; then
|
||||
# If any of the volumes is to be used as encrypted swap,
|
||||
# then encrypt it using a random key and run mkswap:
|
||||
echo "Creating encrypted swap volume '${LUKS}' on device '$DEV':"
|
||||
/sbin/cryptsetup --cipher=aes --key-file=/dev/urandom --key-size=256 create $LUKS $DEV
|
||||
mkswap /dev/mapper/$LUKS
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
# Enable swapping:
|
||||
/sbin/swapon -a 2> /dev/null
|
||||
|
||||
# Set the tick and frequency for the system clock.
|
||||
# Default values are: TICK=10000 and FREQ=0
|
||||
TICK=10000
|
||||
FREQ=0
|
||||
# If there's a /etc/default/adjtimex config file, source it to override
|
||||
# the default TICK and FREQ:
|
||||
if [ -r /etc/default/adjtimex ]; then
|
||||
. /etc/default/adjtimex
|
||||
fi
|
||||
if /sbin/adjtimex --tick $TICK --frequency $FREQ; then
|
||||
echo "Setting the system clock rate: /sbin/adjtimex --tick $TICK --frequency $FREQ"
|
||||
else
|
||||
echo "Failed to set system clock with adjtimex, possibly invalid parameters? (TICK=$TICK FREQ=$FREQ)"
|
||||
fi
|
||||
|
||||
# Set the system time from the hardware clock using hwclock --hctosys.
|
||||
if [ -x /sbin/hwclock ]; then
|
||||
# Check for a broken motherboard RTC clock (where ioports for rtc are
|
||||
# unknown) to prevent hwclock causing a hang:
|
||||
if ! grep -q " : rtc" /proc/ioports ; then
|
||||
CLOCK_OPT="--directisa"
|
||||
fi
|
||||
if [ /etc/adjtime -nt /etc/hardwareclock ]; then
|
||||
if grep -q "^LOCAL" /etc/adjtime ; then
|
||||
echo -n "Setting system time from the hardware clock (localtime): "
|
||||
else
|
||||
echo -n "Setting system time from the hardware clock (UTC): "
|
||||
fi
|
||||
/sbin/hwclock $CLOCK_OPT --hctosys
|
||||
elif grep -wq "^localtime" /etc/hardwareclock 2> /dev/null ; then
|
||||
echo -n "Setting system time from the hardware clock (localtime): "
|
||||
/sbin/hwclock $CLOCK_OPT --localtime --hctosys
|
||||
else
|
||||
echo -n "Setting system time from the hardware clock (UTC): "
|
||||
/sbin/hwclock $CLOCK_OPT --utc --hctosys
|
||||
fi
|
||||
date
|
||||
fi
|
||||
|
||||
# Test to see if the root partition is read-only, like it ought to be.
|
||||
READWRITE=no
|
||||
if touch /fsrwtestfile 2>/dev/null; then
|
||||
rm -f /fsrwtestfile
|
||||
READWRITE=yes
|
||||
else
|
||||
echo "Testing root filesystem status: read-only filesystem"
|
||||
fi
|
||||
|
||||
# See if a forced filesystem check was requested at shutdown:
|
||||
if [ -r /etc/forcefsck ]; then
|
||||
FORCEFSCK="-f"
|
||||
fi
|
||||
|
||||
# If we're using F2FS for the root filesystem, don't check it as it doesn't
|
||||
# allow checking a read-only filesystem:
|
||||
if grep -q ' / f2fs ' /proc/mounts ; then
|
||||
echo "Remounting root device with read-write enabled."
|
||||
/sbin/mount -w -v -n -o remount /
|
||||
elif [ ! $READWRITE = yes ]; then
|
||||
# Check the root filesystem:
|
||||
RETVAL=0
|
||||
if [ ! -r /etc/fastboot ]; then
|
||||
echo "Checking root filesystem:"
|
||||
/sbin/fsck $FORCEFSCK -C -a /
|
||||
RETVAL=$?
|
||||
fi
|
||||
# An error code of 2 or higher will require a reboot.
|
||||
if [ $RETVAL -ge 2 ]; then
|
||||
# An error code equal to or greater than 4 means that some errors
|
||||
# could not be corrected. This requires manual attention, so we
|
||||
# offer a chance to try to fix the problem in single-user mode:
|
||||
if [ $RETVAL -ge 4 ]; then
|
||||
echo
|
||||
echo "***********************************************************"
|
||||
echo "*** An error occurred during the root filesystem check. ***"
|
||||
echo "*** You will now be given a chance to log into the ***"
|
||||
echo "*** system in single-user mode to fix the problem. ***"
|
||||
echo "*** ***"
|
||||
echo "*** If you are using the ext2 filesystem, running ***"
|
||||
echo "*** 'e2fsck -v -y <partition>' might help. ***"
|
||||
echo "***********************************************************"
|
||||
echo
|
||||
echo "Once you exit the single-user shell, the system will reboot."
|
||||
echo
|
||||
PS1="(Repair filesystem) \#"; export PS1
|
||||
sulogin
|
||||
else # With an error code of 2 or 3, reboot the machine automatically:
|
||||
echo
|
||||
echo "***********************************"
|
||||
echo "*** The filesystem was changed. ***"
|
||||
echo "*** The system will now reboot. ***"
|
||||
echo "***********************************"
|
||||
echo
|
||||
fi
|
||||
echo "Unmounting file systems."
|
||||
/sbin/umount -a -r
|
||||
/sbin/mount -n -o remount,ro /
|
||||
echo "Rebooting system."
|
||||
reboot -f
|
||||
fi
|
||||
# Remount the root filesystem in read-write mode
|
||||
echo "Remounting root device with read-write enabled."
|
||||
/sbin/mount -w -v -n -o remount /
|
||||
if [ $? -gt 0 ] ; then
|
||||
echo "FATAL: Attempt to remount root device as read-write failed! This is going to"
|
||||
echo "cause serious problems."
|
||||
fi
|
||||
else
|
||||
echo "Testing root filesystem status: read-write filesystem"
|
||||
echo
|
||||
echo "ERROR: Root partition has already been mounted read-write. Cannot check!"
|
||||
echo
|
||||
echo "For filesystem checking to work properly, your system must initially mount"
|
||||
echo "the root partition as read only. If you're booting with LILO, add a line:"
|
||||
echo
|
||||
echo " read-only"
|
||||
echo
|
||||
echo "to the Linux section in your /etc/lilo.conf and type 'lilo' to reinstall it."
|
||||
fi # Done checking root filesystem
|
||||
|
||||
# If /etc/mtab is a symlink (probably to /proc/mounts) then we don't want to mess with it.
|
||||
if [ ! -L /etc/mtab -o ! -r /etc/mtab ]; then
|
||||
# /etc/mtab is a file (or doesn't exist), so we'll handle it the old way:
|
||||
# Any /etc/mtab that exists here is old, so we start with a new one:
|
||||
/bin/rm -f /etc/mtab{,~,.tmp} && /bin/touch /etc/mtab
|
||||
# Add /, /proc, /sys, and /dev/shm mounts to /etc/mtab:
|
||||
/sbin/mount -f -w /
|
||||
if [ -d /proc/sys ]; then
|
||||
/sbin/mount -f -t proc proc /proc
|
||||
fi
|
||||
if [ -d /sys/bus ]; then
|
||||
/sbin/mount -f -t sysfs sysfs /sys
|
||||
fi
|
||||
if grep -q '^[^ ]\+ /dev/shm ' /proc/mounts 2> /dev/null ; then
|
||||
/sbin/mount -f -t tmpfs tmpfs /dev/shm
|
||||
fi
|
||||
fi
|
||||
|
||||
# Configure ISA Plug-and-Play devices:
|
||||
if [ -r /etc/isapnp.conf ]; then
|
||||
if [ -x /sbin/isapnp ]; then
|
||||
/sbin/isapnp /etc/isapnp.conf
|
||||
fi
|
||||
fi
|
||||
|
||||
# Run the kernel module script. This updates the module dependencies and
|
||||
# also supports manually loading kernel modules through rc.modules.local.
|
||||
if [ -x /etc/rc.d/rc.modules ]; then
|
||||
/etc/rc.d/rc.modules
|
||||
fi
|
||||
|
||||
# Configure kernel parameters:
|
||||
if [ -x /sbin/sysctl -a -r /etc/sysctl.conf ]; then
|
||||
echo "Configuring kernel parameters: /sbin/sysctl -e --system"
|
||||
/sbin/sysctl -e --system
|
||||
elif [ -x /sbin/sysctl ]; then
|
||||
echo "Configuring kernel parameters: /sbin/sysctl -e --system"
|
||||
# Don't say "Applying /etc/sysctl.conf" or complain if the file doesn't exist
|
||||
/sbin/sysctl -e --system 2> /dev/null | grep -v "Applying /etc/sysctl.conf"
|
||||
fi
|
||||
|
||||
# Check all the non-root filesystems:
|
||||
if [ ! -r /etc/fastboot ]; then
|
||||
echo "Checking non-root filesystems:"
|
||||
/sbin/fsck $FORCEFSCK -C -R -A -a
|
||||
fi
|
||||
|
||||
# Mount usbfs only if it is found in /etc/fstab:
|
||||
if grep -wq usbfs /proc/filesystems; then
|
||||
if ! grep -wq usbfs /proc/mounts ; then
|
||||
if grep -wq usbfs /etc/fstab; then
|
||||
/sbin/mount -v /proc/bus/usb
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Mount non-root file systems in fstab, but not NFS or SMB
|
||||
# because TCP/IP is not yet configured, and not proc or sysfs
|
||||
# because those have already been mounted. Also check that
|
||||
# devpts is not already mounted before attempting to mount
|
||||
# it. With a 2.6.x or newer kernel udev mounts devpts.
|
||||
echo "Mounting non-root local filesystems:"
|
||||
if /bin/grep -wq devpts /proc/mounts ; then
|
||||
# This pipe after the mount command is just to convert the new
|
||||
# mount verbose output back to the old format that contained
|
||||
# more useful information:
|
||||
/sbin/mount -a -v -t nonfs,nosmbfs,nocifs,noproc,nosysfs,nodevpts | grep successfully | cut -f 1 -d : | tr -d ' ' | while read dev ; do mount | grep " ${dev} " ; done
|
||||
else
|
||||
/sbin/mount -a -v -t nonfs,nosmbfs,nocifs,noproc,nosysfs | grep successfully | cut -f 1 -d : | tr -d ' ' | while read dev ; do mount | grep " ${dev} " ; done
|
||||
fi
|
||||
|
||||
# Enable swapping again. This is needed in case a swapfile is used,
|
||||
# as it can't be enabled until the filesystem it resides on has been
|
||||
# mounted read-write.
|
||||
/sbin/swapon -a 2> /dev/null
|
||||
|
||||
# Start cgmanager (or cgproxy in a container):
|
||||
if [ -x /etc/rc.d/rc.cgmanager -a -d /sys/fs/cgroup ]; then
|
||||
/etc/rc.d/rc.cgmanager start
|
||||
fi
|
||||
|
||||
# Start libcgroup services:
|
||||
if [ -x /etc/rc.d/rc.cgconfig -a -x /etc/rc.d/rc.cgred -a -d /sys/fs/cgroup ]; then
|
||||
/etc/rc.d/rc.cgconfig start ; echo " /usr/sbin/cgconfigparser -l /etc/cgconfig.conf"
|
||||
/etc/rc.d/rc.cgred start
|
||||
fi
|
||||
|
||||
# Clean up some temporary files:
|
||||
rm -f /var/run/* /var/run/*/* /var/run/*/*/* /etc/nologin \
|
||||
/etc/dhcpc/*.pid /etc/forcefsck /etc/fastboot \
|
||||
/var/state/saslauthd/saslauthd.pid \
|
||||
/tmp/.Xauth* 1> /dev/null 2> /dev/null
|
||||
if [ -d /var/lib/pkgtools/setup/tmp ]; then
|
||||
( cd /var/lib/pkgtools/setup/tmp && rm -rf * )
|
||||
elif [ -d /var/log/setup/tmp ]; then
|
||||
( cd /var/log/setup/tmp && rm -rf * )
|
||||
fi
|
||||
( cd /tmp && rm -rf kde-[a-zA-Z]* ksocket-[a-zA-Z]* hsperfdata_[a-zA-Z]* plugtmp* )
|
||||
|
||||
# Clear /var/lock/subsys:
|
||||
if [ -d /var/lock/subsys ]; then
|
||||
rm -f /var/lock/subsys/*
|
||||
fi
|
||||
|
||||
# Create /tmp/{.ICE-unix,.X11-unix} if they are not present:
|
||||
if [ ! -e /tmp/.ICE-unix ]; then
|
||||
mkdir -p /tmp/.ICE-unix
|
||||
chmod 1777 /tmp/.ICE-unix
|
||||
fi
|
||||
if [ ! -e /tmp/.X11-unix ]; then
|
||||
mkdir -p /tmp/.X11-unix
|
||||
chmod 1777 /tmp/.X11-unix
|
||||
fi
|
||||
|
||||
# Create a fresh utmp file:
|
||||
touch /var/run/utmp
|
||||
chown root:utmp /var/run/utmp
|
||||
chmod 664 /var/run/utmp
|
||||
|
||||
# Update the current kernel level in the /etc/motd (Message Of The Day) file,
|
||||
# if the first line of that file begins with the word 'Linux'.
|
||||
# You are free to modify the rest of the file as you see fit.
|
||||
if [ -x /bin/sed ]; then
|
||||
/bin/sed -i "{1s/^Linux.*/$(/bin/uname -sr)\./}" /etc/motd
|
||||
fi
|
||||
|
||||
# If there are SystemV init scripts for this runlevel, run them.
|
||||
if [ -x /etc/rc.d/rc.sysvinit ]; then
|
||||
/etc/rc.d/rc.sysvinit
|
||||
fi
|
||||
|
||||
# Run serial port setup script:
|
||||
# CAREFUL! This can make some systems hang if the rc.serial script isn't
|
||||
# set up correctly. If this happens, you may have to edit the file from a
|
||||
# boot disk, and/or set it as non-executable:
|
||||
if [ -x /etc/rc.d/rc.serial ]; then
|
||||
/etc/rc.d/rc.serial start
|
||||
fi
|
||||
|
||||
# Carry an entropy pool between reboots to improve randomness.
|
||||
if [ -f /etc/random-seed ]; then
|
||||
echo "Using /etc/random-seed to initialize /dev/urandom."
|
||||
cat /etc/random-seed > /dev/urandom
|
||||
fi
|
||||
# Use the pool size from /proc, or 4096 bits:
|
||||
if [ -r /proc/sys/kernel/random/poolsize ]; then
|
||||
dd if=/dev/urandom of=/etc/random-seed count=1 bs=$(expr $(cat /proc/sys/kernel/random/poolsize) / 8) 2> /dev/null
|
||||
else
|
||||
dd if=/dev/urandom of=/etc/random-seed count=1 bs=512 2> /dev/null
|
||||
fi
|
||||
chmod 600 /etc/random-seed
|
|
@ -1,387 +0,0 @@
|
|||
#!/bin/bash
|
||||
# /etc/rc.d/rc.inet1
|
||||
# This script is used to bring up the various network interfaces.
|
||||
#
|
||||
# @(#)/etc/rc.d/rc.inet1 10.2 Sun Jul 24 12:45:56 PDT 2005 (pjv)
|
||||
|
||||
# Set $container variable since this is a modified version of rc.inet1 with
|
||||
# changes for running in an lxc container. A check to see if this variable
|
||||
# is set will be used to skip parts of the script that we don't want to run
|
||||
# in a container. Thanks to Matteo Bernardini <ponce@slackbuilds.org> and
|
||||
# Chris Willing for the initial work making this script lxc compatible.
|
||||
container="lxc"
|
||||
|
||||
############################
|
||||
# READ NETWORK CONFIG FILE #
|
||||
############################
|
||||
|
||||
# Get the configuration information from /etc/rc.d/rc.inet1.conf:
|
||||
. /etc/rc.d/rc.inet1.conf
|
||||
|
||||
###########
|
||||
# LOGGING #
|
||||
###########
|
||||
|
||||
# If possible, log events in /var/log/messages:
|
||||
if [ -f /var/run/syslogd.pid ] && [ -x /usr/bin/logger ]; then
|
||||
LOGGER=/usr/bin/logger
|
||||
else # output to stdout/stderr:
|
||||
LOGGER=/bin/cat
|
||||
fi
|
||||
|
||||
# Handy wrapper for verbose logging
|
||||
debug_log() {
|
||||
if [ "$DEBUG_ETH_UP" = "yes" ]; then
|
||||
echo "/etc/rc.d/rc.inet1: $*" | $LOGGER
|
||||
fi
|
||||
}
|
||||
|
||||
############################
|
||||
# DETERMINE INTERFACE LIST #
|
||||
############################
|
||||
|
||||
# Compose a list of interfaces from /etc/rc.d/rc.inet1.conf (with a maximum
|
||||
# of 6 interfaces, but you can easily enlarge the interface limit
|
||||
# - send me a picture of such a box :-).
|
||||
# If a value for IFNAME[n] is not set, we assume it is an eth'n' interface.
|
||||
# This way, the new script is compatible with older rc.inet1.conf files.
|
||||
# The IFNAME array will be used to determine which interfaces to bring up/down.
|
||||
MAXNICS=${MAXNICS:-6}
|
||||
i=0
|
||||
while [ $i -lt $MAXNICS ];
|
||||
do
|
||||
IFNAME[$i]=${IFNAME[$i]:=eth${i}}
|
||||
i=$(($i+1))
|
||||
done
|
||||
debug_log "List of interfaces: '${IFNAME[*]}'"
|
||||
|
||||
######################
|
||||
# LOOPBACK FUNCTIONS #
|
||||
######################
|
||||
|
||||
# Function to bring up the loopback interface. If loopback is
|
||||
# already up, do nothing.
|
||||
lo_up() {
|
||||
if [ -e /sys/class/net/lo ]; then
|
||||
if ! /sbin/ip link show dev lo | grep -wq -e "state UP" -e "state UNKNOWN" ; then
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/ip address add 127.0.0.1/8 dev lo" | $LOGGER
|
||||
/sbin/ip address add 127.0.0.1/8 dev lo
|
||||
/sbin/ip link set dev lo up
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/ip route add 127.0.0.0/8 dev lo" | $LOGGER
|
||||
/sbin/ip route add 127.0.0.0/8 dev lo
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to take down the loopback interface:
|
||||
lo_down() {
|
||||
if [ -e /sys/class/net/lo ]; then
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/ip link set dev lo down" | $LOGGER
|
||||
/sbin/ip link set dev lo down
|
||||
fi
|
||||
}
|
||||
|
||||
#######################
|
||||
# INTERFACE FUNCTIONS #
|
||||
#######################
|
||||
|
||||
# Function to create virtual interfaces
|
||||
virtif_create() {
|
||||
# argument is 'i' - the position of this interface in the VIRTIFNAME array.
|
||||
# this loop goes from i=0 to i=number_of_configured_virtual_interfaces_minus_one
|
||||
# which means it doesn't do anything if there are none.
|
||||
for i in $(seq 0 $((${#VIRTIFNAME[@]} - 1))); do
|
||||
/sbin/ip tuntap add dev ${VIRTIFNAME[$i]} mode ${VIRTIFTYPE[$i]} user ${VIRTIFUSER[$i]} group ${VIRTIFGROUP[$i]}
|
||||
done
|
||||
}
|
||||
|
||||
# Function to destory virtual interfaces
|
||||
virtif_destroy() {
|
||||
# argument is 'i' - the position of this interface in the VIRTIFNAME array.
|
||||
for i in $(seq 0 $((${#VIRTIFNAME[@]} - 1))); do
|
||||
/sbin/ip tuntap del dev ${VIRTIFNAME[$i]} mode ${VIRTIFTYPE[$i]}
|
||||
done
|
||||
}
|
||||
|
||||
# Function to assemble a bridge interface.
|
||||
br_open() {
|
||||
# argument is 'i' - the position of this interface in the IFNAME array.
|
||||
/sbin/ip link add name ${IFNAME[$1]} type bridge
|
||||
for BRIF in ${BRNICS[$1]}; do
|
||||
/sbin/ip link set dev $BRIF down
|
||||
/sbin/ip address add 0.0.0.0 dev $BRIF
|
||||
/sbin/ip link set dev $BRIF master ${IFNAME[$1]}
|
||||
/sbin/ip link set dev $BRIF up
|
||||
done
|
||||
/sbin/ip link set dev ${IFNAME[$1]} up
|
||||
}
|
||||
|
||||
# Function to disassemble a bridge interface.
|
||||
br_close() {
|
||||
/sbin/ip link set dev ${IFNAME[$1]} down
|
||||
# argument is 'i' - the position of this interface in the IFNAME array.
|
||||
#for BRIF in ${BRNICS[$1]}; do
|
||||
for BRIF in $(ls --indicator-style=none /sys/class/net/${IFNAME[$1]}/brif/)
|
||||
do
|
||||
/sbin/ip link set dev $BRIF nomaster
|
||||
done
|
||||
/sbin/ip link set dev ${IFNAME[$1]} down
|
||||
/sbin/ip link del ${IFNAME[$1]}
|
||||
}
|
||||
|
||||
# Function to bring up a network interface. If the interface is
|
||||
# already up or does not yet exist (perhaps because the kernel driver
|
||||
# is not loaded yet), do nothing.
|
||||
if_up() {
|
||||
# Determine position 'i' of this interface in the IFNAME array:
|
||||
i=0
|
||||
while [ $i -lt $MAXNICS ]; do
|
||||
[ "${IFNAME[$i]}" = "${1}" ] && break
|
||||
i=$(($i+1))
|
||||
done
|
||||
# If "i" is greater or equal to "MAXNICS" at this point, it means we didn't
|
||||
# find an entry in IFNAME array corresponding to "$1", which likely means
|
||||
# there are more interfaces configured than MAXNICS. Let's err on the
|
||||
# side of caution and do nothing instead of possibly doing the wrong thing.
|
||||
if [ $i -ge $MAXNICS ]; then
|
||||
echo "/etc/rc.d/rc.inet1: skipping ${1}, you might need to increase MAXNICS" | $LOGGER
|
||||
return
|
||||
fi
|
||||
|
||||
if [ -z "$container" ]; then
|
||||
# If the interface is a bridge, then create it first:
|
||||
[ -n "${BRNICS[$i]}" ] && br_open $i
|
||||
# If the interface isn't in the kernel yet (but there's an alias for it in
|
||||
# modules.conf), then it should be loaded first:
|
||||
if [ -z "${IPADDR[$i]}" ] && [ "${USE_DHCP[$i]}" != "yes" ]; then # skip unconfigured interfaces
|
||||
debug_log "skipping ${1} early, interface is not configured in /etc/rc.d/rc.inet1.conf"
|
||||
return 0
|
||||
fi
|
||||
if [ ! -e /sys/class/net/${1%%:*} ]; then # no interface yet
|
||||
if /sbin/modprobe -c | grep -v "^#" | grep -w "alias ${1}" | grep -vw "alias ${1} off" > /dev/null ; then
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/modprobe ${1}" | $LOGGER
|
||||
/sbin/modprobe ${1}
|
||||
fi
|
||||
fi
|
||||
fi # end check container
|
||||
|
||||
if [ -e /sys/class/net/${1%%:*} ]; then # interface exists
|
||||
if ! /sbin/ip address show dev ${1} 2>/dev/null | grep -wq inet || \
|
||||
! /sbin/ip link show dev ${1} | grep -wq "state UP" ; then # interface not up or not configured
|
||||
if [ -n "${HWADDR[$i]}" ]; then # Set hardware address _before_ the interface goes up:
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/ip link set dev ${1} address ${HWADDR[$i]}" | $LOGGER
|
||||
/sbin/ip link set dev ${1} address ${HWADDR[$i]}
|
||||
fi
|
||||
if [ -n "${MTU[$i]}" ]; then # Set MTU to something else than 1500
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/ip link set dev ${1} mtu ${MTU[$i]}" | $LOGGER
|
||||
/sbin/ip link set dev ${1} mtu ${MTU[$i]}
|
||||
fi
|
||||
if /sbin/ip link show dev ${1} | grep -wq "state DOWN" ; then
|
||||
/sbin/ip link set dev ${1} up # Bring up interface
|
||||
fi
|
||||
if [ -x /etc/rc.d/rc.wireless ]; then
|
||||
. /etc/rc.d/rc.wireless ${1} start # Initialize any wireless parameters
|
||||
fi
|
||||
if [ "${USE_DHCP[$i]}" = "yes" ]; then # use DHCP to bring interface up
|
||||
# Clear DHCP_OPTIONS before adding new options to it:
|
||||
unset DHCP_OPTIONS
|
||||
# Set DHCP_OPTIONS for this interface:
|
||||
[ -n "${DHCP_HOSTNAME[$i]}" ] && DHCP_OPTIONS="-h ${DHCP_HOSTNAME[$i]}"
|
||||
[ "${DHCP_KEEPRESOLV[$i]}" = "yes" ] && DHCP_OPTIONS="$DHCP_OPTIONS -C resolv.conf"
|
||||
[ "${DHCP_KEEPNTP[$i]}" = "yes" ] && DHCP_OPTIONS="$DHCP_OPTIONS -C ntp.conf"
|
||||
[ "${DHCP_KEEPGW[$i]}" = "yes" ] && DHCP_OPTIONS="$DHCP_OPTIONS -G"
|
||||
[ "${DHCP_DEBUG[$i]}" = "yes" ] && DHCP_OPTIONS="$DHCP_OPTIONS -d"
|
||||
[ "${DHCP_NOIPV4LL[$i]}" = "yes" ] && DHCP_OPTIONS="$DHCP_OPTIONS -L"
|
||||
[ -n "${DHCP_IPADDR[$i]}" ] && DHCP_OPTIONS="$DHCP_OPTIONS -r ${DHCP_IPADDR[$i]}"
|
||||
echo "Polling for DHCP server on interface ${1}:"
|
||||
# If you set a timeout, you get one, even if the kernel doesn't think that
|
||||
# your device is connected, in case /sys isn't right (which it usually isn't
|
||||
# except right after the device is loaded, when it usually is):
|
||||
#### (start commented out)
|
||||
# This is deactivated for now since the kernel has been returning incorrect
|
||||
# results concerning whether the interface carrier is detected.
|
||||
#if [ -z "${DHCP_TIMEOUT[$i]}" ]; then
|
||||
# /sbin/ip link set dev ${1} up && sleep 1
|
||||
# CONNSTATUS="$(cat /sys/class/net/${1}/carrier 2> /dev/null)"
|
||||
# /sbin/ip link set dev ${1} down
|
||||
# if [ "$CONNSTATUS" = "0" ]; then
|
||||
# # The kernel has just told us the cable isn't even plugged in, but we will
|
||||
# # give any DHCP server a short chance to reply anyway:
|
||||
# echo "No carrier detected on ${1}. Reducing DHCP timeout to 15 seconds."
|
||||
# DHCP_TIMEOUT[$i]=15
|
||||
# fi
|
||||
#fi
|
||||
#### (end commented out)
|
||||
# 15 seconds should be a reasonable default DHCP timeout. 30 was too much.
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/dhcpcd -L -t ${DHCP_TIMEOUT[$i]:-15} ${DHCP_OPTIONS} ${1}" | $LOGGER
|
||||
/sbin/dhcpcd -L -t ${DHCP_TIMEOUT[$i]:-15} ${DHCP_OPTIONS} ${1}
|
||||
if [ "$?" == "0" ]; then # the dhcp call has succeeded
|
||||
if [ -n "${IPALIASES[$i]}" ]; then
|
||||
# Add extra IP addresses, if defined, to interface
|
||||
num=0
|
||||
for ipalias in ${IPALIASES[$i]}; do
|
||||
ip="${ipalias%/*}"
|
||||
nm="${ipalias#*/}"
|
||||
[ -z "$nm" ] || [ "$ip" == "$nm" ] && nm="32"
|
||||
/sbin/ip address add ${ip}/${nm} dev ${1} label ${1}:${num}
|
||||
num=$(($num + 1))
|
||||
done
|
||||
fi
|
||||
if [ "${PROMISCUOUS[$i]}" = "yes" ]; then
|
||||
# Set promiscuous mode on the interface
|
||||
/sbin/ip link set dev ${1} promisc on
|
||||
fi
|
||||
fi
|
||||
else # bring up interface using a static IP address
|
||||
if [ -n "${IPADDR[$i]}" ]; then # skip unconfigured interfaces
|
||||
# Set up the network card:
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/ip address add ${IPADDR[$i]}/${NETMASK[$i]} broadcast + dev ${1}" | $LOGGER
|
||||
/sbin/ip address add ${IPADDR[$i]}/${NETMASK[$i]} broadcast + dev ${1}
|
||||
if /sbin/ip link show dev ${1} | grep -wq "state DOWN" ; then
|
||||
/sbin/ip link set dev ${1} up # Bring up interface
|
||||
fi
|
||||
# Add extra IP addresses, if defined, to interface
|
||||
if [ -n "${IPALIASES[$i]}" ]; then
|
||||
num=0
|
||||
for ipalias in ${IPALIASES[$i]}; do
|
||||
ip="${ipalias%/*}"
|
||||
nm="${ipalias#*/}"
|
||||
[ -z "$nm" ] || [ "$ip" == "$nm" ] && nm="32"
|
||||
/sbin/ip address add ${ip}/${nm} dev ${1} label ${1}:${num}
|
||||
num=$(($num + 1))
|
||||
done
|
||||
fi
|
||||
if [ "${PROMISCUOUS[$i]}" = "yes" ]; then
|
||||
# Set promiscuous mode on the interface
|
||||
/sbin/ip link set dev ${1} promisc on
|
||||
fi
|
||||
else
|
||||
debug_log "${1} interface is not configured in /etc/rc.d/rc.inet1.conf"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
debug_log "${1} is already up, skipping"
|
||||
fi
|
||||
else
|
||||
debug_log "${1} interface does not exist (yet)"
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to take down a network interface:
|
||||
if_down() {
|
||||
# Determine position 'i' of this interface in the IFNAME array:
|
||||
i=0
|
||||
while [ $i -lt $MAXNICS ]; do
|
||||
[ "${IFNAME[$i]}" = "${1}" ] && break
|
||||
i=$(($i+1))
|
||||
done
|
||||
if [ $i -ge $MAXNICS ]; then
|
||||
echo "/etc/rc.d/rc.inet1: skipping ${1}, you might need to increase MAXNICS" | $LOGGER
|
||||
return
|
||||
fi
|
||||
if [ -e /sys/class/net/${1%%:*} ]; then
|
||||
if [ "${USE_DHCP[$i]}" = "yes" ]; then
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/dhcpcd -k -d ${1}" | $LOGGER
|
||||
/sbin/dhcpcd -k -d ${1} 2> /dev/null || /sbin/ip link set dev ${1} down
|
||||
sleep 1
|
||||
else
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/ip link set dev ${1} down" | $LOGGER
|
||||
/sbin/ip link set dev ${1} down
|
||||
fi
|
||||
if [ -x /etc/rc.d/rc.wireless ]; then
|
||||
. /etc/rc.d/rc.wireless ${1} stop # Kill wireless daemons if any.
|
||||
fi
|
||||
# If the interface is a bridge, then destroy it now:
|
||||
if [ -n "${BRNICS[$i]}" ]; then
|
||||
br_close $i
|
||||
fi
|
||||
# Flush the address from the interface:
|
||||
ip address flush dev ${1}
|
||||
fi
|
||||
}
|
||||
|
||||
#####################
|
||||
# GATEWAY FUNCTIONS #
|
||||
#####################
|
||||
|
||||
# Function to bring up the gateway if there is not yet a default route:
|
||||
gateway_up() {
|
||||
if ! /sbin/ip route show | grep -wq default ; then
|
||||
if [ -n "$GATEWAY" ]; then
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/ip route add default via ${GATEWAY}" | $LOGGER
|
||||
/sbin/ip route add default via ${GATEWAY} | $LOGGER
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to take down an existing default gateway:
|
||||
gateway_down() {
|
||||
if /sbin/ip route show | grep -wq default ; then
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/ip route del default" | $LOGGER
|
||||
/sbin/ip route del default
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to start the network:
|
||||
start() {
|
||||
lo_up
|
||||
virtif_create
|
||||
for i in "${IFNAME[@]}" ; do
|
||||
if_up $i
|
||||
done
|
||||
gateway_up
|
||||
}
|
||||
|
||||
# Function to stop the network:
|
||||
stop() {
|
||||
gateway_down
|
||||
for i in "${IFNAME[@]}" ; do
|
||||
if_down $i
|
||||
done
|
||||
virtif_destroy
|
||||
lo_down
|
||||
}
|
||||
|
||||
|
||||
############
|
||||
### MAIN ###
|
||||
############
|
||||
|
||||
case "$1" in
|
||||
start|up) # "start" (or "up") brings up all configured interfaces:
|
||||
start
|
||||
;;
|
||||
stop|down) # "stop" (or "down") takes down all configured interfaces:
|
||||
stop
|
||||
;;
|
||||
restart) # "restart" restarts the network:
|
||||
stop
|
||||
start
|
||||
;;
|
||||
lo_start|lo_up) # Start the loopback interface:
|
||||
lo_up
|
||||
;;
|
||||
lo_stop|lo_down) # Stop the loopback interface:
|
||||
lo_down
|
||||
;;
|
||||
*_start|*_up) # Example: "eth1_start" (or "eth1_up") will start the specified interface 'eth1'
|
||||
INTERFACE=$(echo $1 | /bin/cut -d '_' -f 1)
|
||||
if_up $INTERFACE
|
||||
gateway_up
|
||||
;;
|
||||
*_stop|*_down) # Example: "eth0_stop" (or "eth0_down") will stop the specified interface 'eth0'
|
||||
INTERFACE=$(echo $1 | /bin/cut -d '_' -f 1)
|
||||
if_down $INTERFACE
|
||||
;;
|
||||
*_restart) # Example: "wlan0_restart" will take 'wlan0' down and up again
|
||||
INTERFACE=$(echo $1 | /bin/cut -d '_' -f 1)
|
||||
if_down $INTERFACE
|
||||
sleep 1
|
||||
if_up $INTERFACE
|
||||
gateway_up
|
||||
;;
|
||||
*) # The default is to bring up all configured interfaces:
|
||||
start
|
||||
esac
|
||||
|
||||
# End of /etc/rc.d/rc.inet1
|
|
@ -1,376 +0,0 @@
|
|||
#!/bin/bash
|
||||
# /etc/rc.d/rc.inet1
|
||||
# This script is used to bring up the various network interfaces.
|
||||
#
|
||||
# @(#)/etc/rc.d/rc.inet1 10.2 Sun Jul 24 12:45:56 PDT 2005 (pjv)
|
||||
|
||||
############################
|
||||
# READ NETWORK CONFIG FILE #
|
||||
############################
|
||||
|
||||
# Get the configuration information from /etc/rc.d/rc.inet1.conf:
|
||||
. /etc/rc.d/rc.inet1.conf
|
||||
|
||||
###########
|
||||
# LOGGING #
|
||||
###########
|
||||
|
||||
# If possible, log events in /var/log/messages:
|
||||
if [ -f /var/run/syslogd.pid ] && [ -x /usr/bin/logger ]; then
|
||||
LOGGER=/usr/bin/logger
|
||||
else # output to stdout/stderr:
|
||||
LOGGER=/bin/cat
|
||||
fi
|
||||
|
||||
# Handy wrapper for verbose logging
|
||||
debug_log() {
|
||||
if [ "$DEBUG_ETH_UP" = "yes" ]; then
|
||||
echo "/etc/rc.d/rc.inet1: $*" | $LOGGER
|
||||
fi
|
||||
}
|
||||
|
||||
############################
|
||||
# DETERMINE INTERFACE LIST #
|
||||
############################
|
||||
|
||||
# Compose a list of interfaces from /etc/rc.d/rc.inet1.conf (with a maximum
|
||||
# of 6 interfaces, but you can easily enlarge the interface limit
|
||||
# - send me a picture of such a box :-).
|
||||
# If a value for IFNAME[n] is not set, we assume it is an eth'n' interface.
|
||||
# This way, the new script is compatible with older rc.inet1.conf files.
|
||||
# The IFNAME array will be used to determine which interfaces to bring up/down.
|
||||
MAXNICS=${MAXNICS:-6}
|
||||
i=0
|
||||
while [ $i -lt $MAXNICS ];
|
||||
do
|
||||
IFNAME[$i]=${IFNAME[$i]:=eth${i}}
|
||||
i=$(($i+1))
|
||||
done
|
||||
debug_log "List of interfaces: '${IFNAME[*]}'"
|
||||
|
||||
######################
|
||||
# LOOPBACK FUNCTIONS #
|
||||
######################
|
||||
|
||||
# Function to bring up the loopback interface. If loopback is
|
||||
# already up, do nothing.
|
||||
lo_up() {
|
||||
if [ -e /sys/class/net/lo ]; then
|
||||
if ! /sbin/ip link show dev lo | grep -wq -e "state UP" -e "state UNKNOWN" ; then
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/ip address add 127.0.0.1/8 dev lo" | $LOGGER
|
||||
/sbin/ip address add 127.0.0.1/8 dev lo
|
||||
/sbin/ip link set dev lo up
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/ip route add 127.0.0.0/8 dev lo" | $LOGGER
|
||||
/sbin/ip route add 127.0.0.0/8 dev lo
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to take down the loopback interface:
|
||||
lo_down() {
|
||||
if [ -e /sys/class/net/lo ]; then
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/ip link set dev lo down" | $LOGGER
|
||||
/sbin/ip link set dev lo down
|
||||
fi
|
||||
}
|
||||
|
||||
#######################
|
||||
# INTERFACE FUNCTIONS #
|
||||
#######################
|
||||
|
||||
# Function to create virtual interfaces
|
||||
virtif_create() {
|
||||
# argument is 'i' - the position of this interface in the VIRTIFNAME array.
|
||||
# this loop goes from i=0 to i=number_of_configured_virtual_interfaces_minus_one
|
||||
# which means it doesn't do anything if there are none.
|
||||
for i in $(seq 0 $((${#VIRTIFNAME[@]} - 1))); do
|
||||
/sbin/ip tuntap add dev ${VIRTIFNAME[$i]} mode ${VIRTIFTYPE[$i]} user ${VIRTIFUSER[$i]} group ${VIRTIFGROUP[$i]}
|
||||
done
|
||||
}
|
||||
|
||||
# Function to destory virtual interfaces
|
||||
virtif_destroy() {
|
||||
# argument is 'i' - the position of this interface in the VIRTIFNAME array.
|
||||
for i in $(seq 0 $((${#VIRTIFNAME[@]} - 1))); do
|
||||
/sbin/ip tuntap del dev ${VIRTIFNAME[$i]} mode ${VIRTIFTYPE[$i]}
|
||||
done
|
||||
}
|
||||
|
||||
# Function to assemble a bridge interface.
|
||||
br_open() {
|
||||
# argument is 'i' - the position of this interface in the IFNAME array.
|
||||
/sbin/ip link add name ${IFNAME[$1]} type bridge
|
||||
for BRIF in ${BRNICS[$1]}; do
|
||||
/sbin/ip link set dev $BRIF down
|
||||
/sbin/ip address add 0.0.0.0 dev $BRIF
|
||||
/sbin/ip link set dev $BRIF master ${IFNAME[$1]}
|
||||
/sbin/ip link set dev $BRIF up
|
||||
done
|
||||
/sbin/ip link set dev ${IFNAME[$1]} up
|
||||
}
|
||||
|
||||
# Function to disassemble a bridge interface.
|
||||
br_close() {
|
||||
/sbin/ip link set dev ${IFNAME[$1]} down
|
||||
# argument is 'i' - the position of this interface in the IFNAME array.
|
||||
#for BRIF in ${BRNICS[$1]}; do
|
||||
for BRIF in $(ls --indicator-style=none /sys/class/net/${IFNAME[$1]}/brif/)
|
||||
do
|
||||
/sbin/ip link set dev $BRIF nomaster
|
||||
done
|
||||
/sbin/ip link set dev ${IFNAME[$1]} down
|
||||
/sbin/ip link del ${IFNAME[$1]}
|
||||
}
|
||||
|
||||
# Function to bring up a network interface. If the interface is
|
||||
# already up or does not yet exist (perhaps because the kernel driver
|
||||
# is not loaded yet), do nothing.
|
||||
if_up() {
|
||||
# Determine position 'i' of this interface in the IFNAME array:
|
||||
i=0
|
||||
while [ $i -lt $MAXNICS ]; do
|
||||
[ "${IFNAME[$i]}" = "${1}" ] && break
|
||||
i=$(($i+1))
|
||||
done
|
||||
# If "i" is greater or equal to "MAXNICS" at this point, it means we didn't
|
||||
# find an entry in IFNAME array corresponding to "$1", which likely means
|
||||
# there are more interfaces configured than MAXNICS. Let's err on the
|
||||
# side of caution and do nothing instead of possibly doing the wrong thing.
|
||||
if [ $i -ge $MAXNICS ]; then
|
||||
echo "/etc/rc.d/rc.inet1: skipping ${1}, you might need to increase MAXNICS" | $LOGGER
|
||||
return
|
||||
fi
|
||||
# If the interface is a bridge, then create it first:
|
||||
[ -n "${BRNICS[$i]}" ] && br_open $i
|
||||
# If the interface isn't in the kernel yet (but there's an alias for it in
|
||||
# modules.conf), then it should be loaded first:
|
||||
if [ -z "${IPADDR[$i]}" ] && [ "${USE_DHCP[$i]}" != "yes" ]; then # skip unconfigured interfaces
|
||||
debug_log "skipping ${1} early, interface is not configured in /etc/rc.d/rc.inet1.conf"
|
||||
return 0
|
||||
fi
|
||||
if [ ! -e /sys/class/net/${1%%:*} ]; then # no interface yet
|
||||
if /sbin/modprobe -c | grep -v "^#" | grep -w "alias ${1}" | grep -vw "alias ${1} off" > /dev/null ; then
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/modprobe ${1}" | $LOGGER
|
||||
/sbin/modprobe ${1}
|
||||
fi
|
||||
fi
|
||||
if [ -e /sys/class/net/${1%%:*} ]; then # interface exists
|
||||
if ! /sbin/ip address show dev ${1} 2>/dev/null | grep -wq inet || \
|
||||
! /sbin/ip link show dev ${1} | grep -wq "state UP" ; then # interface not up or not configured
|
||||
if [ -n "${HWADDR[$i]}" ]; then # Set hardware address _before_ the interface goes up:
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/ip link set dev ${1} address ${HWADDR[$i]}" | $LOGGER
|
||||
/sbin/ip link set dev ${1} address ${HWADDR[$i]}
|
||||
fi
|
||||
if [ -n "${MTU[$i]}" ]; then # Set MTU to something else than 1500
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/ip link set dev ${1} mtu ${MTU[$i]}" | $LOGGER
|
||||
/sbin/ip link set dev ${1} mtu ${MTU[$i]}
|
||||
fi
|
||||
if /sbin/ip link show dev ${1} | grep -wq "state DOWN" ; then
|
||||
/sbin/ip link set dev ${1} up # Bring up interface
|
||||
fi
|
||||
if [ -x /etc/rc.d/rc.wireless ]; then
|
||||
. /etc/rc.d/rc.wireless ${1} start # Initialize any wireless parameters
|
||||
fi
|
||||
if [ "${USE_DHCP[$i]}" = "yes" ]; then # use DHCP to bring interface up
|
||||
# Clear DHCP_OPTIONS before adding new options to it:
|
||||
unset DHCP_OPTIONS
|
||||
# Set DHCP_OPTIONS for this interface:
|
||||
[ -n "${DHCP_HOSTNAME[$i]}" ] && DHCP_OPTIONS="-h ${DHCP_HOSTNAME[$i]}"
|
||||
[ "${DHCP_KEEPRESOLV[$i]}" = "yes" ] && DHCP_OPTIONS="$DHCP_OPTIONS -C resolv.conf"
|
||||
[ "${DHCP_KEEPNTP[$i]}" = "yes" ] && DHCP_OPTIONS="$DHCP_OPTIONS -C ntp.conf"
|
||||
[ "${DHCP_KEEPGW[$i]}" = "yes" ] && DHCP_OPTIONS="$DHCP_OPTIONS -G"
|
||||
[ "${DHCP_DEBUG[$i]}" = "yes" ] && DHCP_OPTIONS="$DHCP_OPTIONS -d"
|
||||
[ "${DHCP_NOIPV4LL[$i]}" = "yes" ] && DHCP_OPTIONS="$DHCP_OPTIONS -L"
|
||||
[ -n "${DHCP_IPADDR[$i]}" ] && DHCP_OPTIONS="$DHCP_OPTIONS -r ${DHCP_IPADDR[$i]}"
|
||||
echo "Polling for DHCP server on interface ${1}:"
|
||||
# If you set a timeout, you get one, even if the kernel doesn't think that
|
||||
# your device is connected, in case /sys isn't right (which it usually isn't
|
||||
# except right after the device is loaded, when it usually is):
|
||||
#### (start commented out)
|
||||
# This is deactivated for now since the kernel has been returning incorrect
|
||||
# results concerning whether the interface carrier is detected.
|
||||
#if [ -z "${DHCP_TIMEOUT[$i]}" ]; then
|
||||
# /sbin/ip link set dev ${1} up && sleep 1
|
||||
# CONNSTATUS="$(cat /sys/class/net/${1}/carrier 2> /dev/null)"
|
||||
# /sbin/ip link set dev ${1} down
|
||||
# if [ "$CONNSTATUS" = "0" ]; then
|
||||
# # The kernel has just told us the cable isn't even plugged in, but we will
|
||||
# # give any DHCP server a short chance to reply anyway:
|
||||
# echo "No carrier detected on ${1}. Reducing DHCP timeout to 15 seconds."
|
||||
# DHCP_TIMEOUT[$i]=15
|
||||
# fi
|
||||
#fi
|
||||
#### (end commented out)
|
||||
# 15 seconds should be a reasonable default DHCP timeout. 30 was too much.
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/dhcpcd -L -t ${DHCP_TIMEOUT[$i]:-15} ${DHCP_OPTIONS} ${1}" | $LOGGER
|
||||
/sbin/dhcpcd -L -t ${DHCP_TIMEOUT[$i]:-15} ${DHCP_OPTIONS} ${1}
|
||||
if [ "$?" == "0" ]; then # the dhcp call has succeeded
|
||||
if [ -n "${IPALIASES[$i]}" ]; then
|
||||
# Add extra IP addresses, if defined, to interface
|
||||
num=0
|
||||
for ipalias in ${IPALIASES[$i]}; do
|
||||
ip="${ipalias%/*}"
|
||||
nm="${ipalias#*/}"
|
||||
[ -z "$nm" ] || [ "$ip" == "$nm" ] && nm="32"
|
||||
/sbin/ip address add ${ip}/${nm} dev ${1} label ${1}:${num}
|
||||
num=$(($num + 1))
|
||||
done
|
||||
fi
|
||||
if [ "${PROMISCUOUS[$i]}" = "yes" ]; then
|
||||
# Set promiscuous mode on the interface
|
||||
/sbin/ip link set dev ${1} promisc on
|
||||
fi
|
||||
fi
|
||||
else # bring up interface using a static IP address
|
||||
if [ -n "${IPADDR[$i]}" ]; then # skip unconfigured interfaces
|
||||
# Set up the network card:
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/ip address add ${IPADDR[$i]}/${NETMASK[$i]} broadcast + dev ${1}" | $LOGGER
|
||||
/sbin/ip address add ${IPADDR[$i]}/${NETMASK[$i]} broadcast + dev ${1}
|
||||
if /sbin/ip link show dev ${1} | grep -wq "state DOWN" ; then
|
||||
/sbin/ip link set dev ${1} up # Bring up interface
|
||||
fi
|
||||
# Add extra IP addresses, if defined, to interface
|
||||
if [ -n "${IPALIASES[$i]}" ]; then
|
||||
num=0
|
||||
for ipalias in ${IPALIASES[$i]}; do
|
||||
ip="${ipalias%/*}"
|
||||
nm="${ipalias#*/}"
|
||||
[ -z "$nm" ] || [ "$ip" == "$nm" ] && nm="32"
|
||||
/sbin/ip address add ${ip}/${nm} dev ${1} label ${1}:${num}
|
||||
num=$(($num + 1))
|
||||
done
|
||||
fi
|
||||
if [ "${PROMISCUOUS[$i]}" = "yes" ]; then
|
||||
# Set promiscuous mode on the interface
|
||||
/sbin/ip link set dev ${1} promisc on
|
||||
fi
|
||||
else
|
||||
debug_log "${1} interface is not configured in /etc/rc.d/rc.inet1.conf"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
debug_log "${1} is already up, skipping"
|
||||
fi
|
||||
else
|
||||
debug_log "${1} interface does not exist (yet)"
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to take down a network interface:
|
||||
if_down() {
|
||||
# Determine position 'i' of this interface in the IFNAME array:
|
||||
i=0
|
||||
while [ $i -lt $MAXNICS ]; do
|
||||
[ "${IFNAME[$i]}" = "${1}" ] && break
|
||||
i=$(($i+1))
|
||||
done
|
||||
if [ $i -ge $MAXNICS ]; then
|
||||
echo "/etc/rc.d/rc.inet1: skipping ${1}, you might need to increase MAXNICS" | $LOGGER
|
||||
return
|
||||
fi
|
||||
if [ -e /sys/class/net/${1%%:*} ]; then
|
||||
if [ "${USE_DHCP[$i]}" = "yes" ]; then
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/dhcpcd -k -d ${1}" | $LOGGER
|
||||
/sbin/dhcpcd -k -d ${1} 2> /dev/null || /sbin/ip link set dev ${1} down
|
||||
sleep 1
|
||||
else
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/ip link set dev ${1} down" | $LOGGER
|
||||
/sbin/ip link set dev ${1} down
|
||||
fi
|
||||
if [ -x /etc/rc.d/rc.wireless ]; then
|
||||
. /etc/rc.d/rc.wireless ${1} stop # Kill wireless daemons if any.
|
||||
fi
|
||||
# If the interface is a bridge, then destroy it now:
|
||||
if [ -n "${BRNICS[$i]}" ]; then
|
||||
br_close $i
|
||||
fi
|
||||
# Flush the address from the interface:
|
||||
ip address flush dev ${1}
|
||||
fi
|
||||
}
|
||||
|
||||
#####################
|
||||
# GATEWAY FUNCTIONS #
|
||||
#####################
|
||||
|
||||
# Function to bring up the gateway if there is not yet a default route:
|
||||
gateway_up() {
|
||||
if ! /sbin/ip route show | grep -wq default ; then
|
||||
if [ -n "$GATEWAY" ]; then
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/ip route add default via ${GATEWAY}" | $LOGGER
|
||||
/sbin/ip route add default via ${GATEWAY} | $LOGGER
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to take down an existing default gateway:
|
||||
gateway_down() {
|
||||
if /sbin/ip route show | grep -wq default ; then
|
||||
echo "/etc/rc.d/rc.inet1: /sbin/ip route del default" | $LOGGER
|
||||
/sbin/ip route del default
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to start the network:
|
||||
start() {
|
||||
lo_up
|
||||
virtif_create
|
||||
for i in "${IFNAME[@]}" ; do
|
||||
if_up $i
|
||||
done
|
||||
gateway_up
|
||||
}
|
||||
|
||||
# Function to stop the network:
|
||||
stop() {
|
||||
gateway_down
|
||||
for i in "${IFNAME[@]}" ; do
|
||||
if_down $i
|
||||
done
|
||||
virtif_destroy
|
||||
lo_down
|
||||
}
|
||||
|
||||
|
||||
############
|
||||
### MAIN ###
|
||||
############
|
||||
|
||||
case "$1" in
|
||||
start|up) # "start" (or "up") brings up all configured interfaces:
|
||||
start
|
||||
;;
|
||||
stop|down) # "stop" (or "down") takes down all configured interfaces:
|
||||
stop
|
||||
;;
|
||||
restart) # "restart" restarts the network:
|
||||
stop
|
||||
start
|
||||
;;
|
||||
lo_start|lo_up) # Start the loopback interface:
|
||||
lo_up
|
||||
;;
|
||||
lo_stop|lo_down) # Stop the loopback interface:
|
||||
lo_down
|
||||
;;
|
||||
*_start|*_up) # Example: "eth1_start" (or "eth1_up") will start the specified interface 'eth1'
|
||||
INTERFACE=$(echo $1 | /bin/cut -d '_' -f 1)
|
||||
if_up $INTERFACE
|
||||
gateway_up
|
||||
;;
|
||||
*_stop|*_down) # Example: "eth0_stop" (or "eth0_down") will stop the specified interface 'eth0'
|
||||
INTERFACE=$(echo $1 | /bin/cut -d '_' -f 1)
|
||||
if_down $INTERFACE
|
||||
;;
|
||||
*_restart) # Example: "wlan0_restart" will take 'wlan0' down and up again
|
||||
INTERFACE=$(echo $1 | /bin/cut -d '_' -f 1)
|
||||
if_down $INTERFACE
|
||||
sleep 1
|
||||
if_up $INTERFACE
|
||||
gateway_up
|
||||
;;
|
||||
*) # The default is to bring up all configured interfaces:
|
||||
start
|
||||
esac
|
||||
|
||||
# End of /etc/rc.d/rc.inet1
|
|
@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
|
|||
|
||||
PKGNAM=libgpod
|
||||
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
|
||||
BUILD=${BUILD:-10}
|
||||
BUILD=${BUILD:-11}
|
||||
|
||||
# Automatically determine the architecture we're building on:
|
||||
if [ -z "$ARCH" ]; then
|
||||
|
|
142
source/l/libseccomp/libseccomp.SlackBuild
Executable file
142
source/l/libseccomp/libseccomp.SlackBuild
Executable file
|
@ -0,0 +1,142 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Copyright 2016-2020 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
|
||||
# Copyright 2021 Patrick J. Volkerding, Sebeka, Minnesota, USA
|
||||
# All rights reserved.
|
||||
#
|
||||
# Redistribution and use of this script, with or without modification, is
|
||||
# permitted provided that the following conditions are met:
|
||||
#
|
||||
# 1. Redistributions of this script must retain the above copyright
|
||||
# notice, this list of conditions and the following disclaimer.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
||||
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
|
||||
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
|
||||
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
||||
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
||||
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
cd $(dirname $0) ; CWD=$(pwd)
|
||||
|
||||
PKGNAM=libseccomp
|
||||
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
|
||||
BUILD=${BUILD:-1}
|
||||
|
||||
# Automatically determine the architecture we're building on:
|
||||
if [ -z "$ARCH" ]; then
|
||||
case "$(uname -m)" in
|
||||
i?86) ARCH=i586 ;;
|
||||
arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
|
||||
# Unless $ARCH is already set, use uname -m for all other archs:
|
||||
*) ARCH=$(uname -m) ;;
|
||||
esac
|
||||
export ARCH
|
||||
fi
|
||||
|
||||
# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
|
||||
# the name of the created package would be, and then exit. This information
|
||||
# could be useful to other scripts.
|
||||
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
|
||||
echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
|
||||
|
||||
if [ "$ARCH" = "i586" ]; then
|
||||
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
|
||||
LIBDIRSUFFIX=""
|
||||
elif [ "$ARCH" = "i686" ]; then
|
||||
SLKCFLAGS="-O2 -march=i686"
|
||||
LIBDIRSUFFIX=""
|
||||
elif [ "$ARCH" = "s390" ]; then
|
||||
SLKCFLAGS="-O2"
|
||||
LIBDIRSUFFIX=""
|
||||
elif [ "$ARCH" = "x86_64" ]; then
|
||||
SLKCFLAGS="-O2 -fPIC"
|
||||
LIBDIRSUFFIX="64"
|
||||
elif [ "$ARCH" = "armv7hl" ]; then
|
||||
SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
|
||||
LIBDIRSUFFIX=""
|
||||
else
|
||||
SLKCFLAGS="-O2"
|
||||
LIBDIRSUFFIX=""
|
||||
fi
|
||||
|
||||
TMP=${TMP:-/tmp}
|
||||
PKG=$TMP/package-$PKGNAM
|
||||
|
||||
rm -rf $PKG
|
||||
mkdir -p $TMP $PKG
|
||||
|
||||
cd $TMP
|
||||
rm -rf $PKGNAM-$VERSION
|
||||
tar xvf $CWD/$PKGNAM-$VERSION.tar.?z || exit 1
|
||||
cd $PKGNAM-$VERSION || exit 1
|
||||
|
||||
chown -R root:root .
|
||||
find . \
|
||||
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
|
||||
-exec chmod 755 {} \+ -o \
|
||||
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
|
||||
-exec chmod 644 {} \+
|
||||
|
||||
# Configure, build, and install:
|
||||
if [ ! -r configure ]; then
|
||||
if [ -x ./autogen.sh ]; then
|
||||
NOCONFIGURE=1 ./autogen.sh
|
||||
else
|
||||
autoreconf -vif
|
||||
fi
|
||||
fi
|
||||
CFLAGS="$SLKCFLAGS" \
|
||||
CXXFLAGS="$SLKCFLAGS" \
|
||||
./configure \
|
||||
--prefix=/usr \
|
||||
--libdir=/usr/lib${LIBDIRSUFFIX} \
|
||||
--sysconfdir=/etc \
|
||||
--localstatedir=/var \
|
||||
--mandir=/usr/man \
|
||||
--enable-static=no \
|
||||
--docdir=/usr/doc/$PRGNAM-$VERSION \
|
||||
--build=$ARCH-slackware-linux || exit 1
|
||||
make $NUMJOBS || make || exit 1
|
||||
make install DESTDIR=$PKG || exit 1
|
||||
|
||||
# Don't ship .la files:
|
||||
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
|
||||
|
||||
# Strip binaries:
|
||||
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
|
||||
|
||||
# Compress manual pages:
|
||||
find $PKG/usr/man -type f -exec gzip -9 {} \+
|
||||
for i in $( find $PKG/usr/man -type l ) ; do
|
||||
ln -s $( readlink $i ).gz $i.gz
|
||||
rm $i
|
||||
done
|
||||
|
||||
# Add a documentation directory:
|
||||
mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
|
||||
cp -a \
|
||||
CHANGELOG* CONTRIBUTING* CREDITS* LICENSE* README* SECURITY* \
|
||||
$PKG/usr/doc/${PKGNAM}-$VERSION
|
||||
|
||||
# If there's a CHANGELOG file, installing at least part of the recent history
|
||||
# is useful, but don't let it get totally out of control:
|
||||
if [ -r CHANGELOG ]; then
|
||||
DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
|
||||
cat CHANGELOG | head -n 1000 > $DOCSDIR/CHANGELOG
|
||||
touch -r CHANGELOG $DOCSDIR/CHANGELOG
|
||||
fi
|
||||
|
||||
mkdir -p $PKG/install
|
||||
cat $CWD/slack-desc > $PKG/install/slack-desc
|
||||
|
||||
cd $PKG
|
||||
/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
|
1
source/l/libseccomp/libseccomp.url
Normal file
1
source/l/libseccomp/libseccomp.url
Normal file
|
@ -0,0 +1 @@
|
|||
https://github.com/seccomp/libseccomp
|
19
source/l/libseccomp/slack-desc
Normal file
19
source/l/libseccomp/slack-desc
Normal file
|
@ -0,0 +1,19 @@
|
|||
# HOW TO EDIT THIS FILE:
|
||||
# The "handy ruler" below makes it easier to edit a package description.
|
||||
# Line up the first '|' above the ':' following the base package name, and
|
||||
# the '|' on the right side marks the last column you can put a character in.
|
||||
# You must make exactly 11 lines for the formatting to be correct. It's also
|
||||
# customary to leave one space after the ':' except on otherwise blank lines.
|
||||
|
||||
|-----handy-ruler------------------------------------------------------|
|
||||
libseccomp: libseccomp (enhanced seccomp library)
|
||||
libseccomp:
|
||||
libseccomp: The libseccomp library provides an easy to use, platform independent,
|
||||
libseccomp: interface to the Linux Kernel's syscall filtering mechanism. The
|
||||
libseccomp: libseccomp API is designed to abstract away the underlying BPF based
|
||||
libseccomp: syscall filter language and present a more conventional function-call
|
||||
libseccomp: based filtering interface that should be familiar to, and easily
|
||||
libseccomp: adopted by, application developers.
|
||||
libseccomp:
|
||||
libseccomp: Homepage: https://github.com/seccomp/libseccomp
|
||||
libseccomp:
|
|
@ -0,0 +1,39 @@
|
|||
From 2ef0c19e3ebfd99c1c89bf13dee0ec198c5ef559 Mon Sep 17 00:00:00 2001
|
||||
From: Patrick J. Volkerding <volkerdi@slackware.com>
|
||||
Date: Wed, 10 Nov 2021 16:22:43 -0600
|
||||
Subject: [PATCH] Skip bridge and bond configuration in LXC container
|
||||
|
||||
Add LXC detection at the beginning of the script to set container="lxc" if an
|
||||
LXC container is detected. Later, use this to skip bridge and bond creation in
|
||||
an LXC container. Patched script works in both LXC and on bare metal.
|
||||
|
||||
--- ./etc/rc.d/rc.inet1.new.orig 2021-03-08 18:13:50.484386646 -0600
|
||||
+++ ./etc/rc.d/rc.inet1.new 2021-11-10 02:32:58.780223136 -0600
|
||||
@@ -2,7 +2,14 @@
|
||||
# /etc/rc.d/rc.inet1
|
||||
# This script is used to bring up the various network interfaces.
|
||||
#
|
||||
-# @(#)/etc/rc.d/rc.inet1 10.2 Sun Jul 24 12:45:56 PDT 2005 (pjv)
|
||||
+# @(#)/etc/rc.d/rc.inet1 15.0 Wed Nov 10 08:17:22 UTC 2021 (pjv)
|
||||
+
|
||||
+# If we are in an lxc container, set $container to skip parts of the script.
|
||||
+# Thanks to Matteo Bernardini <ponce@slackbuilds.org> and Chris Willing for
|
||||
+# the initial work making this script lxc compatible.
|
||||
+if grep -aq container=lxc /proc/1/environ 2> /dev/null ; then
|
||||
+ container="lxc"
|
||||
+fi
|
||||
|
||||
############################
|
||||
# READ NETWORK CONFIG FILE #
|
||||
@@ -254,9 +261,9 @@
|
||||
# bond or bridge, configure the interfaces with IPs of 0.0.0.0 and set the
|
||||
# MAC address with HWADDR. Then, finally, define the bond or bridge.
|
||||
# If the interface is a bond, create it.
|
||||
- [ -n "${BONDNICS[$i]}" ] && bond_create $i
|
||||
+ [ -n "${BONDNICS[$i]}" -a -z "$container" ] && bond_create $i
|
||||
# If the interface is a bridge, create it.
|
||||
- [ -n "${BRNICS[$i]}" ] && br_open $i
|
||||
+ [ -n "${BRNICS[$i]}" -a -z "$container" ] && br_open $i
|
||||
if [ -e /sys/class/net/${1%%[:.]*} ]; then # interface exists
|
||||
if ! /sbin/ip address show scope global dev ${1} 2>/dev/null | grep -Ewq '(inet|inet6)' || \
|
||||
! /sbin/ip link show dev ${1} | grep -wq "state UP"; then # interface not up or not configured
|
|
@ -0,0 +1,20 @@
|
|||
From d5e9803b79f3bf909b01c3ff3a5cdb0d7594dba0 Mon Sep 17 00:00:00 2001
|
||||
From: Patrick J. Volkerding <volkerdi@slackware.com>
|
||||
Date: Wed, 10 Nov 2021 16:27:08 -0600
|
||||
Subject: [PATCH] Ensure proper rc.networkmanager permissions
|
||||
|
||||
In case rc.networkmanager was made executable by the admin or with a previous
|
||||
run of netconfig, we need to disable it if networkmanager wasn't selected in
|
||||
this netconfig run.
|
||||
|
||||
--- ./sbin/netconfig.orig 2021-04-16 13:51:20.261045081 -0500
|
||||
+++ ./sbin/netconfig 2021-11-10 16:14:09.388939104 -0600
|
||||
@@ -1071,6 +1071,8 @@
|
||||
write_config_files
|
||||
if [ "$NETWORKMANAGER" = "yes" -a -r etc/rc.d/rc.networkmanager ]; then
|
||||
chmod 755 etc/rc.d/rc.networkmanager
|
||||
+ elif [ ! "$NETWORKMANAGER" = "yes" -a -x etc/rc.d/rc.networkmanager ]; then
|
||||
+ chmod 644 etc/rc.d/rc.networkmanager
|
||||
fi
|
||||
dialog --msgbox "Settings accepted. Basic network configuration is complete." 6 40
|
||||
else
|
|
@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
|
|||
PKGNAM=network-scripts
|
||||
VERSION=${VERSION:-15.0}
|
||||
ARCH=noarch
|
||||
BUILD=${BUILD:-16}
|
||||
BUILD=${BUILD:-17}
|
||||
|
||||
# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
|
||||
# the name of the created package would be, and then exit. This information
|
||||
|
@ -84,6 +84,18 @@ mkdir -p $PKG/install
|
|||
zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
|
||||
cat $CWD/slack-desc > $PKG/install/slack-desc
|
||||
|
||||
# Patch to fix rc.inet1.new for LXC:
|
||||
( cd $PKG
|
||||
cat $CWD/0000-rc.inet1.new-lxc-additions.patch | patch -p1 --verbose || exit 1
|
||||
rm -f etc/rc.d/rc.inet1.new.orig
|
||||
) || exit 1
|
||||
|
||||
# Patch netconfig to fix leaving a previously enabled rc.networkmanager
|
||||
# executable even if networkmanager is no longer selected:
|
||||
( cd $PKG
|
||||
cat $CWD/0001-netconfig-turn-off-rc.networkmanager-if-networkmanager-is-not-selected.patch | patch -p1 --verbose || exit 1
|
||||
rm -f sbin/netconfig.orig
|
||||
)
|
||||
|
||||
cd $PKG
|
||||
/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz
|
||||
|
||||
|
|
27
source/x/ibus/571e3b6e4f386abf12d3db70b9468e092c8d72bd.patch
Normal file
27
source/x/ibus/571e3b6e4f386abf12d3db70b9468e092c8d72bd.patch
Normal file
|
@ -0,0 +1,27 @@
|
|||
From 571e3b6e4f386abf12d3db70b9468e092c8d72bd Mon Sep 17 00:00:00 2001
|
||||
From: Alynx Zhou <alynx.zhou@gmail.com>
|
||||
Date: Tue, 24 Aug 2021 10:12:52 +0800
|
||||
Subject: [PATCH] client/gtk2/ibusimcontext: Fix wrong cursor location in gtk3
|
||||
apps
|
||||
|
||||
---
|
||||
client/gtk2/ibusimcontext.c | 5 ++++-
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/client/gtk2/ibusimcontext.c b/client/gtk2/ibusimcontext.c
|
||||
index da9a402ff..b1ccede95 100644
|
||||
--- a/client/gtk2/ibusimcontext.c
|
||||
+++ b/client/gtk2/ibusimcontext.c
|
||||
@@ -1497,7 +1497,10 @@ _set_cursor_location_internal (IBusIMContext *ibusimcontext)
|
||||
|
||||
#if GTK_CHECK_VERSION (3, 98, 4)
|
||||
#elif GTK_CHECK_VERSION (2, 91, 0)
|
||||
- area.y += gdk_window_get_height (ibusimcontext->client_window);
|
||||
+ if (area.x == -1 && area.y == -1 && area.width == 0 && area.height == 0) {
|
||||
+ area.x = 0;
|
||||
+ area.y += gdk_window_get_height (ibusimcontext->client_window);
|
||||
+ }
|
||||
#else
|
||||
if (area.x == -1 && area.y == -1 && area.width == 0 && area.height == 0) {
|
||||
gint w, h;
|
||||
|
|
@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
|
|||
|
||||
PKGNAM=ibus
|
||||
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
|
||||
BUILD=${BUILD:-3}
|
||||
BUILD=${BUILD:-4}
|
||||
|
||||
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
|
||||
|
||||
|
@ -88,6 +88,8 @@ find . \
|
|||
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
|
||||
-exec chmod 644 {} \+
|
||||
|
||||
zcat $CWD/571e3b6e4f386abf12d3db70b9468e092c8d72bd.patch.gz | patch -p1 --verbose || exit 1
|
||||
|
||||
zcat $CWD/emoji-test.txt.gz > emoji-test.txt
|
||||
zcat $CWD/NamesList.txt.gz > NamesList.txt
|
||||
zcat $CWD/Blocks.txt.gz > Blocks.txt
|
||||
|
|
Loading…
Reference in a new issue