diff --git a/aports/device/fp6-login-screen-schema/APKBUILD b/aports/device/fp6-login-screen-schema/APKBUILD new file mode 100644 index 0000000..49dc1b4 --- /dev/null +++ b/aports/device/fp6-login-screen-schema/APKBUILD @@ -0,0 +1,31 @@ +# GNOME Settings shows the Users page's "Fingerprint Login" row only when +# GDM's org.gnome.login-screen schema exists and its +# enable-fingerprint-authentication key is true (51.0, +# panels/system/users/cc-user-page.c). The Phosh image logs in through +# greetd/phrog, so without GDM the row never appears and no finger can be +# enrolled from the GUI. This installs GDM's schema file unchanged, taken +# from Alpine's gdm-48.0-r8, and nothing else of GDM. It is the only key +# Settings reads from it, and nothing else on the image looks the schema up. +# replaces="gdm" keeps one copy if GDM is ever installed as well: two +# definitions of one schema make glib-compile-schemas fail for every schema. +# glib's trigger on /usr/share/glib-2.0/schemas compiles it on install. +maintainer="Jorijn van der Graaf " +pkgname=fp6-login-screen-schema +pkgver=48.0 +pkgrel=0 +pkgdesc="GDM's org.gnome.login-screen schema without GDM, for GNOME Settings' fingerprint row" +url="https://forgejo.catcrafts.net/Catcrafts/fp6-img" +arch="noarch" +license="GPL-2.0-or-later" +replaces="gdm" +options="!check" +source="org.gnome.login-screen.gschema.xml" + +package() { + install -Dm644 "$srcdir"/org.gnome.login-screen.gschema.xml \ + "$pkgdir"/usr/share/glib-2.0/schemas/org.gnome.login-screen.gschema.xml +} + +sha512sums=" +7ff27457fb409cf7f235c2e075455aa62045d801c592dcd43ca786478d59ba7205d5a69ea84e4fc88ce2e43607d75d8587cec96df0513435ddd114258c331694 org.gnome.login-screen.gschema.xml +" diff --git a/aports/device/fp6-login-screen-schema/org.gnome.login-screen.gschema.xml b/aports/device/fp6-login-screen-schema/org.gnome.login-screen.gschema.xml new file mode 100644 index 0000000..75035bf --- /dev/null +++ b/aports/device/fp6-login-screen-schema/org.gnome.login-screen.gschema.xml @@ -0,0 +1,135 @@ + + + + + + + + + + true + + Whether or not to allow fingerprint readers for login + + + The login screen can optionally allow users who have enrolled + their fingerprints to log in using those prints. + + + + true + + Whether or not to allow smartcard readers for login + + + The login screen can optionally allow users who have smartcards + to log in using those smartcards. + + + + false + + Whether or not to allow switchable authentication for login + + + The login screen can optionally allow a single PAM service to provide + multiple authentication mechanisms via a GDM PAM. + + + + true + + Whether or not to allow passwords for login + + + The login screen can be configured to disallow password authentication, + forcing the user to use smartcard or fingerprint authentication. + + + + '' + + Path to small image at top of user list + + + The login screen can optionally show a small image to provide site + administrators and distributions a way to display branding. + + + + '' + + Path to small image at top of user list + + + The fallback login screen can optionally show a small image to provide + site administrators and distributions a way to display branding. + + + + false + + Avoid showing user list + + + The login screen normally shows a list of available users to log in + as. This setting can be toggled to disable showing the user list. + + + + false + + Enable showing the banner message + + + Set to true to show the banner message text. + + + + "settings" + + Banner message source + + + The source of the text banner message on the login screen. + + + + '' + + Banner message text + + + Text banner message to show in the login window. + + + + '' + + Banner message path + + + Path to text file with banner message to show in the login window. + + + + false + + Disable showing the restart buttons + + + Set to true to disable showing the restart buttons in the login window. + + + + 3 + + Number of allowed authentication failures + + + The number of times a user is allowed to attempt authentication, before + giving up and going back to user selection. + + + + diff --git a/build.sh b/build.sh index 6d9322b..ea021bf 100755 --- a/build.sh +++ b/build.sh @@ -33,13 +33,14 @@ REGISTRY=https://forgejo.catcrafts.net/api/packages/Catcrafts/alpine/edge/fp6 # FP6IMG_UI: which postmarketOS UI the image boots into. plasma-mobile (the # default) gets imsd-dialerd from the imsd package itself; phosh gets the # opt-in imsd-ofono subpackage (imsd-ofonod + the GNOME Calls plugin -# override) on top. Everything else in the package set is UI-agnostic. The +# override) and fp6-login-screen-schema (GNOME Settings' fingerprint row) on +# top. Everything else in the package set is UI-agnostic. The # archive is named after it: fp6-img.tar.xz for plasma-mobile, # fp6-img-.tar.xz otherwise, so one release can carry both. FP6IMG_UI=${FP6IMG_UI:-plasma-mobile} case "$FP6IMG_UI" in plasma-mobile) UI_PACKAGES=; IMG_NAME=fp6-img ;; -phosh) UI_PACKAGES=,imsd-ofono; IMG_NAME=fp6-img-phosh ;; +phosh) UI_PACKAGES=,imsd-ofono,fp6-login-screen-schema; IMG_NAME=fp6-img-phosh ;; *) echo "FP6IMG_UI=$FP6IMG_UI: expected plasma-mobile or phosh" >&2; exit 1 ;; esac PMAPORTS_REPO=https://gitlab.postmarketos.org/postmarketOS/pmaports.git @@ -159,6 +160,7 @@ cp -r aports/device/linux-postmarketos-qcom-milos "$WORK/pmaports/device/testing cp -r aports/device/soc-fairphone-fp6-audio "$WORK/pmaports/device/" cp -r aports/device/fp6-vendor-blobs "$WORK/pmaports/device/" cp -r aports/device/callaudioshim "$WORK/pmaports/device/" +cp -r aports/device/fp6-login-screen-schema "$WORK/pmaports/device/" cp -r aports/device/fp6-device-tweaks "$WORK/pmaports/device/" cp -r aports/device/fp6-charging-mode "$WORK/pmaports/device/" cp -r aports/device/catcrafts-fp6-repo "$WORK/pmaports/device/"