+ # fwupdmgr get-updates
+ # says I have 3 "devices with no available firmware updates"
+ # if there were updates, install with: s fwupdmgr update
+
+ check_downgrade=false
+ if [[ ! -e /etc/apt/preferences.d/system76-apt-preferences ]]; then
+ check_downgrade=true
+ fi
+ # note this installs a kernel
+ pi system76-firmware system76-driver
+ pi-nostart fwupd
+ # some other service starts it. note: this still needs testing.
+ ser mask fwupd
+ if $check_downgrade && [[ -e /etc/apt/preferences.d/system76-apt-preferences ]]; then
+ # driver installs a preferences file to give s76 packages
+ # priority so we may need to downgrade here.
+ pup --allow-downgrades
+ fi
+ # system76-driver: on a modern kernel, it seems to mainly just do
+ # some power settings, I haven't looked entirely through it. Of
+ # its recommended packages, system76-power is the only one I
+ # haven't looked at, the others do nothing for laptops i
+ # have. they have models hardcoded in source, so you can just grep
+ # for it. pkx package; caf | less. I'm rather annoyed that
+ # com.system76.PowerDaemon.service is regularly taking up the
+ # most power. I wonder what it is actually doing, it really
+ # doesn't say, just has cryptic messages when I turn on
+ # debug logs, and has no documentation. Similar deal with
+ # system76-driver.service.
+ #