summaryrefslogtreecommitdiff
path: root/libre
diff options
context:
space:
mode:
Diffstat (limited to 'libre')
-rw-r--r--libre/filesystem/PKGBUILD259
-rw-r--r--libre/filesystem/crypttab11
-rw-r--r--libre/filesystem/env-generator3
-rw-r--r--libre/filesystem/filesystem.install65
-rw-r--r--libre/filesystem/fstab8
-rw-r--r--libre/filesystem/group39
-rw-r--r--libre/filesystem/gshadow39
-rw-r--r--libre/filesystem/host.conf8
-rw-r--r--libre/filesystem/hosts11
-rw-r--r--libre/filesystem/ld.so.conf7
-rw-r--r--libre/filesystem/nsswitch.conf11
-rw-r--r--libre/filesystem/os-release1
-rw-r--r--libre/filesystem/parabola.7.txt91
-rw-r--r--libre/filesystem/passwd13
-rw-r--r--libre/filesystem/profile19
-rw-r--r--libre/filesystem/resolv.conf10
-rw-r--r--libre/filesystem/securetty7
-rw-r--r--libre/filesystem/shadow11
-rw-r--r--libre/filesystem/shells7
-rw-r--r--libre/filesystem/sysusers28
-rw-r--r--libre/filesystem/tmpfiles17
21 files changed, 201 insertions, 464 deletions
diff --git a/libre/filesystem/PKGBUILD b/libre/filesystem/PKGBUILD
index cdccddd40..344d32877 100644
--- a/libre/filesystem/PKGBUILD
+++ b/libre/filesystem/PKGBUILD
@@ -1,163 +1,128 @@
# $Id: PKGBUILD 291699 2017-03-26 22:06:04Z seblu $
# Maintainer (Arch): Sébastien Luttringer
# Contributor (Arch): Tom Gundersen <teg@jklm.no>
-# Maintainer: Nicolás Reynolds <fauno@kiwwwi.com.ar>
+# Maintainer: Omar Vega Ramos <ovruni@gnu.org.pe>
+# Contributor: Nicolás Reynolds <fauno@kiwwwi.com.ar>
pkgname=filesystem
-pkgver=2017.03
-pkgrel=2.parabola2
+pkgver=2017.10
+pkgrel=2.parabola1
pkgdesc='Base Parabola GNU/Linux-libre files'
arch=('i686' 'x86_64' 'armv7h')
license=('GPL')
url='https://www.parabola.nu'
groups=('base' 'base-openrc')
-install='filesystem.install'
-makedepends=('asciidoc')
depends=('iana-etc')
replaces=(filesystem-parabola)
conflicts=(filesystem-parabola)
-backup=('etc/fstab' 'etc/crypttab' 'etc/group' 'etc/hosts' 'etc/ld.so.conf' 'etc/passwd'
- 'etc/shadow' 'etc/gshadow' 'etc/resolv.conf' 'etc/motd' 'etc/nsswitch.conf'
- 'etc/shells' 'etc/host.conf' 'etc/securetty' 'etc/profile' 'etc/issue')
-source=('group' 'issue' 'nsswitch.conf' 'securetty' 'host.conf' 'ld.so.conf'
- 'passwd' 'shadow' 'fstab' 'crypttab' 'hosts' 'motd' 'os-release' 'resolv.conf'
- 'shells' 'gshadow' 'profile' 'parabola.7.txt' 'locale.sh')
-md5sums=('76c80215d8dd395d3be4b8a711d585b6'
- '6be47d893fd49b2e4a8c0e811b350861'
- '7b21f0f97f048988908bf93778bba65f'
- '4c4540eeb748bf1f71d631b8c1dcf0b3'
- 'f28150d4c0b22a017be51b9f7f9977ed'
- '6e488ffecc8ba142c0cf7e2d7aeb832e'
- 'cb1a751b05541d8eebaace316de0e809'
- 'c0c27476ee248355bf308c8502a8c860'
- '693c97f2c9a519bb97a17008e92c2b74'
- 'dfae4294e5e20d9fcffefc35d18d7334'
- '7bc65f234dfb6abf24e7c3b03e86f4ff'
- 'd41d8cd98f00b204e9800998ecf8427e'
- 'b1035460b265c01a040ac99d5ad4631b'
- '6f48288b6fcaf0065fcb7b0e525413e0'
- '22518e922891f9359f971f4f5b4e793c'
- 'c08581d4f982be8806d3afa912a65203'
- 'cfa3345c485c59e681ab39a44dc7ece1'
- 'd5732ffdb3488e1383d4ea199343e767'
- '71ed98c52e11ada1f936ac8cb14eecd9')
-
-lint() {
- # ensure that passwd is sync'd to shadow and group is sync'd to gshadow.
- local r=0
-
- local passwd shadow group gshadow
-
- for f in passwd shadow group gshadow; do
- mapfile -t "$f" < <(cut -d: -f1 "$f" | sort)
- done
-
- # we can cheat and do simple string comparison only because we can make some
- # assumptions about the data in these files
- if [[ ${passwd[*]} != "${shadow[*]}" ]]; then
- error 'passwd is not in sync with shadow!'
- r=1
- fi
-
- if [[ ${group[*]} != "${gshadow[*]}" ]]; then
- error 'group is not in sync with gshadow!'
- r=1
- fi
-
- return $r
-}
-
-build() {
- cd "$srcdir"
-
- lint
-
- a2x -d manpage -f manpage parabola.7.txt
-}
+backup=('etc/crypttab' 'etc/fstab' 'etc/group' 'etc/gshadow' 'etc/host.conf'
+ 'etc/hosts' 'etc/issue' 'etc/ld.so.conf' 'etc/motd' 'etc/nsswitch.conf'
+ 'etc/passwd' 'etc/profile' 'etc/resolv.conf' 'etc/securetty'
+ 'etc/shadow' 'etc/shells')
+source=('crypttab' 'env-generator' 'fstab' 'group' 'gshadow' 'host.conf' 'hosts'
+ 'issue' 'ld.so.conf' 'locale.sh' 'motd' 'nsswitch.conf' 'os-release'
+ 'passwd' 'profile' 'resolv.conf' 'securetty' 'shadow' 'shells'
+ 'sysusers' 'tmpfiles')
+sha256sums=('e03bede3d258d680548696623d5979c6edf03272e801a813c81ba5a5c64f4f82'
+ 'ed0cb4f1db4021f8c3b5ce78fdf91d2c0624708f58f36c9cf867f4d93c3bc6da'
+ 'e54626e74ed8fee4173b62a545ab1c3a3a069e4217a0ee8fc398d9933e9c1696'
+ '244f0718ee2a9d6862ae59d6c18c1dd1568651eada91a704574fa527fbac2b3a'
+ '90d879374f77bac47f132164c1e7fc4892e994ff1d1ac376efa0c1c26ea37273'
+ '4d7b647169063dfedbff5e1e22cee77bd1a4183dbcfd5e802e68939da4bbf733'
+ 'd9cd8a77d9e0aa5e90d7f4ed74c8745c17b525e720e28e4c44364150003c35f9'
+ '3ad448c78cab733759ae3365620504b1444e854effd066f1c7174652f046ebe1'
+ 'dad04a370e488aa85fb0a813a5c83cf6fd981ce01883fc59685447b092de84b5'
+ '331805ff85b80ae2444be58740f1cf41be56fb6e254e930677f1e36e8f95bee1'
+ 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855'
+ 'c2d603373e1c6db0acdd79ec36cbe19920b5213d6b76f9d56b2a5010bad8d7cd'
+ '463dbccba0275ee80c532755c7048cb9ded83658a33a82f344aaf1520704f2ac'
+ '5e06477834f51abf42ea4e8dc199632afc6afbfd8c44354685a271e9a48d2c0a'
+ '1c410e2e90f5cc1252c1a6915db080f9d5f8fb47fae4cc6e85b78ed3c3fb9d17'
+ '5557d8e601b17a80d1ea7de78a9869be69637cb6a02fbfe334e22fdf64e61d4c'
+ 'd88be2b45b43605ff31dd83d6a138069b6c2e92bc8989b7b9ab9eba8da5f8c7b'
+ '8ce994663d7588143ad7ed4441b07f468f4f7d3590164dd73ddfa3ea307ece8e'
+ 'c390b31fffc4a2b5d78ae8c89f5317aadef1f71baac09cfb467b675db1406d61'
+ '04dd4cbe5078f5181176ade3a82f333e3f48091b118360d69cc45a3526503818'
+ '618ac097441c1f2daffc9967e5c3cd18ea8866f776db62d04bf401c53907b1c9')
package() {
- cd "$pkgdir"
-
- #
- # setup root filesystem
- #
- for d in boot dev etc home mnt usr var opt srv/http run; do
- install -d -m755 $d
- done
- install -d -m555 proc
- install -d -m555 sys
- install -d -m0750 root
- install -d -m1777 tmp
- # vsftpd won't run with write perms on /srv/ftp
- install -d -m555 -g ftp srv/ftp
-
- # setup /etc and /usr/share/factory/etc
- install -d etc/{ld.so.conf.d,skel,profile.d} usr/share/factory/etc
- for f in fstab group host.conf hosts issue ld.so.conf motd nsswitch.conf passwd resolv.conf securetty shells profile; do
- install -m644 "$srcdir"/$f etc/
- install -m644 "$srcdir"/$f usr/share/factory/etc/
- done
- ln -s ../proc/self/mounts etc/mtab
- for f in gshadow shadow crypttab; do
- install -m600 "$srcdir"/$f etc/
- install -m600 "$srcdir"/$f usr/share/factory/etc/
- done
- touch etc/parabola-release
- ln -sv parabola-release etc/arch-release
- install -m755 "$srcdir"/locale.sh etc/profile.d/locale.sh
- install -Dm644 "$srcdir"/os-release "$pkgdir"/usr/lib/os-release
-
- # setup /var
- for d in cache local opt log/old lib/misc empty; do
- install -d -m755 var/$d
- done
- install -d -m1777 var/{tmp,spool/mail}
-
- # allow setgid games to write scores
- install -d -m775 -g games var/games
- ln -s spool/mail var/mail
- ln -s ../run var/run
- ln -s ../run/lock var/lock
-
- #
- # setup /usr hierarchy
- #
- for d in bin include lib share/misc src; do
- install -d -m755 usr/$d
- done
- for d in $(seq 8); do
- install -d -m755 usr/share/man/man$d
- done
-
- #
- # add lib symlinks
- #
- ln -s usr/lib "$pkgdir"/lib
- [[ $CARCH = 'x86_64' ]] && (
- ln -s usr/lib "$pkgdir"/lib64
- ln -s lib "$pkgdir"/usr/lib64
- )
-
- #
- # add bin symlinks
- #
- ln -s usr/bin "$pkgdir"/bin
- ln -s usr/bin "$pkgdir"/sbin
- ln -s bin "$pkgdir"/usr/sbin
-
- #
- # install parabola(7) manpage
- #
- install -D -m644 "$srcdir"/parabola.7 usr/share/man/man7/parabola.7
-
- #
- # setup /usr/local hierarchy
- #
- for d in bin etc games include lib man sbin share src; do
- install -d -m755 usr/local/$d
- done
- ln -s ../man usr/local/share/man
-
- # remove conflict with systemd
- rm usr/share/factory/etc/nsswitch.conf
+ cd "$pkgdir"
+
+ # setup root filesystem
+ for d in boot dev etc home mnt usr var opt srv/http run; do
+ install -d -m755 $d
+ done
+ install -d -m555 proc
+ install -d -m555 sys
+ install -d -m0750 root
+ install -d -m1777 tmp
+ # vsftpd won't run with write perms on /srv/ftp
+ # ftp (uid 14/gid 11)
+ install -d -m555 -g 11 srv/ftp
+
+ # setup /etc and /usr/share/factory/etc
+ install -d etc/{ld.so.conf.d,skel,profile.d} usr/share/factory/etc
+ for f in fstab group host.conf hosts issue ld.so.conf motd nsswitch.conf \
+ passwd resolv.conf securetty shells profile; do
+ install -m644 "$srcdir"/$f etc/
+ install -m644 "$srcdir"/$f usr/share/factory/etc/
+ done
+ ln -s ../proc/self/mounts etc/mtab
+ for f in gshadow shadow crypttab; do
+ install -m600 "$srcdir"/$f etc/
+ install -m600 "$srcdir"/$f usr/share/factory/etc/
+ done
+ touch etc/parabola-release
+ ln -sv parabola-release etc/arch-release
+ install -m755 "$srcdir"/locale.sh etc/profile.d/locale.sh
+ install -Dm644 "$srcdir"/os-release usr/lib/os-release
+
+ # setup /var
+ for d in cache local opt log/old lib/misc empty; do
+ install -d -m755 var/$d
+ done
+ install -d -m1777 var/{tmp,spool/mail}
+
+ # allow setgid games (gid 50) to write scores
+ install -d -m775 -g 50 var/games
+ ln -s spool/mail var/mail
+ ln -s ../run var/run
+ ln -s ../run/lock var/lock
+
+ # setup /usr hierarchy
+ for d in bin include lib share/misc src; do
+ install -d -m755 usr/$d
+ done
+ for d in {1..8}; do
+ install -d -m755 usr/share/man/man$d
+ done
+
+ # add lib symlinks
+ ln -s usr/lib lib
+ [[ $CARCH = 'x86_64' ]] && {
+ ln -s usr/lib lib64
+ ln -s lib usr/lib64
+ }
+
+ # add bin symlinks
+ ln -s usr/bin bin
+ ln -s usr/bin sbin
+ ln -s bin usr/sbin
+
+ # setup /usr/local hierarchy
+ for d in bin etc games include lib man sbin share src; do
+ install -d -m755 usr/local/$d
+ done
+ ln -s ../man usr/local/share/man
+
+ # setup systemd-sysusers
+ install -D -m644 "$srcdir"/sysusers usr/lib/sysusers.d/parabola.conf
+ ln -sv parabola.conf usr/lib/sysusers.d/arch.conf
+
+ # setup systemd-tmpfiles
+ install -D -m644 "$srcdir"/tmpfiles usr/lib/tmpfiles.d/parabola.conf
+ ln -sv parabola.conf usr/lib/tmpfiles.d/arch.conf
+
+ # setup systemd.environment-generator
+ install -D -m755 "$srcdir"/env-generator usr/lib/systemd/system-environment-generators/10-arch
}
diff --git a/libre/filesystem/crypttab b/libre/filesystem/crypttab
index 96065a060..3dbc8a46c 100644
--- a/libre/filesystem/crypttab
+++ b/libre/filesystem/crypttab
@@ -1,11 +1,6 @@
-# crypttab: mappings for encrypted partitions
-#
-# Each mapped device will be created in /dev/mapper, so your /etc/fstab
-# should use the /dev/mapper/<name> paths for encrypted devices.
-#
-# The Arch/Parabola specific syntax has been deprecated, see crypttab(5) for the
-# new supported syntax.
-#
+# Configuration for encrypted block devices.
+# See crypttab(5) for details.
+
# NOTE: Do not list your root (/) partition here, it must be set up
# beforehand by the initramfs (/etc/mkinitcpio.conf).
diff --git a/libre/filesystem/env-generator b/libre/filesystem/env-generator
new file mode 100644
index 000000000..5f6391407
--- /dev/null
+++ b/libre/filesystem/env-generator
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+echo 'PATH=/usr/local/sbin:/usr/local/bin:/usr/bin'
diff --git a/libre/filesystem/filesystem.install b/libre/filesystem/filesystem.install
deleted file mode 100644
index 478c049e7..000000000
--- a/libre/filesystem/filesystem.install
+++ /dev/null
@@ -1,65 +0,0 @@
-# args: <group> [options]
-_addgroup() {
- if ! getent group "$1" >/dev/null && groupadd "$@" >/dev/null; then
- need_group_update=1
- fi
-}
-
-# args: <group> [options]
-_adduser() {
- if ! getent passwd "$1" >/dev/null && useradd "$@" >/dev/null; then
- need_passwd_update=1
- fi
-}
-
-post_upgrade() {
- _addgroup optical -g 93
- _addgroup audio -g 92
- _addgroup video -g 91
- _addgroup floppy -g 94
- _addgroup storage -g 95
- _addgroup log -g 19
- _addgroup utmp -g 20
- _addgroup power -g 98
- _addgroup network -g 90
- _addgroup games -g 50
- _addgroup uucp -g 14
- _addgroup proc -g 26
- _addgroup http -g 33
- _adduser http -u 33 -d /srv/http -g http -s /usr/bin/nologin
- _addgroup scanner -g 96
- _addgroup rfkill -g 24
- _addgroup lock -g 54
- _addgroup input -g 97
- _addgroup systemd-journal -g 190
- _addgroup systemd-journal-gateway -g 191
- _adduser systemd-journal-gateway -u 191 -g 191 -d / -s /usr/bin/nologin
- _addgroup systemd-timesync -g 192
- _adduser systemd-timesync -u 192 -g 192 -d / -s /usr/bin/nologin
- _addgroup systemd-network -g 193
- _adduser systemd-network -u 193 -g 193 -d / -s /usr/bin/nologin
- _addgroup systemd-bus-proxy -g 194
- _adduser systemd-bus-proxy -u 194 -g 194 -d / -s /usr/bin/nologin
- _addgroup systemd-resolve -g 195
- _adduser systemd-resolve -u 195 -g 195 -d / -s /usr/bin/nologin
-
- # update shadow files if needed
- if (( need_group_update )); then
- grpconv >/dev/null
- fi
-
- if (( need_passwd_update )); then
- pwconv >/dev/null
- fi
-
- if ! grep -q '^include /etc/ld.so.conf.d/\*.conf$' etc/ld.so.conf; then
- echo 'include /etc/ld.so.conf.d/*.conf' >> etc/ld.so.conf
- fi
-
- # set "Last password change" > 0; otherwise su $user wont work
- for user in bin daemon mail ftp http nobody; do
- if LANG=C chage -l ${user} | grep -q 'password must be changed'; then
- chage -d 14871 ${user}
- fi
- done
-}
diff --git a/libre/filesystem/fstab b/libre/filesystem/fstab
index b6716c14a..903906d27 100644
--- a/libre/filesystem/fstab
+++ b/libre/filesystem/fstab
@@ -1,4 +1,4 @@
-#
-# /etc/fstab: static file system information
-#
-# <file system> <dir> <type> <options> <dump> <pass>
+# Static information about the filesystems.
+# See fstab(5) for details.
+
+# <file system> <dir> <type> <options> <dump> <pass>
diff --git a/libre/filesystem/group b/libre/filesystem/group
index 2e6dcef93..18acc30a0 100644
--- a/libre/filesystem/group
+++ b/libre/filesystem/group
@@ -1,40 +1 @@
root:x:0:root
-bin:x:1:root,bin,daemon
-daemon:x:2:root,bin,daemon
-sys:x:3:root,bin
-adm:x:4:root,daemon
-tty:x:5:
-disk:x:6:root
-lp:x:7:daemon
-mem:x:8:
-kmem:x:9:
-wheel:x:10:root
-ftp:x:11:
-mail:x:12:
-uucp:x:14:
-log:x:19:root
-utmp:x:20:
-locate:x:21:
-rfkill:x:24:
-smmsp:x:25:
-proc:x:26:
-http:x:33:
-games:x:50:
-lock:x:54:
-network:x:90:
-video:x:91:
-audio:x:92:
-optical:x:93:
-floppy:x:94:
-storage:x:95:
-scanner:x:96:
-input:x:97:
-power:x:98:
-nobody:x:99:
-users:x:100:
-systemd-journal:x:190:
-systemd-journal-gateway:x:191:
-systemd-timesync:x:192:
-systemd-network:x:193:
-systemd-bus-proxy:x:194:
-systemd-resolve:x:195:
diff --git a/libre/filesystem/gshadow b/libre/filesystem/gshadow
index ac5396ee0..3d5d11168 100644
--- a/libre/filesystem/gshadow
+++ b/libre/filesystem/gshadow
@@ -1,40 +1 @@
root:::root
-bin:::root,bin,daemon
-daemon:::root,bin,daemon
-sys:::root,bin
-adm:::root,daemon
-tty:::
-disk:::root
-lp:::daemon
-mem:::
-kmem:::
-wheel:::root
-ftp:::
-mail:::
-uucp:::
-log:::root
-utmp:x::
-locate:::
-rfkill:x::
-smmsp:::
-proc:::
-http:::
-games:::
-lock:::
-network:x::
-video:x::
-audio:::
-optical:::
-floppy:x::
-storage:x::
-scanner:x::
-input:x::
-power:x::
-nobody:::
-users:::
-systemd-journal:::
-systemd-journal-gateway:::
-systemd-timesync:::
-systemd-network:::
-systemd-bus-proxy:::
-systemd-resolve:::
diff --git a/libre/filesystem/host.conf b/libre/filesystem/host.conf
index cf52fe561..f6df15f6b 100644
--- a/libre/filesystem/host.conf
+++ b/libre/filesystem/host.conf
@@ -1,8 +1,4 @@
-#
-# /etc/host.conf
-#
+# Resolver configuration file.
+# See host.conf(5) for details.
-order hosts,bind
multi on
-
-# End of file
diff --git a/libre/filesystem/hosts b/libre/filesystem/hosts
index 1747f9196..37a930617 100644
--- a/libre/filesystem/hosts
+++ b/libre/filesystem/hosts
@@ -1,9 +1,2 @@
-#
-# /etc/hosts: static lookup table for host names
-#
-
-#<ip-address> <hostname.domain.org> <hostname>
-127.0.0.1 localhost.localdomain localhost
-::1 localhost.localdomain localhost
-
-# End of file
+# Static table lookup for hostnames.
+# See hosts(5) for details.
diff --git a/libre/filesystem/ld.so.conf b/libre/filesystem/ld.so.conf
index dfac45683..1f620fa67 100644
--- a/libre/filesystem/ld.so.conf
+++ b/libre/filesystem/ld.so.conf
@@ -1,7 +1,4 @@
-#
-# /etc/ld.so.conf
-#
+# Dynamic linker/loader configuration.
+# See ld.so(8) and ldconfig(8) for details.
include /etc/ld.so.conf.d/*.conf
-
-# End of file
diff --git a/libre/filesystem/nsswitch.conf b/libre/filesystem/nsswitch.conf
index aeb95d44c..39f365655 100644
--- a/libre/filesystem/nsswitch.conf
+++ b/libre/filesystem/nsswitch.conf
@@ -1,8 +1,9 @@
-# Begin /etc/nsswitch.conf
+# Name Service Switch configuration file.
+# See nsswitch.conf(5) for details.
-passwd: compat mymachines systemd
-group: compat mymachines systemd
-shadow: compat
+passwd: files mymachines systemd
+group: files mymachines systemd
+shadow: files
publickey: files
@@ -15,5 +16,3 @@ ethers: files
rpc: files
netgroup: files
-
-# End /etc/nsswitch.conf
diff --git a/libre/filesystem/os-release b/libre/filesystem/os-release
index 768bfbc92..9dfb39d50 100644
--- a/libre/filesystem/os-release
+++ b/libre/filesystem/os-release
@@ -6,4 +6,3 @@ ANSI_COLOR="1;35"
HOME_URL="https://www.parabola.nu/"
SUPPORT_URL="irc://chat.freenode.net#parabola"
BUG_REPORT_URL="https://labs.parabola.nu/"
-
diff --git a/libre/filesystem/parabola.7.txt b/libre/filesystem/parabola.7.txt
deleted file mode 100644
index 60e1121e0..000000000
--- a/libre/filesystem/parabola.7.txt
+++ /dev/null
@@ -1,91 +0,0 @@
-/////
-vim:set ts=4 sw=4 syntax=asciidoc noet:
-/////
-parabola(7)
-============
-
-NAME
-----
-parabola - basic configuration
-
-SYNOPSIS
---------
-Overview of the basic configuration of Parabola GNU/Linux-libre.
-
-DESCRIPTION
------------
-Parabola exposes the user to the system without hiding any details.
-This man page gives a brief overview of the configuration files that should be set up on a fresh install.
-
-SYSTEM SERVICES[[S]]
---------------------
-System services to be started at boot can be enabled using 'systemctl enable <name>'.
-To view available services, use 'systemctl list-unit-files'.
-
-HOSTNAME[[H]]
--------------
-The hostname of the machine can be set using 'hostnamectl set-hostname <hostname>'.
-It will then be written to /etc/hostname.
-
-LOCALIZATION[[L]]
------------------
-Various locales may be enabled in /etc/locale.gen and are generated by 'locale-gen'.
-The system-wide locale to be used can be configured in /etc/locale.conf.
-These settings can be overridden on a per-user basis by keeping a user-specific locale.conf in $HOME/.config/locale.conf.
-The user-specific file will take precedence if it exists.
-
-VIRTUAL CONSOLE[[V]]
---------------------
-The virtual console is configured in /etc/vconsole.conf.
-It allows you to set a font and a keyboard layout, among other things.
-Note that these settings only apply to the console and do not apply if you use X.
-
-TIME[[T]]
----------
-The local time zone is configured by calling 'timedatectl set-timezone <Region/City>'.
-A relative *symlink* is then created from /etc/localtime to the correct zoneinfo file under /usr/share/zoneinfo/. For example,
-
- /etc/localtime -> ../usr/share/zoneinfo/Europe/Paris
-
-The real-time clock, which keeps track of time when the computer is off, can be configured to either
-be in UTC or in local time by calling 'timedatectl set-local-rtc <false|true>'.
-The default is UTC.
-
-FILE SYSTEMS[[F]]
------------------
-File systems are configured in /etc/fstab, and encryption mappings are configured in /etc/crypttab.
-
-INITRAMFS[[R]]
---------------
-The initramfs is generated by 'mkinitcpio -p <preset>'.
-The default preset is "linux-libre".
-The initramfs can be configured in /etc/mkinitcpio.conf and must be regenerated after making configuration changes.
-
-PACKAGE MANAGER[[P]]
---------------------
-The package manager, pacman, is configured in /etc/pacman.conf.
-
-BOOT LOADER[[B]]
-----------------
-GRUB's configuration is generated from /etc/default/grub by 'grub-mkconfig -o /boot/grub/grub.cfg'.
-Syslinux is configured in /boot/syslinux/syslinux.cfg.
-
-MODULES[[M]]
-------------
-Most modules should be loaded on-demand.
-Modules to be unconditionally loaded at boot can be specified in /etc/modules-load.d/,
-and modules to be blacklisted from automatically loading can be configured in /etc/modprobe.d/.
-
-SEE ALSO
---------
-
-*systemctl*(1), *hostnamectl*(1), *hostname*(5), *locale.conf*(5),
-*vconsole.conf*(5), *timedatectl*(1), *timezone*(3), *hwclock*(8),
-*fstab*(5), *crypttab*(5), *mkinitcpio*(8), *pacman*(8), *pacman.conf*(5),
-*grub-mkconfig*(8), *syslinux*(1), *modules-load.d*(5), *modprobe.d*(5),
-*systemd*(1)
-
-AUTHORS
--------
-Written by Tom Gundersen.
-Rebranded for Parabola by Nicolás Reynolds and André Silva.
diff --git a/libre/filesystem/passwd b/libre/filesystem/passwd
index c0987cef1..909d89bca 100644
--- a/libre/filesystem/passwd
+++ b/libre/filesystem/passwd
@@ -1,12 +1 @@
-root:x:0:0:root:/root:/bin/bash
-bin:x:1:1:bin:/bin:/usr/bin/nologin
-daemon:x:2:2:daemon:/:/usr/bin/nologin
-mail:x:8:12:mail:/var/spool/mail:/usr/bin/nologin
-ftp:x:14:11:ftp:/srv/ftp:/usr/bin/nologin
-http:x:33:33:http:/srv/http:/usr/bin/nologin
-nobody:x:99:99:nobody:/:/usr/bin/nologin
-systemd-journal-gateway:x:191:191:systemd-journal-gateway:/:/usr/bin/nologin
-systemd-timesync:x:192:192:systemd-timesync:/:/usr/bin/nologin
-systemd-network:x:193:193:systemd-network:/:/usr/bin/nologin
-systemd-bus-proxy:x:194:194:systemd-bus-proxy:/:/usr/bin/nologin
-systemd-resolve:x:195:195:systemd-resolve:/:/usr/bin/nologin
+root:x:0:0::/root:/bin/bash
diff --git a/libre/filesystem/profile b/libre/filesystem/profile
index 60c1821dd..f92cf3f74 100644
--- a/libre/filesystem/profile
+++ b/libre/filesystem/profile
@@ -1,10 +1,23 @@
# /etc/profile
-#Set our umask
+# Set our umask
umask 022
-# Set our default path
-PATH="/usr/local/sbin:/usr/local/bin:/usr/bin"
+# Append our default paths
+appendpath () {
+ case ":$PATH:" in
+ *:"$1":*)
+ ;;
+ *)
+ PATH="$PATH:$1"
+ esac
+}
+
+appendpath '/usr/local/sbin'
+appendpath '/usr/local/bin'
+appendpath '/usr/bin'
+unset appendpath
+
export PATH
# Load profiles from /etc/profile.d
diff --git a/libre/filesystem/resolv.conf b/libre/filesystem/resolv.conf
index cecafba03..7a7d4293c 100644
--- a/libre/filesystem/resolv.conf
+++ b/libre/filesystem/resolv.conf
@@ -1,8 +1,2 @@
-#
-# /etc/resolv.conf
-#
-
-#search <yourdomain.tld>
-#nameserver <ip>
-
-# End of file
+# Resolver configuration file.
+# See resolv.conf(5) for details.
diff --git a/libre/filesystem/securetty b/libre/filesystem/securetty
index 5a2235ce7..67fb10cff 100644
--- a/libre/filesystem/securetty
+++ b/libre/filesystem/securetty
@@ -1,6 +1,5 @@
-#
-# /etc/securetty
-#
+# File which lists terminals from which root can log in.
+# See securetty(5) for details.
console
tty1
@@ -11,5 +10,3 @@ tty5
tty6
ttyS0
hvc0
-
-# End of file
diff --git a/libre/filesystem/shadow b/libre/filesystem/shadow
index 9c99a6c34..7edfd69be 100644
--- a/libre/filesystem/shadow
+++ b/libre/filesystem/shadow
@@ -1,12 +1 @@
root::14871::::::
-bin:x:14871::::::
-daemon:x:14871::::::
-mail:x:14871::::::
-ftp:x:14871::::::
-http:x:14871::::::
-nobody:x:14871::::::
-systemd-journal-gateway:x:14871::::::
-systemd-timesync:x:14871::::::
-systemd-network:x:14871::::::
-systemd-bus-proxy:x:14871::::::
-systemd-resolve:x:14871::::::
diff --git a/libre/filesystem/shells b/libre/filesystem/shells
index 18c1aeffa..19324ea83 100644
--- a/libre/filesystem/shells
+++ b/libre/filesystem/shells
@@ -1,8 +1,5 @@
-#
-# /etc/shells
-#
+# Pathnames of valid login shells.
+# See shells(5) for details.
/bin/sh
/bin/bash
-
-# End of file
diff --git a/libre/filesystem/sysusers b/libre/filesystem/sysusers
new file mode 100644
index 000000000..432df2771
--- /dev/null
+++ b/libre/filesystem/sysusers
@@ -0,0 +1,28 @@
+# default parabola groups
+# groups first, because we have user/group id mismatch on ftp and mail
+g sys 3 - -
+g mem 8 - -
+g ftp 11 - -
+g mail 12 - -
+g log 19 - -
+g smmsp 25 - -
+g proc 26 - -
+g games 50 - -
+g lock 54 - -
+g network 90 - -
+g floppy 94 - -
+g scanner 96 - -
+g power 98 - -
+
+# default parabola users
+u bin 1 - -
+u daemon 2 - -
+u mail 8 - /var/spool/mail
+u ftp 14 - /srv/ftp
+u http 33 - /srv/http
+
+# default membership
+m bin daemon
+m bin sys
+m daemon adm
+m daemon bin
diff --git a/libre/filesystem/tmpfiles b/libre/filesystem/tmpfiles
new file mode 100644
index 000000000..8fc77b57f
--- /dev/null
+++ b/libre/filesystem/tmpfiles
@@ -0,0 +1,17 @@
+# copy from factory when missing
+
+C /etc/crypttab
+C /etc/fstab
+C /etc/group
+C /etc/gshadow
+C /etc/host.conf
+C /etc/hosts
+C /etc/issue
+C /etc/ld.so.conf
+C /etc/motd
+C /etc/nsswitch.conf
+C /etc/passwd
+C /etc/profile
+C /etc/securetty
+C /etc/shadow
+C /etc/shells