summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorA. Wilcox <AWilcox@Wilcox-Tech.com>2023-10-10 20:49:08 -0500
committerA. Wilcox <AWilcox@Wilcox-Tech.com>2023-10-10 20:49:08 -0500
commit1d25fe737fdff96d13a04f0cd4c889a2480d6fd5 (patch)
treed36cc3c17861ddadfe8ce9305d1b5d72a28e4c7e
parentbc36c87210a77998f02c69a6b5af4c30828e5dc5 (diff)
downloadpackages-awilfox/user-next.tar.gz
packages-awilfox/user-next.tar.bz2
packages-awilfox/user-next.tar.xz
packages-awilfox/user-next.zip
user/livecd-support: Improvements [WIP]awilfox/user-next
* Change install scripts to local.d scripts. * Add a local.d script to make dhcpcd setuid, for adelie/horizon#361. * Make the Desktop Entry file a real file instead of a heredoc. Ref: #1081
-rw-r--r--user/livecd-support/APKBUILD35
-rw-r--r--user/livecd-support/allow-nullpw.start6
-rw-r--r--user/livecd-support/allow-nullpw.stop5
-rw-r--r--user/livecd-support/dhcpcd-suid.start5
-rw-r--r--user/livecd-support/horizon.desktop8
-rw-r--r--user/livecd-support/livecd-support.post-deinstall3
-rw-r--r--user/livecd-support/livecd-support.post-install3
7 files changed, 43 insertions, 22 deletions
diff --git a/user/livecd-support/APKBUILD b/user/livecd-support/APKBUILD
index 85fca324e..e2af387e6 100644
--- a/user/livecd-support/APKBUILD
+++ b/user/livecd-support/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=livecd-support
pkgver=1.0
-pkgrel=0
+pkgrel=1
pkgdesc="Support files for booting Adélie live media"
url="https://www.adelielinux.org/"
arch="noarch"
@@ -10,11 +10,14 @@ options="!check suid" # Metapackage
license="NCSA"
subpackages="$pkgname-kde $pkgname-lxqt $pkgname-mate $pkgname-horizon"
depends=""
-install="livecd-support.post-install livecd-support.post-deinstall"
source="kde.sddm.conf
lxqt.sddm.conf
mate.sddm.conf
+ horizon.desktop
horizon-ui
+ dhcpcd-suid.start
+ allow-nullpw.start
+ allow-nullpw.stop
"
package() {
@@ -23,21 +26,17 @@ package() {
horizon() {
pkgdesc="Add the ability to install Adélie from live media"
- depends="horizon-qt5 horizon netsurf partitionmanager xterm"
+ depends="dhcpcd horizon-qt5 horizon netsurf partitionmanager xterm"
- install -D -m4755 "$srcdir"/horizon-ui "$subpkgdir"/usr/sbin/horizon-ui
+ install -D -m755 "$srcdir"/horizon-ui "$subpkgdir"/usr/sbin/horizon-ui
- mkdir -p "$subpkgdir"/usr/share/applications
- cat >"$subpkgdir"/usr/share/applications/horizon.desktop <<DESKTOP
-[Desktop Entry]
-Type=Application
-Version=1.1
-Name=System Installation
-Comment=Install Adélie Linux to your computer
-Icon=system-software-install
-Exec=/usr/sbin/horizon-ui
-Categories=System;
-DESKTOP
+ for script in dhcpcd-suid.start allow-nullpw.start allow-nullpw.stop; do
+ install -D -m755 "$srcdir"/$script \
+ "$subpkgdir"/etc/local.d/$script
+ done
+
+ install -D -m644 "$srcdir"/horizon.desktop \
+ "$subpkgdir"/usr/share/applications/horizon.desktop
}
@@ -62,4 +61,8 @@ mate() {
sha512sums="eddcc68917b4dc376bb9b7e7ed5e2c06379957c787c7152e654f31adb402f5811463bff69ce2a41a2cb87b0fa83a4aa3718b63d830eb9ee46b7d0d2058663d34 kde.sddm.conf
9a9a61035c0a8c5ee84d235f319ca158216056221d03a0f5a3846982cb6110c569d7b4eadd2e24de66a75a428c18850e0393e20412e0edcfc8ad41c9d4783604 lxqt.sddm.conf
603d2a5b1fdad0cb0abfefa8a4019c690ee4f5f9ac45057eeeac3bac3207e7871bdb32a564791fb99d965959b39a7de979d575db2694c2d1d88a4a16b68adb25 mate.sddm.conf
-b6d39b2feb0aa400ac7013d6b8c9080ab00ffc1c8b40dbf9489df999fe08b86aebd878c84d968a53ad29bc2a2c30209d8c6ff5daa4171aab03d5b921f966e08d horizon-ui"
+741050465f75062c99fc4206d52d165682fe1757070f8ca8accfef3a6a9ca860d8dc5da0f14ff3f415db4a76a22bc0764a313779a3ce15bde746bdb7960568c0 horizon.desktop
+b6d39b2feb0aa400ac7013d6b8c9080ab00ffc1c8b40dbf9489df999fe08b86aebd878c84d968a53ad29bc2a2c30209d8c6ff5daa4171aab03d5b921f966e08d horizon-ui
+8d332a7d6aa0444b27f72cb66ca815395b69f647f2b46d9339f07833d2b020c27748508580d3f49c72b408781112aaaba32cf4dc8846ad781c23a457a7a36c6e dhcpcd-suid.start
+96c4763e971bbcd30c28d09ff9d8e80a1c1729c94f5b2f2187ba38cc5f455af8d6470d605c2d6c0a621614fc2616e10afa44faed0b6cd564ca769b63aaa1cf82 allow-nullpw.start
+b3b5de1ccbbc35d5c4a83daac9787837baa0186e413be58da2739d1e78cb7999e9b3c232448ea8e895a571025d91a81801882671b741be5dc678cba2100c8500 allow-nullpw.stop"
diff --git a/user/livecd-support/allow-nullpw.start b/user/livecd-support/allow-nullpw.start
new file mode 100644
index 000000000..f10af795e
--- /dev/null
+++ b/user/livecd-support/allow-nullpw.start
@@ -0,0 +1,6 @@
+#!/bin/sh
+# Welcome to Adélie Linux.
+# This script changes local PAM configuration to allow null passwords.
+# This way, the `live` user does not need a password.
+
+sed -i 's/pam_unix.so$/pam_unix.so nullok_secure/' /etc/pam.d/base-auth
diff --git a/user/livecd-support/allow-nullpw.stop b/user/livecd-support/allow-nullpw.stop
new file mode 100644
index 000000000..fa6f05320
--- /dev/null
+++ b/user/livecd-support/allow-nullpw.stop
@@ -0,0 +1,5 @@
+#!/bin/sh
+# Welcome to Adélie Linux.
+# This script undoes the null-password change when the system goes down.
+
+sed -i 's/pam_unix.so nullok_secure$/pam_unix.so/' /etc/pam.d/base-auth
diff --git a/user/livecd-support/dhcpcd-suid.start b/user/livecd-support/dhcpcd-suid.start
new file mode 100644
index 000000000..6fb3cee11
--- /dev/null
+++ b/user/livecd-support/dhcpcd-suid.start
@@ -0,0 +1,5 @@
+#!/bin/sh
+# Welcome to Adélie Linux.
+# This script ensures dhcpcd can be executed by the live user.
+
+chmod 4755 /sbin/dhcpcd
diff --git a/user/livecd-support/horizon.desktop b/user/livecd-support/horizon.desktop
new file mode 100644
index 000000000..fd1c3d103
--- /dev/null
+++ b/user/livecd-support/horizon.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Type=Application
+Version=1.1
+Name=System Installation
+Comment=Install Adélie Linux to your computer
+Icon=system-software-install
+Exec=/usr/sbin/horizon-ui
+Categories=System;
diff --git a/user/livecd-support/livecd-support.post-deinstall b/user/livecd-support/livecd-support.post-deinstall
deleted file mode 100644
index cfd0c59ac..000000000
--- a/user/livecd-support/livecd-support.post-deinstall
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-
-sed -i 's/pam_unix.so nullok_secure$/pam_unix.so/' /etc/pam.d/base-auth
diff --git a/user/livecd-support/livecd-support.post-install b/user/livecd-support/livecd-support.post-install
deleted file mode 100644
index 9556f5a52..000000000
--- a/user/livecd-support/livecd-support.post-install
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-
-sed -i 's/pam_unix.so$/pam_unix.so nullok_secure/' /etc/pam.d/base-auth