Merge remote-tracking branch 'origin/pr/77'
* origin/pr/77: archlinux: remove unnecessary glib-compile-scheme archlinux: provide automatic qubes-trigger-sync-appmenus through pacman hooks archlinux: update installer script in prevision of pacman.d drop-ins
This commit is contained in:
commit
b8b3433d3f
@ -6,7 +6,7 @@
|
|||||||
# Maintainer: Olivier Medoc <o_medoc@yahoo.fr>
|
# Maintainer: Olivier Medoc <o_medoc@yahoo.fr>
|
||||||
pkgname=qubes-vm-core
|
pkgname=qubes-vm-core
|
||||||
pkgver=`cat version`
|
pkgver=`cat version`
|
||||||
pkgrel=6
|
pkgrel=7
|
||||||
epoch=
|
epoch=
|
||||||
pkgdesc="The Qubes core files for installation inside a Qubes VM."
|
pkgdesc="The Qubes core files for installation inside a Qubes VM."
|
||||||
arch=("x86_64")
|
arch=("x86_64")
|
||||||
@ -25,10 +25,10 @@ options=()
|
|||||||
install=PKGBUILD.install
|
install=PKGBUILD.install
|
||||||
changelog=
|
changelog=
|
||||||
|
|
||||||
source=(PKGBUILD.qubes-ensure-lib-modules.service)
|
source=(PKGBUILD.qubes-ensure-lib-modules.service PKGBUILD.qubes-update-desktop-icons.hook)
|
||||||
|
|
||||||
noextract=()
|
noextract=()
|
||||||
md5sums=('88f4b3d5b156888a9d38f5bc28702ab8') #generate with 'makepkg -g'
|
md5sums=('88f4b3d5b156888a9d38f5bc28702ab8' 'bbfb946d6d2787e5abf8e2236502a3d4')
|
||||||
|
|
||||||
|
|
||||||
build() {
|
build() {
|
||||||
@ -78,6 +78,10 @@ package() {
|
|||||||
# Install systemd script allowing to automount /lib/modules
|
# Install systemd script allowing to automount /lib/modules
|
||||||
install -m 644 $srcdir/PKGBUILD.qubes-ensure-lib-modules.service ${pkgdir}/usr/lib/systemd/system/qubes-ensure-lib-modules.service
|
install -m 644 $srcdir/PKGBUILD.qubes-ensure-lib-modules.service ${pkgdir}/usr/lib/systemd/system/qubes-ensure-lib-modules.service
|
||||||
|
|
||||||
|
# Install pacman hook to update desktop icons
|
||||||
|
mkdir -p ${pkgdir}/usr/share/libalpm/hooks/
|
||||||
|
install -m 644 $srcdir/PKGBUILD.qubes-update-desktop-icons.hook ${pkgdir}/usr/share/libalpm/hooks/qubes-update-desktop-icons.hook
|
||||||
|
|
||||||
# Archlinux specific: enable autologin on tty1
|
# Archlinux specific: enable autologin on tty1
|
||||||
mkdir -p $pkgdir/etc/systemd/system/getty@tty1.service.d/
|
mkdir -p $pkgdir/etc/systemd/system/getty@tty1.service.d/
|
||||||
cat <<EOF > $pkgdir/etc/systemd/system/getty@tty1.service.d/autologin.conf
|
cat <<EOF > $pkgdir/etc/systemd/system/getty@tty1.service.d/autologin.conf
|
||||||
|
@ -212,12 +212,59 @@ APPENDLINE=$3
|
|||||||
grep -q "$APPENDLINE" "$FILE" || sed "/$APPENDAFTERLINE/a$APPENDLINE" -i "$FILE"
|
grep -q "$APPENDLINE" "$FILE" || sed "/$APPENDAFTERLINE/a$APPENDLINE" -i "$FILE"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
config_cleanupmark() {
|
||||||
|
FILE="$1"
|
||||||
|
BEGINMARK="$2"
|
||||||
|
ENDMARK="$3"
|
||||||
|
if grep -q "$BEGINMARK" "$FILE"; then
|
||||||
|
if grep -q "$ENDMARK" "$FILE"; then
|
||||||
|
cp "$FILE" "$FILE.qubes-update-orig"
|
||||||
|
sed -i -e "/^$BEGINMARK\$/,/^$ENDMARK\$/{
|
||||||
|
/^$ENDMARK\$/b
|
||||||
|
/^$BEGINMARK$/!d
|
||||||
|
}" "$FILE"
|
||||||
|
rm -f "$FILE.qubes-update-orig"
|
||||||
|
else
|
||||||
|
echo "ERROR: found $BEGINMARK marker but not $ENDMARK in $FILE. Please cleanup this file manually."
|
||||||
|
fi
|
||||||
|
elif grep -q "$ENDMARK" "$FILE"; then
|
||||||
|
echo "ERROR: found $ENDMARK marker but not $BEGINMARK in $FILE. Please cleanup this file manually."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
update_finalize() {
|
update_finalize() {
|
||||||
|
|
||||||
# Archlinux specific: Prepare pacman.conf to add qubes specific config
|
# Archlinux specific: Prepare pacman.conf to add qubes specific config
|
||||||
QUBES_MARKER="### QUBES CONFIG MARKER ###"
|
QUBES_MARKER="### QUBES CONFIG MARKER ###"
|
||||||
config_prependtomark "/etc/pacman.conf" "# REPOSITORIES" "$QUBES_MARKER"
|
config_prependtomark "/etc/pacman.conf" "# REPOSITORIES" "$QUBES_MARKER"
|
||||||
|
|
||||||
|
# Ensure pam.d will not be modified by archlinux package updates
|
||||||
|
config_appendtomark '/etc/pacman.conf' "$QUBES_MARKER" 'NoUpgrade = etc/pam.d/su'
|
||||||
|
config_appendtomark '/etc/pacman.conf' "$QUBES_MARKER" 'NoUpgrade = etc/pam.d/su-l'
|
||||||
|
|
||||||
|
# Add Qubes setup script markers at the right place (this won't work at the end of pacman.conf)"
|
||||||
|
config_appendtomark "/etc/pacman.conf" "$QUBES_MARKER" "### QUBES END ###"
|
||||||
|
config_appendtomark "/etc/pacman.conf" "$QUBES_MARKER" "### QUBES BEGIN ###"
|
||||||
|
|
||||||
|
|
||||||
|
## Archlinux specific: Cleanup pre pacman.d qubes marker
|
||||||
|
## Commented out until pacman.d snipped are supported
|
||||||
|
#QUBES_MARKER="### QUBES CONFIG MARKER ###"
|
||||||
|
#if grep -q "$QUBES_MARKER" /etc/pacman.conf; then
|
||||||
|
# if ! grep -q "### QUBES CONFIG END MARKER ###" /etc/pacman.conf; then
|
||||||
|
# # Perform cleanup before continuing
|
||||||
|
# config_prependtomark "/etc/pacman.conf" "# REPOSITORIES" "### QUBES CONFIG END MARKER ###"
|
||||||
|
# config_cleanupmark "/etc/pacman.conf" "$QUBES_MARKER" "### QUBES CONFIG END MARKER ###"
|
||||||
|
# fi
|
||||||
|
#fi
|
||||||
|
#config_prependtomark "/etc/pacman.conf" "# REPOSITORIES" "$QUBES_MARKER"
|
||||||
|
#config_prependtomark "/etc/pacman.conf" "# REPOSITORIES" "### QUBES CONFIG END MARKER ###"
|
||||||
|
#
|
||||||
|
## Add qubes includes
|
||||||
|
#config_appendtomark "/etc/pacman.conf" "$QUBES_MARKER" "Include /etc/pacman.d/qubes-noupdate.conf"
|
||||||
|
#config_appendtomark "/etc/pacman.conf" "$QUBES_MARKER" "Include /etc/pacman.d/qubes-updateproxy.conf"
|
||||||
|
#config_prependtomark "/etc/pacman.conf" "### QUBES CONFIG END MARKER ###" "Include /etc/pacman.d/qubes-repositories.conf"
|
||||||
|
|
||||||
# Archlinux specific: Update pam.d configuration for su to enable systemd-login wrapper
|
# Archlinux specific: Update pam.d configuration for su to enable systemd-login wrapper
|
||||||
# Also remove pam_unix.so from su configuration
|
# Also remove pam_unix.so from su configuration
|
||||||
# as system-login (which include system-auth) already gives pam_unix.so
|
# as system-login (which include system-auth) already gives pam_unix.so
|
||||||
@ -237,20 +284,12 @@ account include system-login
|
|||||||
session include system-login
|
session include system-login
|
||||||
EOF
|
EOF
|
||||||
cp /etc/pam.d/su /etc/pam.d/su-l
|
cp /etc/pam.d/su /etc/pam.d/su-l
|
||||||
|
|
||||||
echo "Ensure pam.d will not be modified by archlinux package updates"
|
|
||||||
config_appendtomark '/etc/pacman.conf' "$QUBES_MARKER" 'NoUpgrade = etc/pam.d/su'
|
|
||||||
config_appendtomark '/etc/pacman.conf' "$QUBES_MARKER" 'NoUpgrade = etc/pam.d/su-l'
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Archlinux specific: ensure tty1 is enabled
|
# Archlinux specific: ensure tty1 is enabled
|
||||||
rm -f /etc/systemd/system/getty.target.wants/getty@tty*.service
|
rm -f /etc/systemd/system/getty.target.wants/getty@tty*.service
|
||||||
systemctl enable getty\@tty1.service
|
systemctl enable getty\@tty1.service
|
||||||
|
|
||||||
# Add Qubes setup script markers at the right place (this won't work at the end of pacman.conf)"
|
|
||||||
config_appendtomark "/etc/pacman.conf" "$QUBES_MARKER" "### QUBES END ###"
|
|
||||||
config_appendtomark "/etc/pacman.conf" "$QUBES_MARKER" "### QUBES BEGIN ###"
|
|
||||||
|
|
||||||
systemctl daemon-reload
|
systemctl daemon-reload
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -295,8 +334,6 @@ post_install() {
|
|||||||
|
|
||||||
update_finalize
|
update_finalize
|
||||||
|
|
||||||
glib-compile-schemas /usr/share/glib-2.0/schemas &> /dev/null || :
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
## arg 1: the new package version
|
## arg 1: the new package version
|
||||||
@ -312,8 +349,6 @@ post_upgrade() {
|
|||||||
|
|
||||||
update_finalize
|
update_finalize
|
||||||
|
|
||||||
/usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas &> /dev/null || :
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
######################
|
######################
|
||||||
@ -337,8 +372,6 @@ pre_remove() {
|
|||||||
## arg 1: the old package version
|
## arg 1: the old package version
|
||||||
post_remove() {
|
post_remove() {
|
||||||
|
|
||||||
/usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas &> /dev/null || :
|
|
||||||
|
|
||||||
if [ -L /lib/firmware/updates ] ; then
|
if [ -L /lib/firmware/updates ] ; then
|
||||||
rm /lib/firmware/updates
|
rm /lib/firmware/updates
|
||||||
fi
|
fi
|
||||||
|
11
archlinux/PKGBUILD.qubes-update-desktop-icons.hook
Normal file
11
archlinux/PKGBUILD.qubes-update-desktop-icons.hook
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
[Trigger]
|
||||||
|
Type = File
|
||||||
|
Operation = Install
|
||||||
|
Operation = Upgrade
|
||||||
|
Operation = Remove
|
||||||
|
Target = usr/share/applications/*.desktop
|
||||||
|
|
||||||
|
[Action]
|
||||||
|
Description = Updating the Qubes desktop file App Icons...
|
||||||
|
When = PostTransaction
|
||||||
|
Exec = /usr/lib/qubes/qubes-trigger-sync-appmenus.sh
|
Loading…
Reference in New Issue
Block a user