From b81a8cefb76c83103ebbbfc3a18883093be0b2f2 Mon Sep 17 00:00:00 2001 From: André Fabian Silva Delgado Date: Mon, 25 Aug 2014 01:03:08 -0300 Subject: pacman-parabola: add parabola suffix for the package --- libre/pacman-parabola/PKGBUILD | 115 ++++++++++++++++++++ libre/pacman-parabola/gpg.conf | 50 +++++++++ libre/pacman-parabola/makepkg.conf | 140 +++++++++++++++++++++++++ libre/pacman-parabola/pacman.conf.i686 | 103 ++++++++++++++++++ libre/pacman-parabola/pacman.conf.mips64el | 103 ++++++++++++++++++ libre/pacman-parabola/pacman.conf.x86_64 | 118 +++++++++++++++++++++ libre/pacman-parabola/refresh-pacman-keys | 3 + libre/pacman-parabola/sks-keyservers.netCA.pem | 32 ++++++ libre/pacman/PKGBUILD | 114 -------------------- libre/pacman/gpg.conf | 50 --------- libre/pacman/makepkg.conf | 140 ------------------------- libre/pacman/pacman.conf.i686 | 103 ------------------ libre/pacman/pacman.conf.mips64el | 103 ------------------ libre/pacman/pacman.conf.x86_64 | 118 --------------------- libre/pacman/refresh-pacman-keys | 3 - libre/pacman/sks-keyservers.netCA.pem | 32 ------ 16 files changed, 664 insertions(+), 663 deletions(-) create mode 100644 libre/pacman-parabola/PKGBUILD create mode 100644 libre/pacman-parabola/gpg.conf create mode 100644 libre/pacman-parabola/makepkg.conf create mode 100644 libre/pacman-parabola/pacman.conf.i686 create mode 100644 libre/pacman-parabola/pacman.conf.mips64el create mode 100644 libre/pacman-parabola/pacman.conf.x86_64 create mode 100644 libre/pacman-parabola/refresh-pacman-keys create mode 100644 libre/pacman-parabola/sks-keyservers.netCA.pem delete mode 100644 libre/pacman/PKGBUILD delete mode 100644 libre/pacman/gpg.conf delete mode 100644 libre/pacman/makepkg.conf delete mode 100644 libre/pacman/pacman.conf.i686 delete mode 100644 libre/pacman/pacman.conf.mips64el delete mode 100644 libre/pacman/pacman.conf.x86_64 delete mode 100644 libre/pacman/refresh-pacman-keys delete mode 100644 libre/pacman/sks-keyservers.netCA.pem (limited to 'libre') diff --git a/libre/pacman-parabola/PKGBUILD b/libre/pacman-parabola/PKGBUILD new file mode 100644 index 000000000..de3551045 --- /dev/null +++ b/libre/pacman-parabola/PKGBUILD @@ -0,0 +1,115 @@ +# vim: set ts=2 sw=2 et: +# $Id: PKGBUILD 211992 2014-05-04 02:54:25Z allan $ +# Maintainer (Arch): Dan McGee +# Maintainer (Arch): Dave Reisner + +_pkgname=pacman +pkgname=pacman-parabola +pkgver=4.1.2 +pkgrel=6 +pkgdesc="A library-based package manager with dependency support" +arch=('i686' 'x86_64' 'mips64el') +url="http://www.archlinux.org/pacman/" +license=('GPL') +groups=('base' 'base-devel') +depends=('bash>=4.2.042-2' 'glibc>=2.17-2' 'libarchive>=3.1.2' 'curl>=7.19.4' + 'gpgme' 'pacman-mirrorlist' 'archlinux-keyring' 'parabola-keyring' 'cacert-dot-org') +checkdepends=('python2' 'fakechroot') +optdepends=('fakeroot: for makepkg usage as normal user') +provides=('pacman-contrib' "$_pkgname") +conflicts=('pacman-contrib' "$_pkgname") +replaces=('pacman-contrib' "$_pkgname=$pkgver") +backup=(etc/pacman.conf etc/makepkg.conf) +options=('strip' 'debug') +source=(ftp://ftp.archlinux.org/other/pacman/$_pkgname-$pkgver.tar.gz{,.sig} + pacman.conf.i686 + pacman.conf.x86_64 + pacman.conf.mips64el + makepkg.conf + gpg.conf + sks-keyservers.netCA.pem + refresh-pacman-keys) +md5sums=('063c8b0ff6bdf903dc235445525627cd' + 'SKIP' + '688feb0a552f42643a76f72e7198bfe4' + '77c5fd379e73cf86fc08a4bd5c4b1ba1' + '9e0c64937ef751ae4273fa4d73381484' + 'f0f310df411f943dbc4e2dd376c88662' + '8c339b2bf027979d1edcfc6ac0e7e81d' + '3cfc5d2867a6672f4f629220632948f4' + '093f0779ac55ae781ba028ad74b95f84') + +build() { + cd "$_pkgname-$pkgver" + + ./configure --prefix=/usr --sysconfdir=/etc \ + --localstatedir=/var --enable-doc \ + --with-scriptlet-shell=/usr/bin/bash \ + --with-ldconfig=/usr/bin/ldconfig + make + make -C contrib +} + +check() { + make -C "$_pkgname-$pkgver" check +} + +package() { + cd "$_pkgname-$pkgver" + + make DESTDIR="$pkgdir" install + make DESTDIR="$pkgdir" -C contrib install + + # install Arch specific stuff + install -dm755 "$pkgdir/etc" + install -m644 "$srcdir/pacman.conf.$CARCH" "$pkgdir/etc/pacman.conf" + + case $CARCH in + i686) + mycarch="i686" + mychost="i686-pc-linux-gnu" + myflags="-march=i686 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4" + myldflags="-Wl,-O1,--sort-common,--as-needed,-z,relro,--hash-style=gnu" + ;; + x86_64) + mycarch="x86_64" + mychost="x86_64-unknown-linux-gnu" + myflags="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4" + myldflags="-Wl,-O1,--sort-common,--as-needed,-z,relro,--hash-style=gnu" + ;; + mips64el) + mycarch="mips64el" + mychost="mips64el-unknown-linux-gnu" + myflags="-O2 -march=mips3 -mtune=loongson2f -mabi=n32 -pipe -mplt -Wa,-mfix-loongson2f-nop -fstack-protector-strong --param=ssp-buffer-size=4" + myldflags="-Wl,-O1,--sort-common,--as-needed,-z,relro" + ;; + esac + + # set things correctly in the default conf file + install -m644 "$srcdir/makepkg.conf" "$pkgdir/etc" + sed -i "$pkgdir/etc/makepkg.conf" \ + -e "s|@CARCH[@]|$mycarch|g" \ + -e "s|@CHOST[@]|$mychost|g" \ + -e "s|@LDFLAGS[@]|$myldflags|g" \ + -e "s|@CARCHFLAGS[@]|$myflags|g" + + # put bash_completion in the right location + install -dm755 "$pkgdir/usr/share/bash-completion/completions" + mv "$pkgdir/etc/bash_completion.d/pacman" "$pkgdir/usr/share/bash-completion/completions" + rmdir "$pkgdir/etc/bash_completion.d" + + for f in makepkg pacman-key; do + ln -s pacman "$pkgdir/usr/share/bash-completion/completions/$f" + done + + install -Dm644 contrib/PKGBUILD.vim "$pkgdir/usr/share/vim/vimfiles/syntax/PKGBUILD.vim" + + install -Dm755 "${srcdir}/refresh-pacman-keys" \ + "${pkgdir}/etc/cron.weekly/refresh-pacman-keys" + + install -Dm644 "${srcdir}/sks-keyservers.netCA.pem" \ + "${pkgdir}/etc/pacman.d/sks-keyservers.netCA.pem" + + install -Dm644 "${srcdir}/gpg.conf" \ + "${pkgdir}/etc/pacman.d/gpg.conf" +} diff --git a/libre/pacman-parabola/gpg.conf b/libre/pacman-parabola/gpg.conf new file mode 100644 index 000000000..7fc6fc661 --- /dev/null +++ b/libre/pacman-parabola/gpg.conf @@ -0,0 +1,50 @@ +# pacman-key default options +no-greeting +no-permission-warning +lock-never +keyserver-options timeout=20 + +# From duraconf +# personal digest preferences +personal-digest-preferences SHA512 + +# message digest algorithm used when signing a key +cert-digest-algo SHA512 + +# Set the list of default preferences to string. +# used for new keys and default for "setpref" +default-preference-list SHA512 SHA384 SHA256 SHA224 AES256 AES192 AES CAST5 ZLIB BZIP2 ZIP Uncompressed + +# From +# https://crabgrass.riseup.net/riseuplabs+paow/openpgp-best-practices +# Only use secure keyservers +keyserver hkps://hkps.pool.sks-keyservers.net +keyserver-options ca-cert-file=~/.gnupg/sks-keyservers.netCA.pem +keyserver-options no-honor-keyserver-url + +# when outputting certificates, view user IDs distinctly from keys: +fixed-list-mode + +# short-keyids are trivially spoofed; it's easy to create a long-keyid +# collision; if you care about strong key identifiers, you always want +# to see the fingerprint: +keyid-format 0xlong +fingerprint + +# when multiple digests are supported by all recipients, choose the +# strongest one: +personal-digest-preferences SHA512 SHA384 SHA256 SHA224 + +# If you use a graphical environment (and even if you don't) +# you should be using an agent: (similar arguments as +# https://www.debian-administration.org/users/dkg/weblog/64) +use-agent + +# You should always know at a glance which User IDs gpg thinks are +# legitimately bound to the keys in your keyring: +verify-options show-uid-validity +list-options show-uid-validity + +# include an unambiguous indicator of which key made a signature: (see +# http://thread.gmane.org/gmane.mail.notmuch.general/3721/focus=7234) +sig-notation issuer-fpr@notations.openpgp.fifthhorseman.net=%g diff --git a/libre/pacman-parabola/makepkg.conf b/libre/pacman-parabola/makepkg.conf new file mode 100644 index 000000000..758d7d029 --- /dev/null +++ b/libre/pacman-parabola/makepkg.conf @@ -0,0 +1,140 @@ +# +# /etc/makepkg.conf +# + +######################################################################### +# SOURCE ACQUISITION +######################################################################### +# +#-- The download utilities that makepkg should use to acquire sources +# Format: 'protocol::agent' +DLAGENTS=('ftp::/usr/bin/curl -fC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u' + 'http::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u' + 'https::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u' + 'rsync::/usr/bin/rsync --no-motd -z %u %o' + 'scp::/usr/bin/scp -C %u %o') + +# Other common tools: +# /usr/bin/snarf +# /usr/bin/lftpget -c +# /usr/bin/wget + +######################################################################### +# ARCHITECTURE, COMPILE FLAGS +######################################################################### +# +CARCH="@CARCH@" +CHOST="@CHOST@" + +#-- Compiler and Linker Flags +# -march (or -mcpu) builds exclusively for an architecture +# -mtune optimizes for an architecture, but builds for whole processor family +CPPFLAGS="-D_FORTIFY_SOURCE=2" +CFLAGS="@CARCHFLAGS@" +CXXFLAGS="@CARCHFLAGS@" +LDFLAGS="@LDFLAGS@" +#-- Make Flags: change this for DistCC/SMP systems +#MAKEFLAGS="-j2" +#-- Debugging flags +DEBUG_CFLAGS="-g -fvar-tracking-assignments" +DEBUG_CXXFLAGS="-g -fvar-tracking-assignments" + +######################################################################### +# BUILD ENVIRONMENT +######################################################################### +# +# Defaults: BUILDENV=(fakeroot !distcc color !ccache check !sign) +# A negated environment option will do the opposite of the comments below. +# +#-- fakeroot: Allow building packages as a non-root user +#-- distcc: Use the Distributed C/C++/ObjC compiler +#-- color: Colorize output messages +#-- ccache: Use ccache to cache compilation +#-- check: Run the check() function if present in the PKGBUILD +#-- sign: Generate PGP signature file +# +BUILDENV=(fakeroot !distcc color !ccache check !sign) +# +#-- If using DistCC, your MAKEFLAGS will also need modification. In addition, +#-- specify a space-delimited list of hosts running in the DistCC cluster. +#DISTCC_HOSTS="" +# +#-- Specify a directory for package building. +#BUILDDIR=/tmp/makepkg + +######################################################################### +# GLOBAL PACKAGE OPTIONS +# These are default values for the options=() settings +######################################################################### +# +# Default: OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !upx !debug) +# A negated option will do the opposite of the comments below. +# +#-- strip: Strip symbols from binaries/libraries +#-- docs: Save doc directories specified by DOC_DIRS +#-- libtool: Leave libtool (.la) files in packages +#-- staticlibs: Leave static library (.a) files in packages +#-- emptydirs: Leave empty directories in packages +#-- zipman: Compress manual (man and info) pages in MAN_DIRS with gzip +#-- purge: Remove files specified by PURGE_TARGETS +#-- upx: Compress binary executable files using UPX +#-- debug: Add debugging flags as specified in DEBUG_* variables +# +OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !upx !debug) + +#-- File integrity checks to use. Valid: md5, sha1, sha256, sha384, sha512 +INTEGRITY_CHECK=(md5) +#-- Options to be used when stripping binaries. See `man strip' for details. +STRIP_BINARIES="--strip-all" +#-- Options to be used when stripping shared libraries. See `man strip' for details. +STRIP_SHARED="--strip-unneeded" +#-- Options to be used when stripping static libraries. See `man strip' for details. +STRIP_STATIC="--strip-debug" +#-- Manual (man and info) directories to compress (if zipman is specified) +MAN_DIRS=({usr{,/local}{,/share},opt/*}/{man,info}) +#-- Doc directories to remove (if !docs is specified) +DOC_DIRS=(usr/{,local/}{,share/}{doc,gtk-doc} opt/*/{doc,gtk-doc}) +#-- Files to be removed from all packages (if purge is specified) +PURGE_TARGETS=(usr/{,share}/info/dir .packlist *.pod) + +######################################################################### +# PACKAGE OUTPUT +######################################################################### +# +# Default: put built package and cached source in build directory +# +#-- Destination: specify a fixed directory where all packages will be placed +#PKGDEST=/home/packages +#-- Source cache: specify a fixed directory where source files will be cached +#SRCDEST=/home/sources +#-- Source packages: specify a fixed directory where all src packages will be placed +#SRCPKGDEST=/home/srcpackages +#-- Log files: specify a fixed directory where all log files will be placed +#LOGDEST=/home/makepkglogs +#-- Packager: name/email of the person or organization building packages +#PACKAGER="John Doe " +#-- Specify a key to use for package signing +#GPGKEY="" + +######################################################################### +# COMPRESSION DEFAULTS +######################################################################### +# +COMPRESSGZ=(gzip -c -f -n) +COMPRESSBZ2=(bzip2 -c -f) +COMPRESSXZ=(xz -c -z -) +COMPRESSLRZ=(lrzip -q) +COMPRESSLZO=(lzop -q) +COMPRESSZ=(compress -c -f) + +######################################################################### +# EXTENSION DEFAULTS +######################################################################### +# +# WARNING: Do NOT modify these variables unless you know what you are +# doing. +# +PKGEXT='.pkg.tar.xz' +SRCEXT='.src.tar.gz' + +# vim: set ft=sh ts=2 sw=2 et: diff --git a/libre/pacman-parabola/pacman.conf.i686 b/libre/pacman-parabola/pacman.conf.i686 new file mode 100644 index 000000000..84cec630c --- /dev/null +++ b/libre/pacman-parabola/pacman.conf.i686 @@ -0,0 +1,103 @@ +# +# /etc/pacman.conf +# +# See the pacman.conf(5) manpage for option and repository directives + +# +# GENERAL OPTIONS +# +[options] +# The following paths are commented out with their default values listed. +# If you wish to use different paths, uncomment and update the paths. +#RootDir = / +#DBPath = /var/lib/pacman/ +#CacheDir = /var/cache/pacman/pkg/ +#LogFile = /var/log/pacman.log +#GPGDir = /etc/pacman.d/gnupg/ +HoldPkg = pacman glibc +#XferCommand = /usr/bin/curl -C - -f %u > %o +#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u +#CleanMethod = KeepInstalled +#UseDelta = 0.7 +Architecture = auto + +# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup +#IgnorePkg = +#IgnoreGroup = + +#NoUpgrade = +#NoExtract = + +# Misc options +#UseSyslog +#Color +#TotalDownload +CheckSpace +#VerbosePkgLists + +# By default, pacman accepts packages signed by keys that its local keyring +# trusts (see pacman-key and its man page), as well as unsigned packages. +SigLevel = Required DatabaseOptional +LocalFileSigLevel = Optional +#RemoteFileSigLevel = Required + +# NOTE: You must run `pacman-key --init` before first using pacman; the local +# keyring can then be populated with the keys of all official Arch Linux +# packagers with `pacman-key --populate archlinux`. + +# +# REPOSITORIES +# - can be defined here or included from another file +# - pacman will search repositories in the order defined here +# - local/custom mirrors can be added here or in separate files +# - repositories listed first will take precedence when packages +# have identical names, regardless of version number +# - URLs will have $repo replaced by the name of the current repo +# - URLs will have $arch replaced by the name of the architecture +# +# Repository entries are of the format: +# [repo-name] +# Server = ServerName +# Include = IncludePath +# +# The header [repo-name] is crucial - it must be present and +# uncommented to enable the repo. +# + +# The testing repositories are disabled by default. To enable, uncomment the +# repo name header and Include lines. You can add preferred servers immediately +# after the header, and they will be used before the default mirrors. + +#[libre-testing] +#Include = /etc/pacman.d/mirrorlist + +[libre] +Include = /etc/pacman.d/mirrorlist + +#[testing] +#Include = /etc/pacman.d/mirrorlist + +[core] +Include = /etc/pacman.d/mirrorlist + +[extra] +Include = /etc/pacman.d/mirrorlist + +#[community-testing] +#Include = /etc/pacman.d/mirrorlist + +[community] +Include = /etc/pacman.d/mirrorlist + +# Parabola also supports community projects and personal repositories, to find +# them check out this wiki page: https://wiki.parabolagnulinux.org/Repositories + +# Parabola community repo +#[pcr] +#Include = /etc/pacman.d/mirrorlist + +# An example of a custom package repository. See the pacman manpage for +# tips on creating your own repositories. +#[custom] +#SigLevel = Optional TrustAll +#Server = file:///home/custompkgs diff --git a/libre/pacman-parabola/pacman.conf.mips64el b/libre/pacman-parabola/pacman.conf.mips64el new file mode 100644 index 000000000..604040640 --- /dev/null +++ b/libre/pacman-parabola/pacman.conf.mips64el @@ -0,0 +1,103 @@ +# +# /etc/pacman.conf +# +# See the pacman.conf(5) manpage for option and repository directives + +# +# GENERAL OPTIONS +# +[options] +# The following paths are commented out with their default values listed. +# If you wish to use different paths, uncomment and update the paths. +#RootDir = / +#DBPath = /var/lib/pacman/ +#CacheDir = /var/cache/pacman/pkg/ +#LogFile = /var/log/pacman.log +#GPGDir = /etc/pacman.d/gnupg/ +HoldPkg = pacman glibc +#XferCommand = /usr/bin/curl -C - -f %u > %o +#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u +#CleanMethod = KeepInstalled +#UseDelta = 0.7 +Architecture = mips64el + +# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup +#IgnorePkg = +#IgnoreGroup = + +#NoUpgrade = +#NoExtract = + +# Misc options +#UseSyslog +#Color +#TotalDownload +CheckSpace +#VerbosePkgLists + +# By default, pacman accepts packages signed by keys that its local keyring +# trusts (see pacman-key and its man page), as well as unsigned packages. +SigLevel = Required DatabaseOptional +LocalFileSigLevel = Optional +#RemoteFileSigLevel = Required + +# NOTE: You must run `pacman-key --init` before first using pacman; the local +# keyring can then be populated with the keys of all official Arch Linux +# packagers with `pacman-key --populate archlinux`. + +# +# REPOSITORIES +# - can be defined here or included from another file +# - pacman will search repositories in the order defined here +# - local/custom mirrors can be added here or in separate files +# - repositories listed first will take precedence when packages +# have identical names, regardless of version number +# - URLs will have $repo replaced by the name of the current repo +# - URLs will have $arch replaced by the name of the architecture +# +# Repository entries are of the format: +# [repo-name] +# Server = ServerName +# Include = IncludePath +# +# The header [repo-name] is crucial - it must be present and +# uncommented to enable the repo. +# + +# The testing repositories are disabled by default. To enable, uncomment the +# repo name header and Include lines. You can add preferred servers immediately +# after the header, and they will be used before the default mirrors. + +#[libre-testing] +#Include = /etc/pacman.d/mirrorlist + +[libre] +Include = /etc/pacman.d/mirrorlist + +#[testing] +#Include = /etc/pacman.d/mirrorlist + +[core] +Include = /etc/pacman.d/mirrorlist + +[extra] +Include = /etc/pacman.d/mirrorlist + +#[community-testing] +#Include = /etc/pacman.d/mirrorlist + +[community] +Include = /etc/pacman.d/mirrorlist + +# Parabola also supports community projects and personal repositories, to find +# them check out this wiki page: https://wiki.parabolagnulinux.org/Repositories + +# Parabola community repo +#[pcr] +#Include = /etc/pacman.d/mirrorlist + +# An example of a custom package repository. See the pacman manpage for +# tips on creating your own repositories. +#[custom] +#SigLevel = Optional TrustAll +#Server = file:///home/custompkgs diff --git a/libre/pacman-parabola/pacman.conf.x86_64 b/libre/pacman-parabola/pacman.conf.x86_64 new file mode 100644 index 000000000..03a8cf3a6 --- /dev/null +++ b/libre/pacman-parabola/pacman.conf.x86_64 @@ -0,0 +1,118 @@ +# +# /etc/pacman.conf +# +# See the pacman.conf(5) manpage for option and repository directives + +# +# GENERAL OPTIONS +# +[options] +# The following paths are commented out with their default values listed. +# If you wish to use different paths, uncomment and update the paths. +#RootDir = / +#DBPath = /var/lib/pacman/ +#CacheDir = /var/cache/pacman/pkg/ +#LogFile = /var/log/pacman.log +#GPGDir = /etc/pacman.d/gnupg/ +HoldPkg = pacman glibc +#XferCommand = /usr/bin/curl -C - -f %u > %o +#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u +#CleanMethod = KeepInstalled +#UseDelta = 0.7 +Architecture = auto + +# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup +#IgnorePkg = +#IgnoreGroup = + +#NoUpgrade = +#NoExtract = + +# Misc options +#UseSyslog +#Color +#TotalDownload +CheckSpace +#VerbosePkgLists + +# By default, pacman accepts packages signed by keys that its local keyring +# trusts (see pacman-key and its man page), as well as unsigned packages. +SigLevel = Required DatabaseOptional +LocalFileSigLevel = Optional +#RemoteFileSigLevel = Required + +# NOTE: You must run `pacman-key --init` before first using pacman; the local +# keyring can then be populated with the keys of all official Arch Linux +# packagers with `pacman-key --populate archlinux`. + +# +# REPOSITORIES +# - can be defined here or included from another file +# - pacman will search repositories in the order defined here +# - local/custom mirrors can be added here or in separate files +# - repositories listed first will take precedence when packages +# have identical names, regardless of version number +# - URLs will have $repo replaced by the name of the current repo +# - URLs will have $arch replaced by the name of the architecture +# +# Repository entries are of the format: +# [repo-name] +# Server = ServerName +# Include = IncludePath +# +# The header [repo-name] is crucial - it must be present and +# uncommented to enable the repo. +# + +# The testing repositories are disabled by default. To enable, uncomment the +# repo name header and Include lines. You can add preferred servers immediately +# after the header, and they will be used before the default mirrors. + +#[libre-testing] +#Include = /etc/pacman.d/mirrorlist + +[libre] +Include = /etc/pacman.d/mirrorlist + +#[testing] +#Include = /etc/pacman.d/mirrorlist + +[core] +Include = /etc/pacman.d/mirrorlist + +[extra] +Include = /etc/pacman.d/mirrorlist + +#[community-testing] +#Include = /etc/pacman.d/mirrorlist + +[community] +Include = /etc/pacman.d/mirrorlist + +# If you want to run 32 bit applications on your x86_64 system, +# enable the libre-multilib and multilib repositories as required here. + +#[libre-multilib-testing] +#Include = /etc/pacman.d/mirrorlist + +#[libre-multilib] +#Include = /etc/pacman.d/mirrorlist + +#[multilib-testing] +#Include = /etc/pacman.d/mirrorlist + +#[multilib] +#Include = /etc/pacman.d/mirrorlist + +# Parabola also supports community projects and personal repositories, to find +# them check out this wiki page: https://wiki.parabolagnulinux.org/Repositories + +# Parabola community repo +#[pcr] +#Include = /etc/pacman.d/mirrorlist + +# An example of a custom package repository. See the pacman manpage for +# tips on creating your own repositories. +#[custom] +#SigLevel = Optional TrustAll +#Server = file:///home/custompkgs diff --git a/libre/pacman-parabola/refresh-pacman-keys b/libre/pacman-parabola/refresh-pacman-keys new file mode 100644 index 000000000..e96dc34e5 --- /dev/null +++ b/libre/pacman-parabola/refresh-pacman-keys @@ -0,0 +1,3 @@ +#!/bin/bash + +pacman-key --refresh-keys diff --git a/libre/pacman-parabola/sks-keyservers.netCA.pem b/libre/pacman-parabola/sks-keyservers.netCA.pem new file mode 100644 index 000000000..24a2ad2e8 --- /dev/null +++ b/libre/pacman-parabola/sks-keyservers.netCA.pem @@ -0,0 +1,32 @@ +-----BEGIN CERTIFICATE----- +MIIFizCCA3OgAwIBAgIJAK9zyLTPn4CPMA0GCSqGSIb3DQEBBQUAMFwxCzAJBgNV +BAYTAk5PMQ0wCwYDVQQIDARPc2xvMR4wHAYDVQQKDBVza3Mta2V5c2VydmVycy5u +ZXQgQ0ExHjAcBgNVBAMMFXNrcy1rZXlzZXJ2ZXJzLm5ldCBDQTAeFw0xMjEwMDkw +MDMzMzdaFw0yMjEwMDcwMDMzMzdaMFwxCzAJBgNVBAYTAk5PMQ0wCwYDVQQIDARP +c2xvMR4wHAYDVQQKDBVza3Mta2V5c2VydmVycy5uZXQgQ0ExHjAcBgNVBAMMFXNr +cy1rZXlzZXJ2ZXJzLm5ldCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoC +ggIBANdsWy4PXWNUCkS3L//nrd0GqN3dVwoBGZ6w94Tw2jPDPifegwxQozFXkG6I +6A4TK1CJLXPvfz0UP0aBYyPmTNadDinaB9T4jIwd4rnxl+59GiEmqkN3IfPsv5Jj +MkKUmJnvOT0DEVlEaO1UZIwx5WpfprB3mR81/qm4XkAgmYrmgnLXd/pJDAMk7y1F +45b5zWofiD5l677lplcIPRbFhpJ6kDTODXh/XEdtF71EAeaOdEGOvyGDmCO0GWqS +FDkMMPTlieLA/0rgFTcz4xwUYj/cD5e0ZBuSkYsYFAU3hd1cGfBue0cPZaQH2HYx +Qk4zXD8S3F4690fRhr+tki5gyG6JDR67aKp3BIGLqm7f45WkX1hYp+YXywmEziM4 +aSbGYhx8hoFGfq9UcfPEvp2aoc8u5sdqjDslhyUzM1v3m3ZGbhwEOnVjljY6JJLx +MxagxnZZSAY424ZZ3t71E/Mn27dm2w+xFRuoy8JEjv1d+BT3eChM5KaNwrj0IO/y +u8kFIgWYA1vZ/15qMT+tyJTfyrNVV/7Df7TNeWyNqjJ5rBmt0M6NpHG7CrUSkBy9 +p8JhimgjP5r0FlEkgg+lyD+V79H98gQfVgP3pbJICz0SpBQf2F/2tyS4rLm+49rP +fcOajiXEuyhpcmzgusAj/1FjrtlynH1r9mnNaX4e+rLWzvU5AgMBAAGjUDBOMB0G +A1UdDgQWBBTkwyoJFGfYTVISTpM8E+igjdq28zAfBgNVHSMEGDAWgBTkwyoJFGfY +TVISTpM8E+igjdq28zAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4ICAQAR +OXnYwu3g1ZjHyley3fZI5aLPsaE17cOImVTehC8DcIphm2HOMR/hYTTL+V0G4P+u +gH+6xeRLKSHMHZTtSBIa6GDL03434y9CBuwGvAFCMU2GV8w92/Z7apkAhdLToZA/ +X/iWP2jeaVJhxgEcH8uPrnSlqoPBcKC9PrgUzQYfSZJkLmB+3jEa3HKruy1abJP5 +gAdQvwvcPpvYRnIzUc9fZODsVmlHVFBCl2dlu/iHh2h4GmL4Da2rRkUMlbVTdioB +UYIvMycdOkpH5wJftzw7cpjsudGas0PARDXCFfGyKhwBRFY7Xp7lbjtU5Rz0Gc04 +lPrhDf0pFE98Aw4jJRpFeWMjpXUEaG1cq7D641RpgcMfPFvOHY47rvDTS7XJOaUT +BwRjmDt896s6vMDcaG/uXJbQjuzmmx3W2Idyh3s5SI0GTHb0IwMKYb4eBUIpQOnB +cE77VnCYqKvN1NVYAqhWjXbY7XasZvszCRcOG+W3FqNaHOK/n/0ueb0uijdLan+U +f4p1bjbAox8eAOQS/8a3bzkJzdyBNUKGx1BIK2IBL9bn/HravSDOiNRSnZ/R3l9G +ZauX0tu7IIDlRCILXSyeazu0aj/vdT3YFQXPcvt5Fkf5wiNTo53f72/jYEJd6qph +WrpoKqrwGwTpRUCMhYIUt65hsTxCiJJ5nKe39h46sg== +-----END CERTIFICATE----- diff --git a/libre/pacman/PKGBUILD b/libre/pacman/PKGBUILD deleted file mode 100644 index 774d45321..000000000 --- a/libre/pacman/PKGBUILD +++ /dev/null @@ -1,114 +0,0 @@ -# vim: set ts=2 sw=2 et: -# $Id: PKGBUILD 211992 2014-05-04 02:54:25Z allan $ -# Maintainer (Arch): Dan McGee -# Maintainer (Arch): Dave Reisner - -pkgname=pacman -pkgver=4.1.2 -pkgrel=6.1 -pkgdesc="A library-based package manager with dependency support" -arch=('i686' 'x86_64' 'mips64el') -url="http://www.archlinux.org/pacman/" -license=('GPL') -groups=('base' 'base-devel') -depends=('bash>=4.2.042-2' 'glibc>=2.17-2' 'libarchive>=3.1.2' 'curl>=7.19.4' - 'gpgme' 'pacman-mirrorlist' 'archlinux-keyring' 'parabola-keyring' 'cacert-dot-org') -checkdepends=('python2' 'fakechroot') -optdepends=('fakeroot: for makepkg usage as normal user') -provides=('pacman-contrib') -conflicts=('pacman-contrib') -replaces=('pacman-contrib') -backup=(etc/pacman.conf etc/makepkg.conf) -options=('strip' 'debug') -source=(ftp://ftp.archlinux.org/other/pacman/$pkgname-$pkgver.tar.gz{,.sig} - pacman.conf.i686 - pacman.conf.x86_64 - pacman.conf.mips64el - makepkg.conf - gpg.conf - sks-keyservers.netCA.pem - refresh-pacman-keys) -md5sums=('063c8b0ff6bdf903dc235445525627cd' - 'SKIP' - '688feb0a552f42643a76f72e7198bfe4' - '77c5fd379e73cf86fc08a4bd5c4b1ba1' - '9e0c64937ef751ae4273fa4d73381484' - 'f0f310df411f943dbc4e2dd376c88662' - '8c339b2bf027979d1edcfc6ac0e7e81d' - '3cfc5d2867a6672f4f629220632948f4' - '093f0779ac55ae781ba028ad74b95f84') - -build() { - cd "$pkgname-$pkgver" - - ./configure --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var --enable-doc \ - --with-scriptlet-shell=/usr/bin/bash \ - --with-ldconfig=/usr/bin/ldconfig - make - make -C contrib -} - -check() { - make -C "$pkgname-$pkgver" check -} - -package() { - cd "$pkgname-$pkgver" - - make DESTDIR="$pkgdir" install - make DESTDIR="$pkgdir" -C contrib install - - # install Arch specific stuff - install -dm755 "$pkgdir/etc" - install -m644 "$srcdir/pacman.conf.$CARCH" "$pkgdir/etc/pacman.conf" - - case $CARCH in - i686) - mycarch="i686" - mychost="i686-pc-linux-gnu" - myflags="-march=i686 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4" - myldflags="-Wl,-O1,--sort-common,--as-needed,-z,relro,--hash-style=gnu" - ;; - x86_64) - mycarch="x86_64" - mychost="x86_64-unknown-linux-gnu" - myflags="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4" - myldflags="-Wl,-O1,--sort-common,--as-needed,-z,relro,--hash-style=gnu" - ;; - mips64el) - mycarch="mips64el" - mychost="mips64el-unknown-linux-gnu" - myflags="-O2 -march=mips3 -mtune=loongson2f -mabi=n32 -pipe -mplt -Wa,-mfix-loongson2f-nop -fstack-protector-strong --param=ssp-buffer-size=4" - myldflags="-Wl,-O1,--sort-common,--as-needed,-z,relro" - ;; - esac - - # set things correctly in the default conf file - install -m644 "$srcdir/makepkg.conf" "$pkgdir/etc" - sed -i "$pkgdir/etc/makepkg.conf" \ - -e "s|@CARCH[@]|$mycarch|g" \ - -e "s|@CHOST[@]|$mychost|g" \ - -e "s|@LDFLAGS[@]|$myldflags|g" \ - -e "s|@CARCHFLAGS[@]|$myflags|g" - - # put bash_completion in the right location - install -dm755 "$pkgdir/usr/share/bash-completion/completions" - mv "$pkgdir/etc/bash_completion.d/pacman" "$pkgdir/usr/share/bash-completion/completions" - rmdir "$pkgdir/etc/bash_completion.d" - - for f in makepkg pacman-key; do - ln -s pacman "$pkgdir/usr/share/bash-completion/completions/$f" - done - - install -Dm644 contrib/PKGBUILD.vim "$pkgdir/usr/share/vim/vimfiles/syntax/PKGBUILD.vim" - - install -Dm755 "${srcdir}/refresh-pacman-keys" \ - "${pkgdir}/etc/cron.weekly/refresh-pacman-keys" - - install -Dm644 "${srcdir}/sks-keyservers.netCA.pem" \ - "${pkgdir}/etc/pacman.d/sks-keyservers.netCA.pem" - - install -Dm644 "${srcdir}/gpg.conf" \ - "${pkgdir}/etc/pacman.d/gpg.conf" -} diff --git a/libre/pacman/gpg.conf b/libre/pacman/gpg.conf deleted file mode 100644 index 7fc6fc661..000000000 --- a/libre/pacman/gpg.conf +++ /dev/null @@ -1,50 +0,0 @@ -# pacman-key default options -no-greeting -no-permission-warning -lock-never -keyserver-options timeout=20 - -# From duraconf -# personal digest preferences -personal-digest-preferences SHA512 - -# message digest algorithm used when signing a key -cert-digest-algo SHA512 - -# Set the list of default preferences to string. -# used for new keys and default for "setpref" -default-preference-list SHA512 SHA384 SHA256 SHA224 AES256 AES192 AES CAST5 ZLIB BZIP2 ZIP Uncompressed - -# From -# https://crabgrass.riseup.net/riseuplabs+paow/openpgp-best-practices -# Only use secure keyservers -keyserver hkps://hkps.pool.sks-keyservers.net -keyserver-options ca-cert-file=~/.gnupg/sks-keyservers.netCA.pem -keyserver-options no-honor-keyserver-url - -# when outputting certificates, view user IDs distinctly from keys: -fixed-list-mode - -# short-keyids are trivially spoofed; it's easy to create a long-keyid -# collision; if you care about strong key identifiers, you always want -# to see the fingerprint: -keyid-format 0xlong -fingerprint - -# when multiple digests are supported by all recipients, choose the -# strongest one: -personal-digest-preferences SHA512 SHA384 SHA256 SHA224 - -# If you use a graphical environment (and even if you don't) -# you should be using an agent: (similar arguments as -# https://www.debian-administration.org/users/dkg/weblog/64) -use-agent - -# You should always know at a glance which User IDs gpg thinks are -# legitimately bound to the keys in your keyring: -verify-options show-uid-validity -list-options show-uid-validity - -# include an unambiguous indicator of which key made a signature: (see -# http://thread.gmane.org/gmane.mail.notmuch.general/3721/focus=7234) -sig-notation issuer-fpr@notations.openpgp.fifthhorseman.net=%g diff --git a/libre/pacman/makepkg.conf b/libre/pacman/makepkg.conf deleted file mode 100644 index 758d7d029..000000000 --- a/libre/pacman/makepkg.conf +++ /dev/null @@ -1,140 +0,0 @@ -# -# /etc/makepkg.conf -# - -######################################################################### -# SOURCE ACQUISITION -######################################################################### -# -#-- The download utilities that makepkg should use to acquire sources -# Format: 'protocol::agent' -DLAGENTS=('ftp::/usr/bin/curl -fC - --ftp-pasv --retry 3 --retry-delay 3 -o %o %u' - 'http::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u' - 'https::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u' - 'rsync::/usr/bin/rsync --no-motd -z %u %o' - 'scp::/usr/bin/scp -C %u %o') - -# Other common tools: -# /usr/bin/snarf -# /usr/bin/lftpget -c -# /usr/bin/wget - -######################################################################### -# ARCHITECTURE, COMPILE FLAGS -######################################################################### -# -CARCH="@CARCH@" -CHOST="@CHOST@" - -#-- Compiler and Linker Flags -# -march (or -mcpu) builds exclusively for an architecture -# -mtune optimizes for an architecture, but builds for whole processor family -CPPFLAGS="-D_FORTIFY_SOURCE=2" -CFLAGS="@CARCHFLAGS@" -CXXFLAGS="@CARCHFLAGS@" -LDFLAGS="@LDFLAGS@" -#-- Make Flags: change this for DistCC/SMP systems -#MAKEFLAGS="-j2" -#-- Debugging flags -DEBUG_CFLAGS="-g -fvar-tracking-assignments" -DEBUG_CXXFLAGS="-g -fvar-tracking-assignments" - -######################################################################### -# BUILD ENVIRONMENT -######################################################################### -# -# Defaults: BUILDENV=(fakeroot !distcc color !ccache check !sign) -# A negated environment option will do the opposite of the comments below. -# -#-- fakeroot: Allow building packages as a non-root user -#-- distcc: Use the Distributed C/C++/ObjC compiler -#-- color: Colorize output messages -#-- ccache: Use ccache to cache compilation -#-- check: Run the check() function if present in the PKGBUILD -#-- sign: Generate PGP signature file -# -BUILDENV=(fakeroot !distcc color !ccache check !sign) -# -#-- If using DistCC, your MAKEFLAGS will also need modification. In addition, -#-- specify a space-delimited list of hosts running in the DistCC cluster. -#DISTCC_HOSTS="" -# -#-- Specify a directory for package building. -#BUILDDIR=/tmp/makepkg - -######################################################################### -# GLOBAL PACKAGE OPTIONS -# These are default values for the options=() settings -######################################################################### -# -# Default: OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !upx !debug) -# A negated option will do the opposite of the comments below. -# -#-- strip: Strip symbols from binaries/libraries -#-- docs: Save doc directories specified by DOC_DIRS -#-- libtool: Leave libtool (.la) files in packages -#-- staticlibs: Leave static library (.a) files in packages -#-- emptydirs: Leave empty directories in packages -#-- zipman: Compress manual (man and info) pages in MAN_DIRS with gzip -#-- purge: Remove files specified by PURGE_TARGETS -#-- upx: Compress binary executable files using UPX -#-- debug: Add debugging flags as specified in DEBUG_* variables -# -OPTIONS=(strip docs !libtool !staticlibs emptydirs zipman purge !upx !debug) - -#-- File integrity checks to use. Valid: md5, sha1, sha256, sha384, sha512 -INTEGRITY_CHECK=(md5) -#-- Options to be used when stripping binaries. See `man strip' for details. -STRIP_BINARIES="--strip-all" -#-- Options to be used when stripping shared libraries. See `man strip' for details. -STRIP_SHARED="--strip-unneeded" -#-- Options to be used when stripping static libraries. See `man strip' for details. -STRIP_STATIC="--strip-debug" -#-- Manual (man and info) directories to compress (if zipman is specified) -MAN_DIRS=({usr{,/local}{,/share},opt/*}/{man,info}) -#-- Doc directories to remove (if !docs is specified) -DOC_DIRS=(usr/{,local/}{,share/}{doc,gtk-doc} opt/*/{doc,gtk-doc}) -#-- Files to be removed from all packages (if purge is specified) -PURGE_TARGETS=(usr/{,share}/info/dir .packlist *.pod) - -######################################################################### -# PACKAGE OUTPUT -######################################################################### -# -# Default: put built package and cached source in build directory -# -#-- Destination: specify a fixed directory where all packages will be placed -#PKGDEST=/home/packages -#-- Source cache: specify a fixed directory where source files will be cached -#SRCDEST=/home/sources -#-- Source packages: specify a fixed directory where all src packages will be placed -#SRCPKGDEST=/home/srcpackages -#-- Log files: specify a fixed directory where all log files will be placed -#LOGDEST=/home/makepkglogs -#-- Packager: name/email of the person or organization building packages -#PACKAGER="John Doe " -#-- Specify a key to use for package signing -#GPGKEY="" - -######################################################################### -# COMPRESSION DEFAULTS -######################################################################### -# -COMPRESSGZ=(gzip -c -f -n) -COMPRESSBZ2=(bzip2 -c -f) -COMPRESSXZ=(xz -c -z -) -COMPRESSLRZ=(lrzip -q) -COMPRESSLZO=(lzop -q) -COMPRESSZ=(compress -c -f) - -######################################################################### -# EXTENSION DEFAULTS -######################################################################### -# -# WARNING: Do NOT modify these variables unless you know what you are -# doing. -# -PKGEXT='.pkg.tar.xz' -SRCEXT='.src.tar.gz' - -# vim: set ft=sh ts=2 sw=2 et: diff --git a/libre/pacman/pacman.conf.i686 b/libre/pacman/pacman.conf.i686 deleted file mode 100644 index 84cec630c..000000000 --- a/libre/pacman/pacman.conf.i686 +++ /dev/null @@ -1,103 +0,0 @@ -# -# /etc/pacman.conf -# -# See the pacman.conf(5) manpage for option and repository directives - -# -# GENERAL OPTIONS -# -[options] -# The following paths are commented out with their default values listed. -# If you wish to use different paths, uncomment and update the paths. -#RootDir = / -#DBPath = /var/lib/pacman/ -#CacheDir = /var/cache/pacman/pkg/ -#LogFile = /var/log/pacman.log -#GPGDir = /etc/pacman.d/gnupg/ -HoldPkg = pacman glibc -#XferCommand = /usr/bin/curl -C - -f %u > %o -#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u -#CleanMethod = KeepInstalled -#UseDelta = 0.7 -Architecture = auto - -# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup -#IgnorePkg = -#IgnoreGroup = - -#NoUpgrade = -#NoExtract = - -# Misc options -#UseSyslog -#Color -#TotalDownload -CheckSpace -#VerbosePkgLists - -# By default, pacman accepts packages signed by keys that its local keyring -# trusts (see pacman-key and its man page), as well as unsigned packages. -SigLevel = Required DatabaseOptional -LocalFileSigLevel = Optional -#RemoteFileSigLevel = Required - -# NOTE: You must run `pacman-key --init` before first using pacman; the local -# keyring can then be populated with the keys of all official Arch Linux -# packagers with `pacman-key --populate archlinux`. - -# -# REPOSITORIES -# - can be defined here or included from another file -# - pacman will search repositories in the order defined here -# - local/custom mirrors can be added here or in separate files -# - repositories listed first will take precedence when packages -# have identical names, regardless of version number -# - URLs will have $repo replaced by the name of the current repo -# - URLs will have $arch replaced by the name of the architecture -# -# Repository entries are of the format: -# [repo-name] -# Server = ServerName -# Include = IncludePath -# -# The header [repo-name] is crucial - it must be present and -# uncommented to enable the repo. -# - -# The testing repositories are disabled by default. To enable, uncomment the -# repo name header and Include lines. You can add preferred servers immediately -# after the header, and they will be used before the default mirrors. - -#[libre-testing] -#Include = /etc/pacman.d/mirrorlist - -[libre] -Include = /etc/pacman.d/mirrorlist - -#[testing] -#Include = /etc/pacman.d/mirrorlist - -[core] -Include = /etc/pacman.d/mirrorlist - -[extra] -Include = /etc/pacman.d/mirrorlist - -#[community-testing] -#Include = /etc/pacman.d/mirrorlist - -[community] -Include = /etc/pacman.d/mirrorlist - -# Parabola also supports community projects and personal repositories, to find -# them check out this wiki page: https://wiki.parabolagnulinux.org/Repositories - -# Parabola community repo -#[pcr] -#Include = /etc/pacman.d/mirrorlist - -# An example of a custom package repository. See the pacman manpage for -# tips on creating your own repositories. -#[custom] -#SigLevel = Optional TrustAll -#Server = file:///home/custompkgs diff --git a/libre/pacman/pacman.conf.mips64el b/libre/pacman/pacman.conf.mips64el deleted file mode 100644 index 604040640..000000000 --- a/libre/pacman/pacman.conf.mips64el +++ /dev/null @@ -1,103 +0,0 @@ -# -# /etc/pacman.conf -# -# See the pacman.conf(5) manpage for option and repository directives - -# -# GENERAL OPTIONS -# -[options] -# The following paths are commented out with their default values listed. -# If you wish to use different paths, uncomment and update the paths. -#RootDir = / -#DBPath = /var/lib/pacman/ -#CacheDir = /var/cache/pacman/pkg/ -#LogFile = /var/log/pacman.log -#GPGDir = /etc/pacman.d/gnupg/ -HoldPkg = pacman glibc -#XferCommand = /usr/bin/curl -C - -f %u > %o -#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u -#CleanMethod = KeepInstalled -#UseDelta = 0.7 -Architecture = mips64el - -# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup -#IgnorePkg = -#IgnoreGroup = - -#NoUpgrade = -#NoExtract = - -# Misc options -#UseSyslog -#Color -#TotalDownload -CheckSpace -#VerbosePkgLists - -# By default, pacman accepts packages signed by keys that its local keyring -# trusts (see pacman-key and its man page), as well as unsigned packages. -SigLevel = Required DatabaseOptional -LocalFileSigLevel = Optional -#RemoteFileSigLevel = Required - -# NOTE: You must run `pacman-key --init` before first using pacman; the local -# keyring can then be populated with the keys of all official Arch Linux -# packagers with `pacman-key --populate archlinux`. - -# -# REPOSITORIES -# - can be defined here or included from another file -# - pacman will search repositories in the order defined here -# - local/custom mirrors can be added here or in separate files -# - repositories listed first will take precedence when packages -# have identical names, regardless of version number -# - URLs will have $repo replaced by the name of the current repo -# - URLs will have $arch replaced by the name of the architecture -# -# Repository entries are of the format: -# [repo-name] -# Server = ServerName -# Include = IncludePath -# -# The header [repo-name] is crucial - it must be present and -# uncommented to enable the repo. -# - -# The testing repositories are disabled by default. To enable, uncomment the -# repo name header and Include lines. You can add preferred servers immediately -# after the header, and they will be used before the default mirrors. - -#[libre-testing] -#Include = /etc/pacman.d/mirrorlist - -[libre] -Include = /etc/pacman.d/mirrorlist - -#[testing] -#Include = /etc/pacman.d/mirrorlist - -[core] -Include = /etc/pacman.d/mirrorlist - -[extra] -Include = /etc/pacman.d/mirrorlist - -#[community-testing] -#Include = /etc/pacman.d/mirrorlist - -[community] -Include = /etc/pacman.d/mirrorlist - -# Parabola also supports community projects and personal repositories, to find -# them check out this wiki page: https://wiki.parabolagnulinux.org/Repositories - -# Parabola community repo -#[pcr] -#Include = /etc/pacman.d/mirrorlist - -# An example of a custom package repository. See the pacman manpage for -# tips on creating your own repositories. -#[custom] -#SigLevel = Optional TrustAll -#Server = file:///home/custompkgs diff --git a/libre/pacman/pacman.conf.x86_64 b/libre/pacman/pacman.conf.x86_64 deleted file mode 100644 index 03a8cf3a6..000000000 --- a/libre/pacman/pacman.conf.x86_64 +++ /dev/null @@ -1,118 +0,0 @@ -# -# /etc/pacman.conf -# -# See the pacman.conf(5) manpage for option and repository directives - -# -# GENERAL OPTIONS -# -[options] -# The following paths are commented out with their default values listed. -# If you wish to use different paths, uncomment and update the paths. -#RootDir = / -#DBPath = /var/lib/pacman/ -#CacheDir = /var/cache/pacman/pkg/ -#LogFile = /var/log/pacman.log -#GPGDir = /etc/pacman.d/gnupg/ -HoldPkg = pacman glibc -#XferCommand = /usr/bin/curl -C - -f %u > %o -#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u -#CleanMethod = KeepInstalled -#UseDelta = 0.7 -Architecture = auto - -# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup -#IgnorePkg = -#IgnoreGroup = - -#NoUpgrade = -#NoExtract = - -# Misc options -#UseSyslog -#Color -#TotalDownload -CheckSpace -#VerbosePkgLists - -# By default, pacman accepts packages signed by keys that its local keyring -# trusts (see pacman-key and its man page), as well as unsigned packages. -SigLevel = Required DatabaseOptional -LocalFileSigLevel = Optional -#RemoteFileSigLevel = Required - -# NOTE: You must run `pacman-key --init` before first using pacman; the local -# keyring can then be populated with the keys of all official Arch Linux -# packagers with `pacman-key --populate archlinux`. - -# -# REPOSITORIES -# - can be defined here or included from another file -# - pacman will search repositories in the order defined here -# - local/custom mirrors can be added here or in separate files -# - repositories listed first will take precedence when packages -# have identical names, regardless of version number -# - URLs will have $repo replaced by the name of the current repo -# - URLs will have $arch replaced by the name of the architecture -# -# Repository entries are of the format: -# [repo-name] -# Server = ServerName -# Include = IncludePath -# -# The header [repo-name] is crucial - it must be present and -# uncommented to enable the repo. -# - -# The testing repositories are disabled by default. To enable, uncomment the -# repo name header and Include lines. You can add preferred servers immediately -# after the header, and they will be used before the default mirrors. - -#[libre-testing] -#Include = /etc/pacman.d/mirrorlist - -[libre] -Include = /etc/pacman.d/mirrorlist - -#[testing] -#Include = /etc/pacman.d/mirrorlist - -[core] -Include = /etc/pacman.d/mirrorlist - -[extra] -Include = /etc/pacman.d/mirrorlist - -#[community-testing] -#Include = /etc/pacman.d/mirrorlist - -[community] -Include = /etc/pacman.d/mirrorlist - -# If you want to run 32 bit applications on your x86_64 system, -# enable the libre-multilib and multilib repositories as required here. - -#[libre-multilib-testing] -#Include = /etc/pacman.d/mirrorlist - -#[libre-multilib] -#Include = /etc/pacman.d/mirrorlist - -#[multilib-testing] -#Include = /etc/pacman.d/mirrorlist - -#[multilib] -#Include = /etc/pacman.d/mirrorlist - -# Parabola also supports community projects and personal repositories, to find -# them check out this wiki page: https://wiki.parabolagnulinux.org/Repositories - -# Parabola community repo -#[pcr] -#Include = /etc/pacman.d/mirrorlist - -# An example of a custom package repository. See the pacman manpage for -# tips on creating your own repositories. -#[custom] -#SigLevel = Optional TrustAll -#Server = file:///home/custompkgs diff --git a/libre/pacman/refresh-pacman-keys b/libre/pacman/refresh-pacman-keys deleted file mode 100644 index e96dc34e5..000000000 --- a/libre/pacman/refresh-pacman-keys +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash - -pacman-key --refresh-keys diff --git a/libre/pacman/sks-keyservers.netCA.pem b/libre/pacman/sks-keyservers.netCA.pem deleted file mode 100644 index 24a2ad2e8..000000000 --- a/libre/pacman/sks-keyservers.netCA.pem +++ /dev/null @@ -1,32 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIFizCCA3OgAwIBAgIJAK9zyLTPn4CPMA0GCSqGSIb3DQEBBQUAMFwxCzAJBgNV -BAYTAk5PMQ0wCwYDVQQIDARPc2xvMR4wHAYDVQQKDBVza3Mta2V5c2VydmVycy5u -ZXQgQ0ExHjAcBgNVBAMMFXNrcy1rZXlzZXJ2ZXJzLm5ldCBDQTAeFw0xMjEwMDkw -MDMzMzdaFw0yMjEwMDcwMDMzMzdaMFwxCzAJBgNVBAYTAk5PMQ0wCwYDVQQIDARP -c2xvMR4wHAYDVQQKDBVza3Mta2V5c2VydmVycy5uZXQgQ0ExHjAcBgNVBAMMFXNr -cy1rZXlzZXJ2ZXJzLm5ldCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoC -ggIBANdsWy4PXWNUCkS3L//nrd0GqN3dVwoBGZ6w94Tw2jPDPifegwxQozFXkG6I -6A4TK1CJLXPvfz0UP0aBYyPmTNadDinaB9T4jIwd4rnxl+59GiEmqkN3IfPsv5Jj -MkKUmJnvOT0DEVlEaO1UZIwx5WpfprB3mR81/qm4XkAgmYrmgnLXd/pJDAMk7y1F -45b5zWofiD5l677lplcIPRbFhpJ6kDTODXh/XEdtF71EAeaOdEGOvyGDmCO0GWqS -FDkMMPTlieLA/0rgFTcz4xwUYj/cD5e0ZBuSkYsYFAU3hd1cGfBue0cPZaQH2HYx -Qk4zXD8S3F4690fRhr+tki5gyG6JDR67aKp3BIGLqm7f45WkX1hYp+YXywmEziM4 -aSbGYhx8hoFGfq9UcfPEvp2aoc8u5sdqjDslhyUzM1v3m3ZGbhwEOnVjljY6JJLx -MxagxnZZSAY424ZZ3t71E/Mn27dm2w+xFRuoy8JEjv1d+BT3eChM5KaNwrj0IO/y -u8kFIgWYA1vZ/15qMT+tyJTfyrNVV/7Df7TNeWyNqjJ5rBmt0M6NpHG7CrUSkBy9 -p8JhimgjP5r0FlEkgg+lyD+V79H98gQfVgP3pbJICz0SpBQf2F/2tyS4rLm+49rP -fcOajiXEuyhpcmzgusAj/1FjrtlynH1r9mnNaX4e+rLWzvU5AgMBAAGjUDBOMB0G -A1UdDgQWBBTkwyoJFGfYTVISTpM8E+igjdq28zAfBgNVHSMEGDAWgBTkwyoJFGfY -TVISTpM8E+igjdq28zAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4ICAQAR -OXnYwu3g1ZjHyley3fZI5aLPsaE17cOImVTehC8DcIphm2HOMR/hYTTL+V0G4P+u -gH+6xeRLKSHMHZTtSBIa6GDL03434y9CBuwGvAFCMU2GV8w92/Z7apkAhdLToZA/ -X/iWP2jeaVJhxgEcH8uPrnSlqoPBcKC9PrgUzQYfSZJkLmB+3jEa3HKruy1abJP5 -gAdQvwvcPpvYRnIzUc9fZODsVmlHVFBCl2dlu/iHh2h4GmL4Da2rRkUMlbVTdioB -UYIvMycdOkpH5wJftzw7cpjsudGas0PARDXCFfGyKhwBRFY7Xp7lbjtU5Rz0Gc04 -lPrhDf0pFE98Aw4jJRpFeWMjpXUEaG1cq7D641RpgcMfPFvOHY47rvDTS7XJOaUT -BwRjmDt896s6vMDcaG/uXJbQjuzmmx3W2Idyh3s5SI0GTHb0IwMKYb4eBUIpQOnB -cE77VnCYqKvN1NVYAqhWjXbY7XasZvszCRcOG+W3FqNaHOK/n/0ueb0uijdLan+U -f4p1bjbAox8eAOQS/8a3bzkJzdyBNUKGx1BIK2IBL9bn/HravSDOiNRSnZ/R3l9G -ZauX0tu7IIDlRCILXSyeazu0aj/vdT3YFQXPcvt5Fkf5wiNTo53f72/jYEJd6qph -WrpoKqrwGwTpRUCMhYIUt65hsTxCiJJ5nKe39h46sg== ------END CERTIFICATE----- -- cgit v1.2.3-54-g00ecf From 49fb84c481b4eb4e1dd582a5a023b2542e5af423 Mon Sep 17 00:00:00 2001 From: André Fabian Silva Delgado Date: Mon, 25 Aug 2014 02:58:31 -0300 Subject: filesystem-parabola: add parabola suffix for the package --- libre/filesystem-parabola/PKGBUILD | 167 +++++++++++++++++++++ libre/filesystem-parabola/crypttab | 17 +++ libre/filesystem-parabola/filesystem.install | 68 +++++++++ libre/filesystem-parabola/fstab | 4 + libre/filesystem-parabola/group | 41 +++++ libre/filesystem-parabola/gshadow | 41 +++++ libre/filesystem-parabola/host.conf | 8 + libre/filesystem-parabola/hosts | 9 ++ libre/filesystem-parabola/issue | 2 + libre/filesystem-parabola/ld.so.conf | 7 + libre/filesystem-parabola/locale.sh | 27 ++++ .../modprobe.d.usb-load-ehci-first | 2 + libre/filesystem-parabola/motd | 0 libre/filesystem-parabola/nsswitch.conf | 19 +++ libre/filesystem-parabola/os-release | 8 + libre/filesystem-parabola/parabola.7.txt | 91 +++++++++++ libre/filesystem-parabola/passwd | 14 ++ libre/filesystem-parabola/profile | 27 ++++ libre/filesystem-parabola/resolv.conf | 8 + libre/filesystem-parabola/securetty | 15 ++ libre/filesystem-parabola/shadow | 14 ++ libre/filesystem-parabola/shells | 8 + libre/filesystem/PKGBUILD | 163 -------------------- libre/filesystem/crypttab | 17 --- libre/filesystem/filesystem.install | 68 --------- libre/filesystem/fstab | 4 - libre/filesystem/group | 41 ----- libre/filesystem/gshadow | 41 ----- libre/filesystem/host.conf | 8 - libre/filesystem/hosts | 9 -- libre/filesystem/issue | 2 - libre/filesystem/ld.so.conf | 7 - libre/filesystem/locale.sh | 27 ---- libre/filesystem/modprobe.d.usb-load-ehci-first | 2 - libre/filesystem/motd | 0 libre/filesystem/nsswitch.conf | 19 --- libre/filesystem/os-release | 8 - libre/filesystem/parabola.7.txt | 91 ----------- libre/filesystem/passwd | 14 -- libre/filesystem/profile | 27 ---- libre/filesystem/resolv.conf | 8 - libre/filesystem/securetty | 15 -- libre/filesystem/shadow | 14 -- libre/filesystem/shells | 8 - 44 files changed, 597 insertions(+), 593 deletions(-) create mode 100644 libre/filesystem-parabola/PKGBUILD create mode 100644 libre/filesystem-parabola/crypttab create mode 100644 libre/filesystem-parabola/filesystem.install create mode 100644 libre/filesystem-parabola/fstab create mode 100644 libre/filesystem-parabola/group create mode 100644 libre/filesystem-parabola/gshadow create mode 100644 libre/filesystem-parabola/host.conf create mode 100644 libre/filesystem-parabola/hosts create mode 100644 libre/filesystem-parabola/issue create mode 100644 libre/filesystem-parabola/ld.so.conf create mode 100644 libre/filesystem-parabola/locale.sh create mode 100644 libre/filesystem-parabola/modprobe.d.usb-load-ehci-first create mode 100644 libre/filesystem-parabola/motd create mode 100644 libre/filesystem-parabola/nsswitch.conf create mode 100644 libre/filesystem-parabola/os-release create mode 100644 libre/filesystem-parabola/parabola.7.txt create mode 100644 libre/filesystem-parabola/passwd create mode 100644 libre/filesystem-parabola/profile create mode 100644 libre/filesystem-parabola/resolv.conf create mode 100644 libre/filesystem-parabola/securetty create mode 100644 libre/filesystem-parabola/shadow create mode 100644 libre/filesystem-parabola/shells delete mode 100644 libre/filesystem/PKGBUILD delete mode 100644 libre/filesystem/crypttab delete mode 100644 libre/filesystem/filesystem.install delete mode 100644 libre/filesystem/fstab delete mode 100644 libre/filesystem/group delete mode 100644 libre/filesystem/gshadow delete mode 100644 libre/filesystem/host.conf delete mode 100644 libre/filesystem/hosts delete mode 100644 libre/filesystem/issue delete mode 100644 libre/filesystem/ld.so.conf delete mode 100644 libre/filesystem/locale.sh delete mode 100644 libre/filesystem/modprobe.d.usb-load-ehci-first delete mode 100644 libre/filesystem/motd delete mode 100644 libre/filesystem/nsswitch.conf delete mode 100644 libre/filesystem/os-release delete mode 100644 libre/filesystem/parabola.7.txt delete mode 100644 libre/filesystem/passwd delete mode 100644 libre/filesystem/profile delete mode 100644 libre/filesystem/resolv.conf delete mode 100644 libre/filesystem/securetty delete mode 100644 libre/filesystem/shadow delete mode 100644 libre/filesystem/shells (limited to 'libre') diff --git a/libre/filesystem-parabola/PKGBUILD b/libre/filesystem-parabola/PKGBUILD new file mode 100644 index 000000000..b4dba77c0 --- /dev/null +++ b/libre/filesystem-parabola/PKGBUILD @@ -0,0 +1,167 @@ +# $Id: PKGBUILD 216487 2014-07-04 13:14:12Z dreisner $ +# Maintainer (Arch): Tom Gundersen +# Maintainer: Nicolás Reynolds +# Maintainer: André Silva + +_pkgname=filesystem +pkgname=filesystem-parabola +pkgver=2014.07 +pkgrel=1 +pkgdesc='Base filesystem (Parabola rebranded)' +arch=('i686' 'x86_64' 'mips64el') +license=('GPL') +url='https://parabolagnulinux.org' +groups=('base') +install='filesystem.install' +makedepends=('asciidoc') +depends=('iana-etc') +replaces=($_pkgname) +conflicts=($_pkgname) +provides=($_pkgname=$pkgver) +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' 'modprobe.d.usb-load-ehci-first' 'parabola.7.txt' + 'locale.sh') +md5sums=('d46cb1adf8175888cc827a3dad8857d2' + '6be47d893fd49b2e4a8c0e811b350861' + '9e4533df61f0c82d6b2e2371f7376282' + '4c4540eeb748bf1f71d631b8c1dcf0b3' + 'f28150d4c0b22a017be51b9f7f9977ed' + '6e488ffecc8ba142c0cf7e2d7aeb832e' + 'a998d1e6c7cc5791a7f4a2b49b2d10ce' + '1ec1b16e2a71fad63ab8f147069a5d97' + '693c97f2c9a519bb97a17008e92c2b74' + '1745349eb24ed21b4cfaa6f423bddb76' + '7bc65f234dfb6abf24e7c3b03e86f4ff' + 'd41d8cd98f00b204e9800998ecf8427e' + '0e145e18fea8fd190b30d45764f5707c' + '6f48288b6fcaf0065fcb7b0e525413e0' + '22518e922891f9359f971f4f5b4e793c' + '09bce9236c3729d31aaa528bcf5d198e' + '0b6f835598c7640184e476057b3c7722' + 'a8a962370cd0128465d514e6a1f74130' + 'd5732ffdb3488e1383d4ea199343e767' + '4fab2b798deff348e04f05152111aae0') + +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 +} + +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 + install -d etc/{ld.so.conf.d,skel,profile.d} + 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/ + done + ln -s /proc/self/mounts etc/mtab + for f in gshadow shadow crypttab; do + install -m600 ${srcdir}/${f} etc/ + done + touch etc/parabola-release + ln -sv parabola-release etc/arch-release + install -D -m644 ${srcdir}/modprobe.d.usb-load-ehci-first usr/lib/modprobe.d/usb-load-ehci-first.conf + 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/man 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 + ) + [[ ${CARCH} = "mips64el" ]] && ( + # For the N32 ABI. + ln -s usr/lib ${pkgdir}/lib32 + ln -s lib ${pkgdir}/usr/lib32 + ) + + # + # 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 +} diff --git a/libre/filesystem-parabola/crypttab b/libre/filesystem-parabola/crypttab new file mode 100644 index 000000000..195945a74 --- /dev/null +++ b/libre/filesystem-parabola/crypttab @@ -0,0 +1,17 @@ +# crypttab: mappings for encrypted partitions +# +# Each mapped device will be created in /dev/mapper, so your /etc/fstab +# should use the /dev/mapper/ paths for encrypted devices. +# +# The Arch specific syntax has been deprecated, see crypttab(5) for the +# new supported syntax. +# +# NOTE: Do not list your root (/) partition here, it must be set up +# beforehand by the initramfs (/etc/mkinitcpio.conf). + +# +# home /dev/hda4 /etc/mypassword1 +# data1 /dev/hda3 /etc/mypassword2 +# data2 /dev/hda5 /etc/cryptfs.key +# swap /dev/hdx4 /dev/urandom swap,cipher=aes-cbc-essiv:sha256,size=256 +# vol /dev/hdb7 none diff --git a/libre/filesystem-parabola/filesystem.install b/libre/filesystem-parabola/filesystem.install new file mode 100644 index 000000000..065a79d6c --- /dev/null +++ b/libre/filesystem-parabola/filesystem.install @@ -0,0 +1,68 @@ +# args: [options] +_addgroup() { + if ! getent group "$1" >/dev/null && groupadd "$@" >/dev/null; then + need_group_update=1 + fi +} + +# args: [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 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 uuidd -g 68 + _adduser uuidd -u 68 -d / -g uuidd -s /usr/bin/nologin + _addgroup dbus -g 81 + _adduser dbus -u 81 -d / -g dbus -s /usr/bin/nologin + _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-parabola/fstab b/libre/filesystem-parabola/fstab new file mode 100644 index 000000000..b6716c14a --- /dev/null +++ b/libre/filesystem-parabola/fstab @@ -0,0 +1,4 @@ +# +# /etc/fstab: static file system information +# +# diff --git a/libre/filesystem-parabola/group b/libre/filesystem-parabola/group new file mode 100644 index 000000000..ebfb87169 --- /dev/null +++ b/libre/filesystem-parabola/group @@ -0,0 +1,41 @@ +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: +http:x:33: +games:x:50: +lock:x:54: +uuidd:x:68: +dbus:x:81: +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-parabola/gshadow b/libre/filesystem-parabola/gshadow new file mode 100644 index 000000000..1fcb075bc --- /dev/null +++ b/libre/filesystem-parabola/gshadow @@ -0,0 +1,41 @@ +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::: +http::: +games::: +lock::: +uuidd:x:: +dbus:x:: +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-parabola/host.conf b/libre/filesystem-parabola/host.conf new file mode 100644 index 000000000..cf52fe561 --- /dev/null +++ b/libre/filesystem-parabola/host.conf @@ -0,0 +1,8 @@ +# +# /etc/host.conf +# + +order hosts,bind +multi on + +# End of file diff --git a/libre/filesystem-parabola/hosts b/libre/filesystem-parabola/hosts new file mode 100644 index 000000000..1747f9196 --- /dev/null +++ b/libre/filesystem-parabola/hosts @@ -0,0 +1,9 @@ +# +# /etc/hosts: static lookup table for host names +# + +# +127.0.0.1 localhost.localdomain localhost +::1 localhost.localdomain localhost + +# End of file diff --git a/libre/filesystem-parabola/issue b/libre/filesystem-parabola/issue new file mode 100644 index 000000000..b001c55dd --- /dev/null +++ b/libre/filesystem-parabola/issue @@ -0,0 +1,2 @@ +Parabola GNU/Linux-libre \r (\n) (\l) + diff --git a/libre/filesystem-parabola/ld.so.conf b/libre/filesystem-parabola/ld.so.conf new file mode 100644 index 000000000..dfac45683 --- /dev/null +++ b/libre/filesystem-parabola/ld.so.conf @@ -0,0 +1,7 @@ +# +# /etc/ld.so.conf +# + +include /etc/ld.so.conf.d/*.conf + +# End of file diff --git a/libre/filesystem-parabola/locale.sh b/libre/filesystem-parabola/locale.sh new file mode 100644 index 000000000..3cfc89c1b --- /dev/null +++ b/libre/filesystem-parabola/locale.sh @@ -0,0 +1,27 @@ +#!/bin/sh + +unset LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES \ + LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT LC_IDENTIFICATION + +if [ -n "$XDG_CONFIG_HOME" ] && [ -r "$XDG_CONFIG_HOME/locale.conf" ]; then + . "$XDG_CONFIG_HOME/locale.conf" +elif [ -n $HOME ] && [ -r $HOME/.config/locale.conf ]; then + . "$HOME/.config/locale.conf" +elif [ -r /etc/locale.conf ]; then + . /etc/locale.conf +fi + +LANG=${LANG:-C} +export LANG +[ -n "$LC_CTYPE" ] && export LC_CTYPE +[ -n "$LC_NUMERIC" ] && export LC_NUMERIC +[ -n "$LC_TIME" ] && export LC_TIME +[ -n "$LC_COLLATE" ] && export LC_COLLATE +[ -n "$LC_MONETARY" ] && export LC_MONETARY +[ -n "$LC_MESSAGES" ] && export LC_MESSAGES +[ -n "$LC_PAPER" ] && export LC_PAPER +[ -n "$LC_NAME" ] && export LC_NAME +[ -n "$LC_ADDRESS" ] && export LC_ADDRESS +[ -n "$LC_TELEPHONE" ] && export LC_TELEPHONE +[ -n "$LC_MEASUREMENT" ] && export LC_MEASUREMENT +[ -n "$LC_IDENTIFICATION" ] && export LC_IDENTIFICATION diff --git a/libre/filesystem-parabola/modprobe.d.usb-load-ehci-first b/libre/filesystem-parabola/modprobe.d.usb-load-ehci-first new file mode 100644 index 000000000..947379411 --- /dev/null +++ b/libre/filesystem-parabola/modprobe.d.usb-load-ehci-first @@ -0,0 +1,2 @@ +softdep ohci_hcd pre: ehci_hcd +softdep uhci_hcd pre: ehci_hcd diff --git a/libre/filesystem-parabola/motd b/libre/filesystem-parabola/motd new file mode 100644 index 000000000..e69de29bb diff --git a/libre/filesystem-parabola/nsswitch.conf b/libre/filesystem-parabola/nsswitch.conf new file mode 100644 index 000000000..4a4f5770d --- /dev/null +++ b/libre/filesystem-parabola/nsswitch.conf @@ -0,0 +1,19 @@ +# Begin /etc/nsswitch.conf + +passwd: files +group: files +shadow: files + +publickey: files + +hosts: files dns myhostname +networks: files + +protocols: files +services: files +ethers: files +rpc: files + +netgroup: files + +# End /etc/nsswitch.conf diff --git a/libre/filesystem-parabola/os-release b/libre/filesystem-parabola/os-release new file mode 100644 index 000000000..fe5f20b4f --- /dev/null +++ b/libre/filesystem-parabola/os-release @@ -0,0 +1,8 @@ +NAME="Parabola" +ID=parabola +ID_LIKE=arch +PRETTY_NAME="Parabola GNU/Linux-libre" +ANSI_COLOR="1;35" +HOME_URL="https://parabolagnulinux.org/" +BUG_REPORT_URL="https://labs.parabola.nu/" + diff --git a/libre/filesystem-parabola/parabola.7.txt b/libre/filesystem-parabola/parabola.7.txt new file mode 100644 index 000000000..60e1121e0 --- /dev/null +++ b/libre/filesystem-parabola/parabola.7.txt @@ -0,0 +1,91 @@ +///// +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 '. +To view available services, use 'systemctl list-unit-files'. + +HOSTNAME[[H]] +------------- +The hostname of the machine can be set using 'hostnamectl set-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 '. +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 '. +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 '. +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-parabola/passwd b/libre/filesystem-parabola/passwd new file mode 100644 index 000000000..b3e79eb9d --- /dev/null +++ b/libre/filesystem-parabola/passwd @@ -0,0 +1,14 @@ +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 +uuidd:x:68:68:uuidd:/:/usr/bin/nologin +dbus:x:81:81:dbus:/:/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 diff --git a/libre/filesystem-parabola/profile b/libre/filesystem-parabola/profile new file mode 100644 index 000000000..59d0abc83 --- /dev/null +++ b/libre/filesystem-parabola/profile @@ -0,0 +1,27 @@ +# /etc/profile + +#Set our umask +umask 022 + +# Set our default path +PATH="/usr/local/sbin:/usr/local/bin:/usr/bin" +export PATH + +# Load profiles from /etc/profile.d +if test -d /etc/profile.d/; then + for profile in /etc/profile.d/*.sh; do + test -r "$profile" && . "$profile" + done + unset profile +fi + +# Source global bash config +if test "$PS1" && test "$BASH" && test -r /etc/bash.bashrc; then + . /etc/bash.bashrc +fi + +# Termcap is outdated, old, and crusty, kill it. +unset TERMCAP + +# Man is much better than us at figuring this out +unset MANPATH diff --git a/libre/filesystem-parabola/resolv.conf b/libre/filesystem-parabola/resolv.conf new file mode 100644 index 000000000..cecafba03 --- /dev/null +++ b/libre/filesystem-parabola/resolv.conf @@ -0,0 +1,8 @@ +# +# /etc/resolv.conf +# + +#search +#nameserver + +# End of file diff --git a/libre/filesystem-parabola/securetty b/libre/filesystem-parabola/securetty new file mode 100644 index 000000000..5a2235ce7 --- /dev/null +++ b/libre/filesystem-parabola/securetty @@ -0,0 +1,15 @@ +# +# /etc/securetty +# + +console +tty1 +tty2 +tty3 +tty4 +tty5 +tty6 +ttyS0 +hvc0 + +# End of file diff --git a/libre/filesystem-parabola/shadow b/libre/filesystem-parabola/shadow new file mode 100644 index 000000000..4c6e3d18f --- /dev/null +++ b/libre/filesystem-parabola/shadow @@ -0,0 +1,14 @@ +root::14871:::::: +bin:x:14871:::::: +daemon:x:14871:::::: +mail:x:14871:::::: +ftp:x:14871:::::: +http:x:14871:::::: +uuidd:x:14871:::::: +dbus: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-parabola/shells b/libre/filesystem-parabola/shells new file mode 100644 index 000000000..18c1aeffa --- /dev/null +++ b/libre/filesystem-parabola/shells @@ -0,0 +1,8 @@ +# +# /etc/shells +# + +/bin/sh +/bin/bash + +# End of file diff --git a/libre/filesystem/PKGBUILD b/libre/filesystem/PKGBUILD deleted file mode 100644 index 74e507fce..000000000 --- a/libre/filesystem/PKGBUILD +++ /dev/null @@ -1,163 +0,0 @@ -# $Id: PKGBUILD 216487 2014-07-04 13:14:12Z dreisner $ -# Maintainer (Arch): Tom Gundersen -# Maintainer: Nicolás Reynolds -# Maintainer: André Silva - -pkgname=filesystem -pkgver=2014.07 -pkgrel=1 -pkgdesc='Base filesystem (Parabola rebranded)' -arch=('i686' 'x86_64' 'mips64el') -license=('GPL') -url='https://parabolagnulinux.org' -groups=('base') -install='filesystem.install' -makedepends=('asciidoc') -depends=('iana-etc') -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' 'modprobe.d.usb-load-ehci-first' 'parabola.7.txt' - 'locale.sh') -md5sums=('d46cb1adf8175888cc827a3dad8857d2' - '6be47d893fd49b2e4a8c0e811b350861' - '9e4533df61f0c82d6b2e2371f7376282' - '4c4540eeb748bf1f71d631b8c1dcf0b3' - 'f28150d4c0b22a017be51b9f7f9977ed' - '6e488ffecc8ba142c0cf7e2d7aeb832e' - 'a998d1e6c7cc5791a7f4a2b49b2d10ce' - '1ec1b16e2a71fad63ab8f147069a5d97' - '693c97f2c9a519bb97a17008e92c2b74' - '1745349eb24ed21b4cfaa6f423bddb76' - '7bc65f234dfb6abf24e7c3b03e86f4ff' - 'd41d8cd98f00b204e9800998ecf8427e' - '0e145e18fea8fd190b30d45764f5707c' - '6f48288b6fcaf0065fcb7b0e525413e0' - '22518e922891f9359f971f4f5b4e793c' - '09bce9236c3729d31aaa528bcf5d198e' - '0b6f835598c7640184e476057b3c7722' - 'a8a962370cd0128465d514e6a1f74130' - 'd5732ffdb3488e1383d4ea199343e767' - '4fab2b798deff348e04f05152111aae0') - -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 -} - -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 - install -d etc/{ld.so.conf.d,skel,profile.d} - 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/ - done - ln -s /proc/self/mounts etc/mtab - for f in gshadow shadow crypttab; do - install -m600 ${srcdir}/${f} etc/ - done - touch etc/parabola-release - ln -sv parabola-release etc/arch-release - install -D -m644 ${srcdir}/modprobe.d.usb-load-ehci-first usr/lib/modprobe.d/usb-load-ehci-first.conf - 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/man 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 - ) - [[ ${CARCH} = "mips64el" ]] && ( - # For the N32 ABI. - ln -s usr/lib ${pkgdir}/lib32 - ln -s lib ${pkgdir}/usr/lib32 - ) - - # - # 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 -} diff --git a/libre/filesystem/crypttab b/libre/filesystem/crypttab deleted file mode 100644 index 195945a74..000000000 --- a/libre/filesystem/crypttab +++ /dev/null @@ -1,17 +0,0 @@ -# crypttab: mappings for encrypted partitions -# -# Each mapped device will be created in /dev/mapper, so your /etc/fstab -# should use the /dev/mapper/ paths for encrypted devices. -# -# The Arch specific syntax has been deprecated, see crypttab(5) for the -# new supported syntax. -# -# NOTE: Do not list your root (/) partition here, it must be set up -# beforehand by the initramfs (/etc/mkinitcpio.conf). - -# -# home /dev/hda4 /etc/mypassword1 -# data1 /dev/hda3 /etc/mypassword2 -# data2 /dev/hda5 /etc/cryptfs.key -# swap /dev/hdx4 /dev/urandom swap,cipher=aes-cbc-essiv:sha256,size=256 -# vol /dev/hdb7 none diff --git a/libre/filesystem/filesystem.install b/libre/filesystem/filesystem.install deleted file mode 100644 index 065a79d6c..000000000 --- a/libre/filesystem/filesystem.install +++ /dev/null @@ -1,68 +0,0 @@ -# args: [options] -_addgroup() { - if ! getent group "$1" >/dev/null && groupadd "$@" >/dev/null; then - need_group_update=1 - fi -} - -# args: [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 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 uuidd -g 68 - _adduser uuidd -u 68 -d / -g uuidd -s /usr/bin/nologin - _addgroup dbus -g 81 - _adduser dbus -u 81 -d / -g dbus -s /usr/bin/nologin - _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 deleted file mode 100644 index b6716c14a..000000000 --- a/libre/filesystem/fstab +++ /dev/null @@ -1,4 +0,0 @@ -# -# /etc/fstab: static file system information -# -# diff --git a/libre/filesystem/group b/libre/filesystem/group deleted file mode 100644 index ebfb87169..000000000 --- a/libre/filesystem/group +++ /dev/null @@ -1,41 +0,0 @@ -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: -http:x:33: -games:x:50: -lock:x:54: -uuidd:x:68: -dbus:x:81: -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 deleted file mode 100644 index 1fcb075bc..000000000 --- a/libre/filesystem/gshadow +++ /dev/null @@ -1,41 +0,0 @@ -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::: -http::: -games::: -lock::: -uuidd:x:: -dbus:x:: -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 deleted file mode 100644 index cf52fe561..000000000 --- a/libre/filesystem/host.conf +++ /dev/null @@ -1,8 +0,0 @@ -# -# /etc/host.conf -# - -order hosts,bind -multi on - -# End of file diff --git a/libre/filesystem/hosts b/libre/filesystem/hosts deleted file mode 100644 index 1747f9196..000000000 --- a/libre/filesystem/hosts +++ /dev/null @@ -1,9 +0,0 @@ -# -# /etc/hosts: static lookup table for host names -# - -# -127.0.0.1 localhost.localdomain localhost -::1 localhost.localdomain localhost - -# End of file diff --git a/libre/filesystem/issue b/libre/filesystem/issue deleted file mode 100644 index b001c55dd..000000000 --- a/libre/filesystem/issue +++ /dev/null @@ -1,2 +0,0 @@ -Parabola GNU/Linux-libre \r (\n) (\l) - diff --git a/libre/filesystem/ld.so.conf b/libre/filesystem/ld.so.conf deleted file mode 100644 index dfac45683..000000000 --- a/libre/filesystem/ld.so.conf +++ /dev/null @@ -1,7 +0,0 @@ -# -# /etc/ld.so.conf -# - -include /etc/ld.so.conf.d/*.conf - -# End of file diff --git a/libre/filesystem/locale.sh b/libre/filesystem/locale.sh deleted file mode 100644 index 3cfc89c1b..000000000 --- a/libre/filesystem/locale.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/sh - -unset LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES \ - LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT LC_IDENTIFICATION - -if [ -n "$XDG_CONFIG_HOME" ] && [ -r "$XDG_CONFIG_HOME/locale.conf" ]; then - . "$XDG_CONFIG_HOME/locale.conf" -elif [ -n $HOME ] && [ -r $HOME/.config/locale.conf ]; then - . "$HOME/.config/locale.conf" -elif [ -r /etc/locale.conf ]; then - . /etc/locale.conf -fi - -LANG=${LANG:-C} -export LANG -[ -n "$LC_CTYPE" ] && export LC_CTYPE -[ -n "$LC_NUMERIC" ] && export LC_NUMERIC -[ -n "$LC_TIME" ] && export LC_TIME -[ -n "$LC_COLLATE" ] && export LC_COLLATE -[ -n "$LC_MONETARY" ] && export LC_MONETARY -[ -n "$LC_MESSAGES" ] && export LC_MESSAGES -[ -n "$LC_PAPER" ] && export LC_PAPER -[ -n "$LC_NAME" ] && export LC_NAME -[ -n "$LC_ADDRESS" ] && export LC_ADDRESS -[ -n "$LC_TELEPHONE" ] && export LC_TELEPHONE -[ -n "$LC_MEASUREMENT" ] && export LC_MEASUREMENT -[ -n "$LC_IDENTIFICATION" ] && export LC_IDENTIFICATION diff --git a/libre/filesystem/modprobe.d.usb-load-ehci-first b/libre/filesystem/modprobe.d.usb-load-ehci-first deleted file mode 100644 index 947379411..000000000 --- a/libre/filesystem/modprobe.d.usb-load-ehci-first +++ /dev/null @@ -1,2 +0,0 @@ -softdep ohci_hcd pre: ehci_hcd -softdep uhci_hcd pre: ehci_hcd diff --git a/libre/filesystem/motd b/libre/filesystem/motd deleted file mode 100644 index e69de29bb..000000000 diff --git a/libre/filesystem/nsswitch.conf b/libre/filesystem/nsswitch.conf deleted file mode 100644 index 4a4f5770d..000000000 --- a/libre/filesystem/nsswitch.conf +++ /dev/null @@ -1,19 +0,0 @@ -# Begin /etc/nsswitch.conf - -passwd: files -group: files -shadow: files - -publickey: files - -hosts: files dns myhostname -networks: files - -protocols: files -services: files -ethers: files -rpc: files - -netgroup: files - -# End /etc/nsswitch.conf diff --git a/libre/filesystem/os-release b/libre/filesystem/os-release deleted file mode 100644 index fe5f20b4f..000000000 --- a/libre/filesystem/os-release +++ /dev/null @@ -1,8 +0,0 @@ -NAME="Parabola" -ID=parabola -ID_LIKE=arch -PRETTY_NAME="Parabola GNU/Linux-libre" -ANSI_COLOR="1;35" -HOME_URL="https://parabolagnulinux.org/" -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 '. -To view available services, use 'systemctl list-unit-files'. - -HOSTNAME[[H]] -------------- -The hostname of the machine can be set using 'hostnamectl set-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 '. -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 '. -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 '. -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 deleted file mode 100644 index b3e79eb9d..000000000 --- a/libre/filesystem/passwd +++ /dev/null @@ -1,14 +0,0 @@ -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 -uuidd:x:68:68:uuidd:/:/usr/bin/nologin -dbus:x:81:81:dbus:/:/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 diff --git a/libre/filesystem/profile b/libre/filesystem/profile deleted file mode 100644 index 59d0abc83..000000000 --- a/libre/filesystem/profile +++ /dev/null @@ -1,27 +0,0 @@ -# /etc/profile - -#Set our umask -umask 022 - -# Set our default path -PATH="/usr/local/sbin:/usr/local/bin:/usr/bin" -export PATH - -# Load profiles from /etc/profile.d -if test -d /etc/profile.d/; then - for profile in /etc/profile.d/*.sh; do - test -r "$profile" && . "$profile" - done - unset profile -fi - -# Source global bash config -if test "$PS1" && test "$BASH" && test -r /etc/bash.bashrc; then - . /etc/bash.bashrc -fi - -# Termcap is outdated, old, and crusty, kill it. -unset TERMCAP - -# Man is much better than us at figuring this out -unset MANPATH diff --git a/libre/filesystem/resolv.conf b/libre/filesystem/resolv.conf deleted file mode 100644 index cecafba03..000000000 --- a/libre/filesystem/resolv.conf +++ /dev/null @@ -1,8 +0,0 @@ -# -# /etc/resolv.conf -# - -#search -#nameserver - -# End of file diff --git a/libre/filesystem/securetty b/libre/filesystem/securetty deleted file mode 100644 index 5a2235ce7..000000000 --- a/libre/filesystem/securetty +++ /dev/null @@ -1,15 +0,0 @@ -# -# /etc/securetty -# - -console -tty1 -tty2 -tty3 -tty4 -tty5 -tty6 -ttyS0 -hvc0 - -# End of file diff --git a/libre/filesystem/shadow b/libre/filesystem/shadow deleted file mode 100644 index 4c6e3d18f..000000000 --- a/libre/filesystem/shadow +++ /dev/null @@ -1,14 +0,0 @@ -root::14871:::::: -bin:x:14871:::::: -daemon:x:14871:::::: -mail:x:14871:::::: -ftp:x:14871:::::: -http:x:14871:::::: -uuidd:x:14871:::::: -dbus: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 deleted file mode 100644 index 18c1aeffa..000000000 --- a/libre/filesystem/shells +++ /dev/null @@ -1,8 +0,0 @@ -# -# /etc/shells -# - -/bin/sh -/bin/bash - -# End of file -- cgit v1.2.3-54-g00ecf From 99115d4e4c8280be3e68fc02bdd7d9ece8ceb0d6 Mon Sep 17 00:00:00 2001 From: André Fabian Silva Delgado Date: Mon, 25 Aug 2014 03:01:59 -0300 Subject: grub-parabola: add parabola suffix for the package --- ...ulib-fixes-for-C11.-Fixes-Savannah-bug-37.patch | 50 +++ libre/grub-parabola/09_parabola | 195 +++++++++++ libre/grub-parabola/60_memtest86+ | 32 ++ libre/grub-parabola/PKGBUILD | 385 +++++++++++++++++++++ .../grub-10_linux-detect-parabola-initramfs.patch | 54 +++ .../grub-10_linux-rebrand-free-distros.patch | 23 ++ libre/grub-parabola/grub-2.00-fix-docs.patch | 21 ++ .../grub-parabola/grub-2.00-mkinitcpio-0.15.patch | 11 + .../grub-2.00.5086-fix-lvm-parsing.patch | 54 +++ .../grub-add-GRUB_COLOR_variables.patch | 32 ++ libre/grub-parabola/grub.default | 50 +++ libre/grub-parabola/grub.install | 33 ++ .../parabola_grub_mkconfig_fixes.patch | 170 +++++++++ ...ulib-fixes-for-C11.-Fixes-Savannah-bug-37.patch | 50 --- libre/grub/09_parabola | 195 ----------- libre/grub/60_memtest86+ | 32 -- libre/grub/PKGBUILD | 384 -------------------- .../grub-10_linux-detect-parabola-initramfs.patch | 54 --- .../grub/grub-10_linux-rebrand-free-distros.patch | 23 -- libre/grub/grub-2.00-fix-docs.patch | 21 -- libre/grub/grub-2.00-mkinitcpio-0.15.patch | 11 - libre/grub/grub-2.00.5086-fix-lvm-parsing.patch | 54 --- libre/grub/grub-add-GRUB_COLOR_variables.patch | 32 -- libre/grub/grub.default | 50 --- libre/grub/grub.install | 33 -- libre/grub/parabola_grub_mkconfig_fixes.patch | 170 --------- 26 files changed, 1110 insertions(+), 1109 deletions(-) create mode 100644 libre/grub-parabola/0069-Backport-gnulib-fixes-for-C11.-Fixes-Savannah-bug-37.patch create mode 100644 libre/grub-parabola/09_parabola create mode 100644 libre/grub-parabola/60_memtest86+ create mode 100644 libre/grub-parabola/PKGBUILD create mode 100644 libre/grub-parabola/grub-10_linux-detect-parabola-initramfs.patch create mode 100644 libre/grub-parabola/grub-10_linux-rebrand-free-distros.patch create mode 100644 libre/grub-parabola/grub-2.00-fix-docs.patch create mode 100644 libre/grub-parabola/grub-2.00-mkinitcpio-0.15.patch create mode 100644 libre/grub-parabola/grub-2.00.5086-fix-lvm-parsing.patch create mode 100644 libre/grub-parabola/grub-add-GRUB_COLOR_variables.patch create mode 100644 libre/grub-parabola/grub.default create mode 100644 libre/grub-parabola/grub.install create mode 100644 libre/grub-parabola/parabola_grub_mkconfig_fixes.patch delete mode 100644 libre/grub/0069-Backport-gnulib-fixes-for-C11.-Fixes-Savannah-bug-37.patch delete mode 100644 libre/grub/09_parabola delete mode 100644 libre/grub/60_memtest86+ delete mode 100644 libre/grub/PKGBUILD delete mode 100644 libre/grub/grub-10_linux-detect-parabola-initramfs.patch delete mode 100644 libre/grub/grub-10_linux-rebrand-free-distros.patch delete mode 100644 libre/grub/grub-2.00-fix-docs.patch delete mode 100644 libre/grub/grub-2.00-mkinitcpio-0.15.patch delete mode 100644 libre/grub/grub-2.00.5086-fix-lvm-parsing.patch delete mode 100644 libre/grub/grub-add-GRUB_COLOR_variables.patch delete mode 100644 libre/grub/grub.default delete mode 100644 libre/grub/grub.install delete mode 100644 libre/grub/parabola_grub_mkconfig_fixes.patch (limited to 'libre') diff --git a/libre/grub-parabola/0069-Backport-gnulib-fixes-for-C11.-Fixes-Savannah-bug-37.patch b/libre/grub-parabola/0069-Backport-gnulib-fixes-for-C11.-Fixes-Savannah-bug-37.patch new file mode 100644 index 000000000..e043633af --- /dev/null +++ b/libre/grub-parabola/0069-Backport-gnulib-fixes-for-C11.-Fixes-Savannah-bug-37.patch @@ -0,0 +1,50 @@ +From d09689a5a2863043d007c1acb9bf0a8d1d3b776d Mon Sep 17 00:00:00 2001 +From: Colin Watson +Date: Fri, 28 Dec 2012 06:43:35 +0000 +Subject: [PATCH 069/364] Backport gnulib fixes for C11. Fixes Savannah bug + #37738. + +* grub-core/gnulib/stdio.in.h (gets): Warn on use only if +HAVE_RAW_DECL_GETS. +* m4/stdio_h.m4 (gl_STDIO_H): Check for gets. +--- + ChangeLog | 8 ++++++++ + grub-core/gnulib/stdio.in.h | 6 ++++-- + m4/stdio_h.m4 | 2 +- + 3 files changed, 13 insertions(+), 3 deletions(-) + +diff --git a/grub-core/gnulib/stdio.in.h b/grub-core/gnulib/stdio.in.h +index 80b9dbf..a8b00c6 100644 +--- a/grub-core/gnulib/stdio.in.h ++++ b/grub-core/gnulib/stdio.in.h +@@ -138,10 +138,12 @@ _GL_WARN_ON_USE (fflush, "fflush is not always POSIX compliant - " + #endif + + /* It is very rare that the developer ever has full control of stdin, +- so any use of gets warrants an unconditional warning. Assume it is +- always declared, since it is required by C89. */ ++ so any use of gets warrants an unconditional warning; besides, C11 ++ removed it. */ + #undef gets ++#if HAVE_RAW_DECL_GETS + _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); ++#endif + + #if @GNULIB_FOPEN@ + # if @REPLACE_FOPEN@ +diff --git a/m4/stdio_h.m4 b/m4/stdio_h.m4 +index f5650cd..8458bec 100644 +--- a/m4/stdio_h.m4 ++++ b/m4/stdio_h.m4 +@@ -37,7 +37,7 @@ AC_DEFUN([gl_STDIO_H], + dnl corresponding gnulib module is not in use, and which is not + dnl guaranteed by C89. + gl_WARN_ON_USE_PREPARE([[#include +- ]], [dprintf fpurge fseeko ftello getdelim getline popen renameat ++ ]], [dprintf fpurge fseeko ftello getdelim getline gets popen renameat + snprintf tmpfile vdprintf vsnprintf]) + ]) + +-- +1.8.1.4 + diff --git a/libre/grub-parabola/09_parabola b/libre/grub-parabola/09_parabola new file mode 100644 index 000000000..90a9062a3 --- /dev/null +++ b/libre/grub-parabola/09_parabola @@ -0,0 +1,195 @@ +#!/usr/bin/env bash + +## +## grub-mkconfig helper script specific to Parabola GNU/Linux-libre +## Contributed by "Keshav Amburay" +## Rebranded for Parabola by "André Silva" +## Updated on 08 February 2014 +## +## Script based on do_grub_config() function in Arch Archboot ISO Installer/Setup script +## Some parts taken from /etc/grub.d/10_linux script shipped by GRUB(2) upstream +## +## This script can be freely distributed and/or modified +## under the terms of the GNU General Public License as published by +## the Free Software Foundation, either version 3 of the License, or +## (at your option) any later version. +## +## This script is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +## GNU General Public License for more details. +## + +_FUNC_GRUB_FILE_PRESENT() { + + [[ -z "${GRUB_PLATFORM}" ]] && GRUB_PLATFORM="x86" + + if [[ "${GRUB_PLATFORM}" == "x86" ]]; then + check="--is-x86-linux32" + elif [[ "${GRUB_PLATFORM}" == "i386-xen-pae" ]]; then + check="--is-i386-xen-pae-domu" + elif [[ "${GRUB_PLATFORM}" == "x86_64-xen" ]]; then + check="--is-x86_64-xen-domu" + else + check="--is-${GRUB_PLATFORM}-linux" + fi + + case "${GRUB_PLATFORM}" in + x86) + list="$(for i in "${GRUB_ROOT}"/boot/vmlinuz-linux* ; do + if grub_file_is_not_garbage "${i}" && "${grub_file}" ${check} "${i}" ; then echo -n "${i} " ; fi + done)" ;; + *) + list="$(for i in "${GRUB_ROOT}"/boot/vmlinuz-linux* ; do + if grub_file_is_not_garbage "${i}" && "${grub_file}" ${check} "${i}" ; then echo -n "${i} " ; fi + done)" ;; + esac +} + +set -e + +prefix="/usr" +exec_prefix="${prefix}" +datarootdir="/usr/share" +datadir="${datarootdir}" +sysconfdir="/etc" + +. "${datarootdir}/grub/grub-mkconfig_lib" + +. "${sysconfdir}/default/grub" + +export TEXTDOMAIN="grub" +export TEXTDOMAINDIR="${datarootdir}/locale" + +CLASS="--class parabola --class gnu-linux --class gnu --class os" + +[[ "${grub_file}" != "" ]] && _FUNC_GRUB_FILE_PRESENT + +BOOT_PART_FS_UUID="$(${grub_probe} --target="fs_uuid" "/boot" 2>/dev/null)" +BOOT_PART_HINTS_STRING="$(${grub_probe} --target="hints_string" "/boot" 2>/dev/null || true)" +BOOT_PART_FS="$(${grub_probe} --target="fs" "/boot" 2>/dev/null)" + +ROOT_PART_GRUB_DEVICE="$(${grub_probe} --target=device / || true)" +ROOT_PART_FS="$(${grub_probe} --device ${ROOT_PART_GRUB_DEVICE} --target=fs 2> /dev/null || echo "unknown")" + +if [[ "${GRUB_LINUX_ROOT_DEVICE}" == "" ]]; then + + case "${ROOT_PART_FS}" in + btrfs) + rootsubvol="$(make_system_path_relative_to_its_root /)" + rootsubvol="${rootsubvol#/}" + if [[ "${rootsubvol}" != "" ]]; then + GRUB_LINUX_ROOT_DEVICE="subvol=${rootsubvol}" + fi + ;; + zfs) + rpool="$(${grub_probe} --device ${GRUB_DEVICE} --target=fs_label 2>/dev/null || true)" + bootfs="$(make_system_path_relative_to_its_root / | sed -e "s,@$,,")" + GRUB_LINUX_ROOT_DEVICE="ZFS=${rpool}${bootfs}" + ;; + esac + + if [[ "${GRUB_DEVICE_UUID}" == "" ]] || \ + [[ "${GRUB_DISABLE_LINUX_UUID}" == "true" ]] || \ + [[ ! -e "/dev/disk/by-uuid/${GRUB_DEVICE_UUID}" ]] || \ + uses_abstraction "${GRUB_DEVICE}" lvm ; then + GRUB_LINUX_ROOT_DEVICE="${GRUB_DEVICE}" + else + GRUB_LINUX_ROOT_DEVICE="UUID=${GRUB_DEVICE_UUID}" + fi +fi + +[[ "${GRUB_LINUX_PARAMS}" == "" ]] && GRUB_LINUX_PARAMS="${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" + +for _KERNEL_ in ${list} ; do + + echo "Found linux image: ${_KERNEL_}" >&2 + + basename="$(basename "${_KERNEL_}")" + dirname="$(dirname "${_KERNEL_}")" + REAL_DIR="$(make_system_path_relative_to_its_root "${dirname}")" + + _KERNEL_FILE_="$(echo ${_KERNEL_} | sed 's,/boot/,,g')" + _KERNEL_PKG_="pkg-$(echo ${_KERNEL_FILE_} | sed 's,vmlinuz-,,g')" + + _INITRAMFS_="${_KERNEL_FILE_/vmlinuz-/initramfs-}.img" + + if [[ -e "/boot/${_INITRAMFS_}" ]]; then + + echo "Found initramfs image: /boot/${_INITRAMFS_}" >&2 + +cat << EOF + +menuentry "Parabola GNU/Linux-libre ${_KERNEL_PKG_} kernel" ${CLASS} { + $(save_default_entry) + if [ x\$feature_all_video_module = xy ]; then + insmod all_video + fi + set gfxpayload=keep + insmod ${BOOT_PART_FS} + if [ x\$feature_platform_search_hint = xy ]; then + search --no-floppy --fs-uuid --set=root ${BOOT_PART_HINTS_STRING} ${BOOT_PART_FS_UUID} + else + search --no-floppy --fs-uuid --set=root ${BOOT_PART_FS_UUID} + fi + echo 'Loading Parabola GNU/Linux-libre ${_KERNEL_PKG_} kernel ...' + linux ${REAL_DIR}/${_KERNEL_FILE_} root=${GRUB_LINUX_ROOT_DEVICE} rw ${GRUB_LINUX_PARAMS} + echo 'Loading Parabola GNU/Linux-libre ${_KERNEL_PKG_} kernel initramfs ...' + initrd ${REAL_DIR}/${_INITRAMFS_} +} + +EOF + fi + + _INITRAMFS_FALLBACK_="${_KERNEL_FILE_/vmlinuz-/initramfs-}-fallback.img" + + if [[ -e "/boot/${_INITRAMFS_FALLBACK_}" ]]; then + + echo "Found fallback initramfs image: /boot/${_INITRAMFS_FALLBACK_}" >&2 + +cat << EOF + +menuentry "Parabola GNU/Linux-libre ${_KERNEL_PKG_} kernel (fallback initramfs)" ${CLASS} { + $(save_default_entry) + if [ x\$feature_all_video_module = xy ]; then + insmod all_video + fi + set gfxpayload=keep + insmod ${BOOT_PART_FS} + if [ x\$feature_platform_search_hint = xy ]; then + search --no-floppy --fs-uuid --set=root ${BOOT_PART_HINTS_STRING} ${BOOT_PART_FS_UUID} + else + search --no-floppy --fs-uuid --set=root ${BOOT_PART_FS_UUID} + fi + echo 'Loading Parabola GNU/Linux-libre ${_KERNEL_PKG_} kernel ...' + linux ${REAL_DIR}/${_KERNEL_FILE_} root=${GRUB_LINUX_ROOT_DEVICE} rw ${GRUB_LINUX_PARAMS} + echo 'Loading Parabola GNU/Linux-libre ${_KERNEL_PKG_} kernel fallback initramfs ...' + initrd ${REAL_DIR}/${_INITRAMFS_FALLBACK_} +} + +EOF + fi + + if [[ ! -e "/boot/${_INITRAMFS_}" ]] && [[ ! -e "/boot/${_INITRAMFS_FALLBACK_}" ]]; then +cat << EOF + +menuentry "Parabola GNU/Linux-libre ${_KERNEL_PKG_} kernel (no initramfs)" ${CLASS} { + $(save_default_entry) + if [ x\$feature_all_video_module = xy ]; then + insmod all_video + fi + set gfxpayload=keep + insmod ${BOOT_PART_FS} + if [ x\$feature_platform_search_hint = xy ]; then + search --no-floppy --fs-uuid --set=root ${BOOT_PART_HINTS_STRING} ${BOOT_PART_FS_UUID} + else + search --no-floppy --fs-uuid --set=root ${BOOT_PART_FS_UUID} + fi + echo 'Loading Parabola GNU/Linux-libre ${_KERNEL_PKG_} kernel ...' + linux ${REAL_DIR}/${_KERNEL_FILE_} root=${GRUB_LINUX_ROOT_DEVICE} rw ${GRUB_LINUX_PARAMS} +} + +EOF + fi + +done diff --git a/libre/grub-parabola/60_memtest86+ b/libre/grub-parabola/60_memtest86+ new file mode 100644 index 000000000..086f0cc84 --- /dev/null +++ b/libre/grub-parabola/60_memtest86+ @@ -0,0 +1,32 @@ +#!/usr/bin/env bash +######################################################## +# This script generates a memtest86+ entry on grub.cfg # +# if memtest is installed on the system. # +######################################################## + +prefix="/usr" +exec_prefix="${prefix}" + +datarootdir="/usr/share" +datadir="${datarootdir}" + +. "${datadir}/grub/grub-mkconfig_lib" + +MEMTEST86_IMAGE="/boot/memtest86+/memtest.bin" +CLASS="--class memtest86 --class gnu --class tool" + +if [ -e "${MEMTEST86_IMAGE}" ] && is_path_readable_by_grub "${MEMTEST86_IMAGE}" ; then + ## image exists, create menu entry + echo "Found memtest86+ image: ${MEMTEST86_IMAGE}" >&2 + _GRUB_MEMTEST_HINTS_STRING="$(${grub_probe} --target=hints_string ${MEMTEST86_IMAGE})" + _GRUB_MEMTEST_FS_UUID="$(${grub_probe} --target=fs_uuid ${MEMTEST86_IMAGE})" + _GRUB_MEMTEST_REL_PATH="$(make_system_path_relative_to_its_root ${MEMTEST86_IMAGE})" + cat << EOF +if [ "\${grub_platform}" == "pc" ]; then + menuentry "Memory Tester (memtest86+)" ${CLASS} { + search --fs-uuid --no-floppy --set=root ${_GRUB_MEMTEST_HINTS_STRING} ${_GRUB_MEMTEST_FS_UUID} + linux16 ${_GRUB_MEMTEST_REL_PATH} ${GRUB_CMDLINE_MEMTEST86} + } +fi +EOF +fi diff --git a/libre/grub-parabola/PKGBUILD b/libre/grub-parabola/PKGBUILD new file mode 100644 index 000000000..a4c4bfb9f --- /dev/null +++ b/libre/grub-parabola/PKGBUILD @@ -0,0 +1,385 @@ +# Maintainer (Arch): Tobias Powalowski +# Maintainer (Arch): Ronald van Haren +# Contributor (Arch): Keshav Amburay <(the ddoott ridikulus ddoott rat) (aatt) (gemmaeiil) (ddoott) (ccoomm)> +# Maintainer: André Silva +# Contributor: Márcio Silva + +## "1" to enable IA32-EFI build in Arch x86_64, "0" to disable +_IA32_EFI_IN_ARCH_X64="1" + +## "1" to enable EMU build, "0" to disable +_GRUB_EMU_BUILD="0" + +_pkgver="2.02" +_GRUB_GIT_TAG="grub-2.02-beta2" + +_UNIFONT_VER="6.3.20131217" + +[[ "${CARCH}" == "x86_64" ]] && _EFI_ARCH="x86_64" +[[ "${CARCH}" == "i686" ]] && _EFI_ARCH="i386" + +[[ "${CARCH}" == "x86_64" ]] && _EMU_ARCH="x86_64" +[[ "${CARCH}" == "i686" ]] && _EMU_ARCH="i386" + +_pkgname="grub" +pkgname="grub-parabola" +pkgdesc="GNU GRand Unified Bootloader (2), (Parabola rebranded)" +pkgver=2.02.beta2 +pkgrel=4 +epoch="1" +url="https://www.gnu.org/software/grub/" +arch=('x86_64' 'i686') +license=('GPL3') +backup=('etc/default/grub' 'etc/grub.d/40_custom') +install="${_pkgname}.install" +options=('!makeflags') + +conflicts=('grub-common' 'grub-bios' 'grub-emu' "grub-efi-${_EFI_ARCH}" 'grub-legacy' 'grub') +replaces=('grub-common' 'grub-bios' 'grub-emu' "grub-efi-${_EFI_ARCH}" 'grub') +provides=('grub-common' 'grub-bios' 'grub-emu' "grub-efi-${_EFI_ARCH}" "grub=$pkgver") + +makedepends=('git' 'rsync' 'xz' 'freetype2' 'ttf-dejavu' 'python' 'autogen' + 'texinfo' 'help2man' 'gettext' 'device-mapper' 'fuse') +depends=('sh' 'xz' 'gettext' 'device-mapper') +optdepends=('freetype2: For grub-mkfont usage' + 'fuse: For grub-mount usage' + 'dosfstools: For grub-mkrescue FAT FS and EFI support' + 'efibootmgr: For grub-install EFI support' + 'libisoburn: Provides xorriso for generating grub rescue iso using grub-mkrescue' + 'os-prober: To detect other OSes when generating grub.cfg in BIOS systems' + 'mtools: For grub-mkrescue FAT FS support') + +if [[ "${_GRUB_EMU_BUILD}" == "1" ]]; then + makedepends+=('libusbx' 'sdl') + optdepends+=('libusbx: For grub-emu USB support' + 'sdl: For grub-emu SDL support') +fi + +source=("grub-${_pkgver}::git+git://git.sv.gnu.org/grub.git#tag=${_GRUB_GIT_TAG}" + "grub-extras::git+git://git.sv.gnu.org/grub-extras.git#branch=master" + "http://ftp.gnu.org/gnu/unifont/unifont-${_UNIFONT_VER}/unifont-${_UNIFONT_VER}.bdf.gz" + "http://ftp.gnu.org/gnu/unifont/unifont-${_UNIFONT_VER}/unifont-${_UNIFONT_VER}.bdf.gz.sig" + 'grub-10_linux-detect-parabola-initramfs.patch' + 'grub-add-GRUB_COLOR_variables.patch' + '60_memtest86+' + 'grub.default' + 'grub-10_linux-rebrand-free-distros.patch') + +md5sums=('SKIP' + 'SKIP' + '728b7439ac733a7c0d56049adec364c7' + 'SKIP' + '945527e0de8d384166a4cf23439ae9ee' + 'e506ae4a9f9f7d1b765febfa84e10d48' + 'be55eabc102f2c60b38ed35c203686d6' + '8d1dd54ae4a1b550c097e056892ce953' + 'c8ac993bc9c0fe288c177a20630ccc46') + +_pkgver() { + cd "${srcdir}/grub-${_pkgver}/" + echo "$(git describe --tags)" | sed -e 's|grub.||g' -e 's|-|\.|g' +} + +prepare() { + + cd "${srcdir}/grub-${_pkgver}/" + + msg "Patch to detect of Parabola GNU/Linux-libre initramfs images by grub-mkconfig" + patch -Np1 -i "${srcdir}/grub-10_linux-detect-parabola-initramfs.patch" + echo + + msg "Patch to enable GRUB_COLOR_* variables in grub-mkconfig" + ## Based on http://lists.gnu.org/archive/html/grub-devel/2012-02/msg00021.html + patch -Np1 -i "${srcdir}/grub-add-GRUB_COLOR_variables.patch" + echo + + msg "Fix DejaVuSans.ttf location so that grub-mkfont can create *.pf2 files for starfield theme" + sed 's|/usr/share/fonts/dejavu|/usr/share/fonts/dejavu /usr/share/fonts/TTF|g' -i "${srcdir}/grub-${_pkgver}/configure.ac" + + msg "Rebranding for some free distros" + patch -Np1 -i "${srcdir}/grub-10_linux-rebrand-free-distros.patch" + echo + + msg "Fix mkinitcpio 'rw' FS#36275" + sed 's| ro | rw |g' -i "${srcdir}/grub-${_pkgver}/util/grub.d/10_linux.in" + + # msg "autogen.sh requires python (2/3). since bzr is in makedepends, use python2 and no need to pull python3" + # sed 's|python |python2 |g' -i "${srcdir}/grub-${_pkgver}/autogen.sh" + + msg "Pull in latest language files" + ./linguas.sh + echo + + msg "Remove not working langs which need LC_ALL=C.UTF-8" + sed -e 's#en@cyrillic en@greek##g' -i "${srcdir}/grub-${_pkgver}/po/LINGUAS" + + msg "Avoid problem with unifont during compile of grub, http://savannah.gnu.org/bugs/?40330 and https://bugs.archlinux.org/task/37847" + cp "${srcdir}/unifont-${_UNIFONT_VER}.bdf" "${srcdir}/grub-${_pkgver}/unifont.bdf" + +} + +_build_grub-common_and_bios() { + + msg "Set ARCH dependent variables for bios build" + if [[ "${CARCH}" == 'x86_64' ]]; then + _EFIEMU="--enable-efiemu" + else + _EFIEMU="--disable-efiemu" + fi + + msg "Copy the source for building the bios part" + cp -r "${srcdir}/grub-${_pkgver}" "${srcdir}/grub-${_pkgver}-bios" + cd "${srcdir}/grub-${_pkgver}-bios/" + + msg "Add the grub-extra sources for bios build" + install -d "${srcdir}/grub-${_pkgver}-bios/grub-extras" + cp -r "${srcdir}/grub-extras/915resolution" "${srcdir}/grub-${_pkgver}-bios/grub-extras/915resolution" + export GRUB_CONTRIB="${srcdir}/grub-${_pkgver}-bios/grub-extras/" + + msg "Unset all compiler FLAGS for bios build" + unset CFLAGS + unset CPPFLAGS + unset CXXFLAGS + unset LDFLAGS + unset MAKEFLAGS + + cd "${srcdir}/grub-${_pkgver}-bios/" + + msg "Run autogen.sh for bios build" + ./autogen.sh + echo + + msg "Run ./configure for bios build" + ./configure \ + --with-platform="pc" \ + --target="i386" \ + "${_EFIEMU}" \ + --enable-mm-debug \ + --enable-nls \ + --enable-device-mapper \ + --enable-cache-stats \ + --enable-boot-time \ + --enable-grub-mkfont \ + --enable-grub-mount \ + --prefix="/usr" \ + --bindir="/usr/bin" \ + --sbindir="/usr/bin" \ + --mandir="/usr/share/man" \ + --infodir="/usr/share/info" \ + --datarootdir="/usr/share" \ + --sysconfdir="/etc" \ + --program-prefix="" \ + --with-bootdir="/boot" \ + --with-grubdir="grub" \ + --disable-silent-rules \ + --disable-werror + echo + + msg "Run make for bios build" + make + echo +} + +_build_grub-efi() { + + msg "Copy the source for building the ${_EFI_ARCH} efi part" + cp -r "${srcdir}/grub-${_pkgver}" "${srcdir}/grub-${_pkgver}-efi-${_EFI_ARCH}" + cd "${srcdir}/grub-${_pkgver}-efi-${_EFI_ARCH}/" + + msg "Unset all compiler FLAGS for ${_EFI_ARCH} efi build" + unset CFLAGS + unset CPPFLAGS + unset CXXFLAGS + unset LDFLAGS + unset MAKEFLAGS + + cd "${srcdir}/grub-${_pkgver}-efi-${_EFI_ARCH}/" + + msg "Run autogen.sh for ${_EFI_ARCH} efi build" + ./autogen.sh + echo + + msg "Run ./configure for ${_EFI_ARCH} efi build" + ./configure \ + --with-platform="efi" \ + --target="${_EFI_ARCH}" \ + --disable-efiemu \ + --enable-mm-debug \ + --enable-nls \ + --enable-device-mapper \ + --enable-cache-stats \ + --enable-boot-time \ + --enable-grub-mkfont \ + --enable-grub-mount \ + --prefix="/usr" \ + --bindir="/usr/bin" \ + --sbindir="/usr/bin" \ + --mandir="/usr/share/man" \ + --infodir="/usr/share/info" \ + --datarootdir="/usr/share" \ + --sysconfdir="/etc" \ + --program-prefix="" \ + --with-bootdir="/boot" \ + --with-grubdir="grub" \ + --disable-silent-rules \ + --disable-werror + echo + + msg "Run make for ${_EFI_ARCH} efi build" + make + echo + +} + +_build_grub-emu() { + + msg "Copy the source for building the emu part" + cp -r "${srcdir}/grub-${_pkgver}/" "${srcdir}/grub-${_pkgver}-emu/" + + msg "Unset all compiler FLAGS for emu build" + unset CFLAGS + unset CPPFLAGS + unset CXXFLAGS + unset LDFLAGS + unset MAKEFLAGS + + cd "${srcdir}/grub-${_pkgver}-emu/" + + msg "Run autogen.sh for emu build" + ./autogen.sh + echo + + msg "Run ./configure for emu build" + ./configure \ + --with-platform="emu" \ + --target="${_EMU_ARCH}" \ + --enable-mm-debug \ + --enable-nls \ + --enable-device-mapper \ + --enable-cache-stats \ + --enable-grub-mkfont \ + --enable-grub-mount \ + --enable-grub-emu-usb=no \ + --enable-grub-emu-sdl=no \ + --disable-grub-emu-pci \ + --prefix="/usr" \ + --bindir="/usr/bin" \ + --sbindir="/usr/bin" \ + --mandir="/usr/share/man" \ + --infodir="/usr/share/info" \ + --datarootdir="/usr/share" \ + --sysconfdir="/etc" \ + --program-prefix="" \ + --with-bootdir="/boot" \ + --with-grubdir="grub" \ + --disable-silent-rules \ + --disable-werror + echo + + msg "Run make for emu build" + make + echo + +} + +build() { + + cd "${srcdir}/grub-${_pkgver}/" + + msg "Build grub bios stuff" + _build_grub-common_and_bios + echo + + msg "Build grub ${_EFI_ARCH} efi stuff" + _build_grub-efi + echo + + if [[ "${CARCH}" == "x86_64" ]] && [[ "${_IA32_EFI_IN_ARCH_X64}" == "1" ]]; then + msg "Build grub i386 efi stuff" + _EFI_ARCH="i386" _build_grub-efi + echo + fi + + if [[ "${_GRUB_EMU_BUILD}" == "1" ]]; then + msg "Build grub emu stuff" + _build_grub-emu + echo + fi + +} + +_package_grub-common_and_bios() { + + cd "${srcdir}/grub-${_pkgver}-bios/" + + msg "Run make install for bios build" + make DESTDIR="${pkgdir}/" bashcompletiondir="/usr/share/bash-completion/completions" install + echo + + msg "Remove gdb debugging related files for bios build" + rm -f "${pkgdir}/usr/lib/grub/i386-pc"/*.module || true + rm -f "${pkgdir}/usr/lib/grub/i386-pc"/*.image || true + rm -f "${pkgdir}/usr/lib/grub/i386-pc"/{kernel.exec,gdb_grub,gmodule.pl} || true + + msg "Install extra /etc/grub.d/ files" + install -D -m0755 "${srcdir}/60_memtest86+" "${pkgdir}/etc/grub.d/60_memtest86+" + + msg "Install /etc/default/grub (used by grub-mkconfig)" + install -D -m0644 "${srcdir}/grub.default" "${pkgdir}/etc/default/grub" + + +} + +_package_grub-efi() { + + cd "${srcdir}/grub-${_pkgver}-efi-${_EFI_ARCH}/" + + msg "Run make install for ${_EFI_ARCH} efi build" + make DESTDIR="${pkgdir}/" bashcompletiondir="/usr/share/bash-completion/completions" install + echo + + msg "Remove gdb debugging related files for ${_EFI_ARCH} efi build" + rm -f "${pkgdir}/usr/lib/grub/${_EFI_ARCH}-efi"/*.module || true + rm -f "${pkgdir}/usr/lib/grub/${_EFI_ARCH}-efi"/*.image || true + rm -f "${pkgdir}/usr/lib/grub/${_EFI_ARCH}-efi"/{kernel.exec,gdb_grub,gmodule.pl} || true + +} + +_package_grub-emu() { + + cd "${srcdir}/grub-${_pkgver}-emu/" + + msg "Run make install for emu build" + make DESTDIR="${pkgdir}/" bashcompletiondir="/usr/share/bash-completion/completions" install + echo + + msg "Remove gdb debugging related files for emu build" + rm -f "${pkgdir}/usr/lib/grub/${_EMU_ARCH}-emu"/*.module || true + rm -f "${pkgdir}/usr/lib/grub/${_EMU_ARCH}-emu"/*.image || true + rm -f "${pkgdir}/usr/lib/grub/${_EMU_ARCH}-emu"/{kernel.exec,gdb_grub,gmodule.pl} || true + +} + +package() { + + cd "${srcdir}/grub-${_pkgver}/" + + msg "Package grub ${_EFI_ARCH} efi stuff" + _package_grub-efi + + if [[ "${CARCH}" == "x86_64" ]] && [[ "${_IA32_EFI_IN_ARCH_X64}" == "1" ]]; then + msg "Package grub i386 efi stuff" + _EFI_ARCH="i386" _package_grub-efi + echo + fi + + if [[ "${_GRUB_EMU_BUILD}" == "1" ]]; then + msg "Package grub emu stuff" + _package_grub-emu + echo + fi + + msg "Package grub bios stuff" + _package_grub-common_and_bios + +} diff --git a/libre/grub-parabola/grub-10_linux-detect-parabola-initramfs.patch b/libre/grub-parabola/grub-10_linux-detect-parabola-initramfs.patch new file mode 100644 index 000000000..18d9d520c --- /dev/null +++ b/libre/grub-parabola/grub-10_linux-detect-parabola-initramfs.patch @@ -0,0 +1,54 @@ +From b470ffd22e43acc7c11231180187a720efd88de1 Mon Sep 17 00:00:00 2001 +From: Keshav Amburay +Date: Sat, 5 Apr 2014 20:40:51 -0400 +Subject: [PATCH] 10_linux: Detect Arch Linux main and fallback initramfs + images + +--- + util/grub.d/10_linux.in | 16 +++++++++++++++- + 1 file changed, 15 insertions(+), 1 deletion(-) + +diff --git a/util/grub.d/10_linux.in b/util/grub.d/10_linux.in +index 00d1931..7d4086b 100644 +--- a/util/grub.d/10_linux.in ++++ b/util/grub.d/10_linux.in +@@ -81,6 +81,8 @@ linux_entry () + case $type in + recovery) + title="$(gettext_printf "%s, with Linux %s (recovery mode)" "${os}" "${version}")" ;; ++ fallback) ++ title="$(gettext_printf "%s, with Linux %s (fallback initramfs)" "${os}" "${version}")" ;; + *) + title="$(gettext_printf "%s, with Linux %s" "${os}" "${version}")" ;; + esac +@@ -180,7 +182,7 @@ while [ "x$list" != "x" ] ; do + basename=`basename $linux` + dirname=`dirname $linux` + rel_dirname=`make_system_path_relative_to_its_root $dirname` +- version=`echo $basename | sed -e "s,^[^0-9]*-,,g"` ++ version=`echo $basename | sed -e "s,vmlinuz-,,g"` + alt_version=`echo $version | sed -e "s,\.old$,,g"` + linux_root_device_thisversion="${LINUX_ROOT_DEVICE}" + +@@ -236,6 +238,18 @@ while [ "x$list" != "x" ] ; do + + linux_entry "${OS}" "${version}" advanced \ + "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" ++ ++ if test -e "${dirname}/initramfs-${version}-fallback.img" ; then ++ initrd="initramfs-${version}-fallback.img" ++ ++ if test -n "${initrd}" ; then ++ gettext_printf "Found fallback initramfs image: %s\n" "${dirname}/${initrd}" >&2 ++ fi ++ ++ linux_entry "${OS}" "${version}" fallback \ ++ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" ++ fi ++ + if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then + linux_entry "${OS}" "${version}" recovery \ + "single ${GRUB_CMDLINE_LINUX}" +-- +1.9.1 + diff --git a/libre/grub-parabola/grub-10_linux-rebrand-free-distros.patch b/libre/grub-parabola/grub-10_linux-rebrand-free-distros.patch new file mode 100644 index 000000000..7edb22a1f --- /dev/null +++ b/libre/grub-parabola/grub-10_linux-rebrand-free-distros.patch @@ -0,0 +1,23 @@ +diff --git a/util/grub.d/10_linux.in b/util/grub.d/10_linux.in +index 00d1931..23de7ce 100644 +--- a/util/grub.d/10_linux.in ++++ b/util/grub.d/10_linux.in +@@ -31,7 +31,17 @@ CLASS="--class gnu-linux --class gnu --class os" + if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then + OS=GNU/Linux + else +- OS="${GRUB_DISTRIBUTOR} GNU/Linux" ++ if echo ${GRUB_DISTRIBUTOR} | grep -qi Parabola ; then ++ OS="${GRUB_DISTRIBUTOR} GNU/Linux-libre" ++ elif echo ${GRUB_DISTRIBUTOR} | grep -qi Blag ; then ++ OS="${GRUB_DISTRIBUTOR} Linux and GNU" ++ elif echo ${GRUB_DISTRIBUTOR} | grep -qi Musix ; then ++ OS="${GRUB_DISTRIBUTOR} GNU+Linux" ++ elif echo ${GRUB_DISTRIBUTOR} | grep -qi Dragora ; then ++ OS="${GRUB_DISTRIBUTOR} GNU/Linux-libre" ++ else ++ OS="${GRUB_DISTRIBUTOR} GNU/Linux" ++ fi + CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1|LC_ALL=C sed 's,[^[:alnum:]_],_,g') ${CLASS}" + fi + diff --git a/libre/grub-parabola/grub-2.00-fix-docs.patch b/libre/grub-parabola/grub-2.00-fix-docs.patch new file mode 100644 index 000000000..0aa481154 --- /dev/null +++ b/libre/grub-parabola/grub-2.00-fix-docs.patch @@ -0,0 +1,21 @@ +From 40d6b00fa48ae9c1cecf143da5c6061f6ffcb719 Mon Sep 17 00:00:00 2001 +From: Ray Strode + +--- + util/getroot.c | 12 +++++++++--- + 1 file changed, 9 insertions(+), 3 deletions(-) + +diff --git a/util/getroot.c b/util/getroot.c +index 2ad8a55..3afcf96 100644 +--- a/util/getroot.c ++++ b/util/getroot.c +@@ -1322,7 +1322,7 @@ grub_util_get_dev_abstraction (const char *os_dev) + static void + pull_lvm_by_command (const char *os_dev) + { +- char *argv[6]; ++ char *argv[8]; + int fd; + pid_t pid; + FILE *mdadm; +@@ -1351,12 +1351,17 @@ pull_lvm_by_command (const char *os_dev) + + /* execvp has inconvenient types, hence the casts. None of these + strings will actually be modified. */ ++ /* by default PV name is left aligned in 10 character field, meaning that ++ we do not know where name ends. Using dummy --separator disables ++ alignment. We have a single field, so separator itself is not output */ + argv[0] = (char *) "vgs"; + argv[1] = (char *) "--options"; + argv[2] = (char *) "pv_name"; + argv[3] = (char *) "--noheadings"; +- argv[4] = vgname; +- argv[5] = NULL; ++ argv[4] = (char *) "--separator"; ++ argv[5] = (char *) ":"; ++ argv[6] = vgname; ++ argv[7] = NULL; + + pid = exec_pipe (argv, &fd); + free (vgname); +@@ -1376,6 +1381,7 @@ pull_lvm_by_command (const char *os_dev) + while (getline (&buf, &len, mdadm) > 0) + { + char *ptr; ++ /* LVM adds two spaces as standard prefix */ + for (ptr = buf; ptr < buf + 2 && *ptr == ' '; ptr++); + if (*ptr == '\0') + continue; diff --git a/libre/grub-parabola/grub-add-GRUB_COLOR_variables.patch b/libre/grub-parabola/grub-add-GRUB_COLOR_variables.patch new file mode 100644 index 000000000..c113a81d5 --- /dev/null +++ b/libre/grub-parabola/grub-add-GRUB_COLOR_variables.patch @@ -0,0 +1,32 @@ +diff --git a/util/grub-mkconfig.in b/util/grub-mkconfig.in +index 3390ba9..c416489 100644 +--- a/util/grub-mkconfig.in ++++ b/util/grub-mkconfig.in +@@ -218,6 +218,8 @@ export GRUB_DEFAULT \ + GRUB_THEME \ + GRUB_GFXPAYLOAD_LINUX \ + GRUB_DISABLE_OS_PROBER \ ++ GRUB_COLOR_NORMAL \ ++ GRUB_COLOR_HIGHLIGHT \ + GRUB_INIT_TUNE \ + GRUB_SAVEDEFAULT \ + GRUB_ENABLE_CRYPTODISK \ +diff --git a/util/grub.d/00_header.in b/util/grub.d/00_header.in +index d2e7252..8259f45 100644 +--- a/util/grub.d/00_header.in ++++ b/util/grub.d/00_header.in +@@ -125,6 +125,14 @@ cat <