summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO13
-rw-r--r--PKGBUILD51
-rw-r--r--system76-driver.install32
3 files changed, 59 insertions, 37 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 269fa3537f54..6b47b0736cb8 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,20 +1,23 @@
pkgbase = system76-driver
pkgdesc = System76 Driver provides drivers, restore, and regression support for System76 computers
pkgver = 17.10.16
- pkgrel = 1
+ pkgrel = 2
url = https://launchpad.net/system76-driver
install = system76-driver.install
arch = any
license = GPL
depends = python>=3.6
- depends = python-gobject
+ depends = python-cffi
depends = python-dbus
depends = python-evdev
+ depends = python-gobject
+ depends = python-pynacl
+ depends = python-xlib
depends = dmidecode
- optdepends = pm-utils: For powermanagement features
- optdepends = gtk3: To launch System76 Driver GUI
+ optdepends = pm-utils: For power management features
+ optdepends = gtk3: To launch System76 driver and firmware GUI
optdepends = grub: To apply kernel boot time parameters
- optdepends = polkit: runnning System76 Driver GUI from application menu
+ optdepends = polkit: Run System76 Driver GUI from application menu
optdepends = pulseaudio: To apply microphone fix
optdepends = xorg-xbacklight: To use the backlight service
source = https://launchpad.net/~system76-dev/+archive/ubuntu/stable/+files/system76-driver_17.10.16.tar.xz
diff --git a/PKGBUILD b/PKGBUILD
index 9d0502b5b327..542c2b61278a 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,23 +3,37 @@
pkgname=system76-driver
pkgver=17.10.16
-pkgrel=1
+pkgrel=2
pkgdesc="System76 Driver provides drivers, restore, and regression support for System76 computers"
arch=('any')
url="https://launchpad.net/system76-driver"
license=('GPL')
install="${pkgname}.install"
-depends=('python>=3.6' 'python-gobject' 'python-dbus' 'python-evdev' 'dmidecode')
-makepdepends=('python-pyflakes' 'patch')
+depends=(
+ 'python>=3.6'
+ 'python-cffi'
+ 'python-dbus'
+ 'python-evdev'
+ 'python-gobject'
+ 'python-pynacl'
+ 'python-xlib'
+ 'dmidecode')
+makepdepends=(
+ 'python-pyflakes'
+ 'patch')
optdepends=(
- 'pm-utils: For powermanagement features'
- 'gtk3: To launch System76 Driver GUI'
+ 'pm-utils: For power management features'
+ 'gtk3: To launch System76 driver and firmware GUI'
'grub: To apply kernel boot time parameters'
- 'polkit: runnning System76 Driver GUI from application menu'
+ 'polkit: Run System76 Driver GUI from application menu'
'pulseaudio: To apply microphone fix'
'xorg-xbacklight: To use the backlight service')
-source=("https://launchpad.net/~system76-dev/+archive/ubuntu/stable/+files/${pkgname}_${pkgver}.tar.xz"
- 'galu1.patch' 'gtk.patch' 'cli.patch' 'hidpi.patch')
+source=(
+ "https://launchpad.net/~system76-dev/+archive/ubuntu/stable/+files/${pkgname}_${pkgver}.tar.xz"
+ 'galu1.patch'
+ 'gtk.patch'
+ 'cli.patch'
+ 'hidpi.patch')
sha1sums=('c893e0c3123e757a37f2e10fd335fb473b1e2549'
'ea8d53a80a26eb05b367f27996c8ce715aafba1e'
'bf0c37a6226858c768e8ce2c9c3c3801aef14c0e'
@@ -37,23 +51,36 @@ package() {
# Build and install base package
python setup.py install --prefix=/usr --root=${pkgdir} --optimize=1
- # Install daemons and systemd unit files
- # Note: system76-driver* service files shortened to system76*
+ # Install daemons and executables
install -m755 -D system76-daemon ${pkgdir}/usr/lib/${pkgname}/system76-daemon
install -m755 -D system76-backlight-daemon ${pkgdir}/usr/lib/${pkgname}/system76-backlight-daemon
install -m755 -D system76-hidpi-daemon ${pkgdir}/usr/lib/${pkgname}/system76-hidpi-daemon
+ install -m755 -D system76-hidpi-notification ${pkgdir}/usr/lib/${pkgname}/system76-hidpi-notification
+ install -m755 -D system76-firmware-dialog ${pkgdir}/usr/lib/${pkgname}/system76-firmware-dialog
+ install -m755 -D system76-driver-pkexec ${pkgdir}/usr/bin/system76-driver-pkexec
+ install -m755 -D system76-firmware-pkexec ${pkgdir}/usr/bin/system76-firmware-pkexec
+ install -m755 -D system76-firmware ${pkgdir}/usr/bin/system76-firmware
# Install systemd unit files
# Note: system76-driver* service files shortened to system76*
install -m644 -D debian/system76-driver.service ${pkgdir}/usr/lib/systemd/system/system76.service
+ install -m644 -D debian/system76-firmware.service ${pkgdir}/usr/lib/systemd/system/system76-firmware.service
install -m644 -D debian/system76-driver-backlight.service ${pkgdir}/usr/lib/systemd/user/system76-backlight.service
install -m644 -D debian/system76-driver-hidpi.service ${pkgdir}/usr/lib/systemd/user/system76-hidpi.service
- install -m644 -D system76-driver-backlight.desktop ${pkgdir}/usr/share/applications/system76-backlight.desktop
# Install scripts and configuration
- install -m755 -D system76-driver-pkexec ${pkgdir}/usr/bin/system76-driver-pkexec
install -m755 -D system76-nm-restart ${pkgdir}/usr/lib/${pkgname}/system76-nm-restart
install -m644 -D com.system76.pkexec.system76-driver.policy ${pkgdir}/usr/share/polkit-1/actions/com.system76.pkexec.system76-driver.policy
+ install -m644 -D com.system76.pkexec.system76-firmware.policy ${pkgdir}/usr/share/polkit-1/actions/com.system76.pkexec.system76-firmware.policy
+
+ # Install desktop shortcuts
+ install -m644 -D system76-driver-backlight.desktop ${pkgdir}/usr/share/applications/system76-backlight.desktop
+ install -m644 -D system76-driver-hidpi.desktop ${pkgdir}/usr/share/applications/system76-hidpi.desktop
+ install -m644 -D system76-firmware.desktop ${pkgdir}/usr/share/applications/system76-firmware.desktop
+
+ # Install certificates and keys
+ install -m644 -D pinned/ssl/certs/firmware.system76.com.cert ${pkgdir}/usr/share/system76-driver/ssl/certs/firmware.system76.com.cert
+ install -m644 -D pinned/keys/verify ${pkgdir}/usr/share/system76-driver/keys/verify
# Create /var/lib/system76-driver directory for brightness settings saving
install -m755 -d ${pkgdir}/var/lib/${pkgname}
diff --git a/system76-driver.install b/system76-driver.install
index c5bec98d4561..a32045365b9b 100644
--- a/system76-driver.install
+++ b/system76-driver.install
@@ -1,20 +1,12 @@
post_install() {
cat << EOF
- To enable the System76 driver service at boot, run the following command as root:
+ The System76 Driver package provides the following system services:
- systemctl enable system76.service
+ system76.service System76 airplane-mode hotkey and LED support
+ system76-firmware.service System76 Firmware Updater
- To manually start the service (without reboot), run the following command as root:
-
- systemctl start system76.service
-
- Before removing the System76 service, run the following commands as root:
-
- systemctl stop system76.service
- systemctl disable system76.service
-
- The package also provides two additional user services:
+ And the following user services:
system76-backlight.service Backlight Daemon for NVIDIA 9 Series on GNOME
system76-hidpi.service System76 HiDPI Daemon
@@ -23,18 +15,21 @@ cat << EOF
ln -s /usr/share/applications/system76-driver-backlight.desktop /etc/xdg/autostart/system76-driver-backlight.desktop
- To install settings and patches specific to your System76 laptop model, execute the System76 Driver
- application and click "Install Drivers". If the application won't start, you can manually start it
- using following command as root:
+ GUI applications are provided to install drivers, patches, and formware updates. If the applications
+ fail to start, try the following commands as root:
- GUI version:
+ GUI versions:
- system76-driver
+ system76-driver
+ system76-firmware
CLI version:
system76-driver-cli
+ (!) Under Wayland try using xhost prior to running the GUI applications:
+
+ xhost +local:
(!) If you do not use Grub bootloader, please check output for possible manual actions required for
your model related to bootloader modifications.
@@ -46,9 +41,6 @@ cat << EOF
"vendor": "System76, Inc",
"model": "galu1"
}
-
- to override laptop model for daemon and system76-driver-cli, because it fails to correctly identify
- laptop model with non-System76 BIOS/Firmware flashed.
(!) If you experience Wifi issues after resuming from suspend, consider using the included network
restart script: