Librem 11 release
Initial packages for Librem 11
Merge request reports
Activity
1 1 # Accelerometer rotation matrix 2 2 default/61-librem-11-accelerometer.hwdb /lib/udev/hwdb.d 3 4 # Keyboard cover libinput quirks 3 5 default/85-librem11-keyboard.quirks /usr/share/libinput 6 7 default/11_librem11.gschema.override usr/share/glib-2.0/schemas/ 8 default/adwaita-phone.jpg usr/share/librem11/default-theme/ You mean the 3840x2160 byzantium background? Personally I thought this one looked a lot better.
The dithering/noise in the blue-purple gradient looks really "patchy" to me like JPEG artifacts, not sure if this is really a compression artifact or intentional but it does not look great on this display IMO. I think it's the vibrant AMOLED display, they are not as prominent to me on my LG desktop LCD. (Admittedly JPEG artifacts are a bit of a pet peeve of mine, they just sort of stick out to me
).The phone background looks great IMO. I don't notice any JPEG artifacts, and even though it is upscaled a bit in the horizontal orientation it is not noticeable at all.
/cc @francois.techene regarding background
I'd avoid shipping the wallpaper in here. Either https://gitlab.gnome.org/guidog/phosh-wallpapers/ (if we consider it "upstreamable") or a the PureOS artwork package (as it then later on works with GNOME Shell too) would be a good fit.
- default/11_librem11.gschema.override 0 → 100644
1 [org.gnome.desktop.background] 2 picture-uri='file:///usr/share/librem5/default-theme/adwaita-phone.jpg' 3 4 [org.gnome.desktop.sound] 5 theme-name='librem5' - default/11_librem11.gschema.override 0 → 100644
11 hardware-acceleration-policy='always' 12 13 [org.gnome.desktop.privacy] 14 usb-protection=false 15 16 [org.gnome.desktop.session] 17 idle-delay=60 18 19 [org.gnome.settings-daemon.peripherals.touchscreen] 20 orientation-lock=true 21 22 [org.gnome.settings-daemon.plugins.power] 23 ambient-enabled=false 24 power-button-action='nothing' 25 sleep-inactive-ac-type='nothing' 26 sleep-inactive-battery-type='nothing' assigned to @jonathon.hall
- Resolved by Jonathon Hall
- Resolved by Jonathon Hall
- Resolved by Evangelos Ribeiro Tzaras
- non-gnome-all 0 → 100644
1 firefox-esr-mobile-config have you tried without this? I would assume this is not needed on L11 (and it could potentially be demoted to recommends as well (see e.g. Librem5/librem5-base!375 (merged) )
changed this line in version 5 of the diff
I looked over the package and tried Firefox with/without firefox-esr-mobile-config.
It has a visible impact on the default new tab page:
- Default search engine is DuckDuckGo instead of Google
- Telemetry is disabled, so you don't get the "Firefox automatically sends some data... [Choose What I Share]" banner
- The mostly-social-media shortcuts are removed, in particular the sponsored ones
IMO this is significant enough that I would prefer to keep it. It's much cleaner and a bit less creepy. I did move it to recommends though.
The adaptive changes for small displays don't matter, but AFAICT they don't harm anything either. The repo says it removes other search engines besides DDG and Wikipedia and also installs uBlock Origin by default, but those don't seem to actually work. (They would be awesome though.)
Also @guido.gunther, regarding this comment (Librem5/librem5-base!375 (comment 248225)) - AFAICT we do install non-gnome by default on L5 because
librem5-gnome
depends onlibrem5-non-gnome
.Default without
firefox-esr-mobile-config
:Default with
firefox-esr-mobile-config
:
3 4 set -e 5 6 PREREQS="" 7 case $1 in 8 prereqs) echo "${PREREQS}"; exit 0;; 9 esac 10 11 . /scripts/functions 12 13 msg() { [ -x /bin/plymouth ] && plymouth display-message --text="$@" || echo "$@"; } 14 15 [ -x /sbin/cryptsetup ] || return 0 16 17 DUMPFILE="/var/lib/reencrypt/dump" 18 DISABLEFILE="/etc/reencrypt-disabled" The image builder writes the
dump
file with a copy of the original LUKS header from the image, so this script can tell if it needs to reencrypt by comparing the LUKS header.(I copied this from https://source.puri.sm/Librem5/librem5-base/-/blob/pureos/latest/default/initramfs-tools/scripts/local-bottom/0reencrypt - could/should we move it to a common package somewhere? Or maybe the image builder could place this file since it is somewhat specific to the way it builds the image?)
Nothing touches
reencrypt-disabled
- I figured that was for testing or something. The script knows whether to start a reencrypt by comparing the LUKS header, so it doesn't have to write anything specific to indicate that a reencrypt has already been done.The Librem 5 image builder using vmdebootstrap dumps it here: https://source.puri.sm/Librem5/image-builder/-/blob/master/root.sh#L102
The new builder for L11 (and hopefully eventually L5 too) does it here: https://source.puri.sm/jonathon.hall/pureos-image-recipes/-/blob/librem11/scripts/img/mkimg.sh#L139 (This wasn't here when you reviewed though, was still working on it.)
4 set -e 5 6 PREREQS="" 7 case $1 in 8 prereqs) echo "${PREREQS}"; exit 0;; 9 esac 10 11 . /scripts/functions 12 13 msg() { [ -x /bin/plymouth ] && plymouth display-message --text="$@" || echo "$@"; } 14 15 [ -x /sbin/cryptsetup ] || return 0 16 17 DUMPFILE="/var/lib/reencrypt/dump" 18 DISABLEFILE="/etc/reencrypt-disabled" 19 PASSPHRASE="123456" Mostly. It's only supposed to start a reencrypt once, but it could also resume a reencryption if the reencryption was interrupted somehow (power failure / force shut down / etc.).
It's before resizing. I believe reencrypting after resize would take much longer since it would reencrypt all the "free" space - I suppose this would mean nothing is leaked about how much space is in use, but I think it would take way too long to block the first boot out of the box.
The only way to change the passphrase would be to do it manually from PureBoot, or an initramfs shell, etc.; fairly 'expert' methods. The reencryption blocks boot, so you can't boot until it's complete. If you did change the passphrase, the LUKS header would no longer match, so no reencryption would occur.
I did not test those scenarios since it's the same script we're shipping on L5.
- Resolved by Jonathon Hall
26 27 # check whether rootfs is on a LUKS volume 28 if (cryptsetup status ${ROOT} >/dev/null 2>&1); then 29 30 # find out the real device behind LUKS volume 31 DEV=$(cryptsetup status ${ROOT} | awk -F: '$1~/device/ {gsub(/^[ \t]+/, "", $2); print $2}') 32 33 # try to resume an interrupted reencryption 34 (echo $PASSPHRASE | cryptsetup reencrypt --resume-only $DEV 2>/dev/null) || : 35 36 # only reencrypt if luksDump is the same as the one stored at image creation 37 if (cryptsetup luksDump $DEV | cmp -s - "${rootmnt}${DUMPFILE}"); then 38 msg "Encrypting the filesystem, please wait..." 39 echo $PASSPHRASE | cryptsetup reencrypt $DEV 40 msg 41 fi - Resolved by Jonathon Hall
- debian/pureos-ci.yml 0 → 100644
1 include: 2 - 'https://source.puri.sm/Librem5/librem5-ci/raw/master/librem5-pipeline-definitions.yml' 3 - 'https://source.puri.sm/guido.gunther/librem5-ci/raw/master/pureos-packaging-ci.yml' nit: maybe @guido.gunther can open a MR against librem5-ci and then the URL could be adjusted?
- default/profile.d/librem11-wayland.sh 0 → 100644
1 # Help some windowing systems along until they use wayland by default 2 3 if [ -f "/usr/lib/$(uname -m)-linux-gnu/qt5/plugins/wayland-shell-integration/libxdg-shell.so" ]; then 4 export QT_QPA_PLATFORM 5 QT_QPA_PLATFORM=wayland 6 fi 7 8 export MOZ_ENABLE_WAYLAND 9 MOZ_ENABLE_WAYLAND=1 10 11 export GDK_GL 12 GDK_GL=gles - gnome-base-all 0 → 100644
1 fonts-noto-cjk 2 gnome-initial-setup 3 gnome-settings-daemon 4 gstreamer1.0-libav 5 gvfs-backends 6 librem11-base 7 network-manager-gnome 8 phoc 9 phosh-core With
phosh-core
in there we can drop a lot of dependencies in crimson. These are the deps ofphosh-core
:dconf-gsettings-backend, evolution-data-server, feedbackd (>= 0.2.0), fonts-cantarell, glib-networking, gnome-backgrounds, gnome-control-center (>= 1:44), gnome-keyring, gnome-online-accounts, gnome-settings-daemon (>= 44), gnome-session-bin, gnome-session-common, gsettings-desktop-schemas, gstreamer1.0-packagekit, gstreamer1.0-plugins-base, gstreamer1.0-plugins-good, gvfs-backends, gvfs-fuse [linux-any], libglib2.0-bin, libpam-gnome-keyring, network-manager, phosh (>= 0.27.0), phosh-mobile-tweaks, pipewire-pulse | pulseaudio, libspa-0.2-bluetooth | libspa-0.2-bluetooth,, sound-theme-freedesktop, squeekboard (>= 1.22.0) | phosh-osk-stub (>= 0.27.0),
We have also
phosh-{phone,tablet}
nowadays. Using that would make the dependency list even shorter.(if time is tight this can be cleaned up past release)
Thanks, cleaned all of this up. Spotted a few packages that were related to phone hardware as well.
Details in the commit (!1 (0570d57d)), but I added
pureos-standard
andphosh-full
. Also addedphosh-tablet
to ensure the dep fromphosh-full
onphosh-phone | phosh-tablet
doesn't pull in the phone packages.