about summary refs log tree commit diff
path: root/pkgs/os-specific/linux
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/os-specific/linux')
-rw-r--r--pkgs/os-specific/linux/firmware/fwupd/default.nix52
-rw-r--r--pkgs/os-specific/linux/firmware/fwupd/fix-missing-deps.patch114
-rw-r--r--pkgs/os-specific/linux/firmware/fwupd/localstatedir-check-perms.patch12
-rw-r--r--pkgs/os-specific/linux/firmware/fwupdate/default.nix1
-rw-r--r--pkgs/os-specific/linux/jfbview/default.nix8
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.9.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/patches.nix8
7 files changed, 157 insertions, 42 deletions
diff --git a/pkgs/os-specific/linux/firmware/fwupd/default.nix b/pkgs/os-specific/linux/firmware/fwupd/default.nix
index 5e109f9f46e2..455defa5823e 100644
--- a/pkgs/os-specific/linux/firmware/fwupd/default.nix
+++ b/pkgs/os-specific/linux/firmware/fwupd/default.nix
@@ -1,35 +1,53 @@
 { stdenv, fetchurl, gtk_doc, pkgconfig, gobjectIntrospection, intltool
-, libgudev, polkit, gcab, appstream-glib, gusb, sqlite, libarchive
+, libgudev, polkit, appstream-glib, gusb, sqlite, libarchive
 , libsoup, docbook2x, gpgme, libxslt, libelf, libsmbios, efivar
-, fwupdate, libgpgerror, libyaml, valgrind
+, fwupdate, libgpgerror, libyaml, valgrind, meson, libuuid, pygobject3
+, pillow, ninja, gcab, makeWrapper, glib, gdk_pixbuf
 }:
-let version = "0.8.1"; in
+let version = "0.9.6";
+    rpath = stdenv.lib.makeLibraryPath
+      [ libuuid.out
+        appstream-glib
+        glib
+        libsoup
+        gdk_pixbuf
+        libarchive.lib
+        gcab
+        sqlite.out
+        gusb
+        polkit.out
+        gpgme
+        libgpgerror
+        libelf
+        efivar
+        libsmbios
+        fwupdate
+        libgudev
+        "$out"
+      ];
+in
   stdenv.mkDerivation
     { name = "fwupd-${version}";
       src = fetchurl
         { url = "https://people.freedesktop.org/~hughsient/releases/fwupd-${version}.tar.xz";
-          sha256 = "0sq0aay5d6b0vgr7j7y4i58flbxmcbpwyw6vfwrd29fim21j6ac8";
+          sha256 = "0h3y4ygckvkjdx7yxwbm273iv84yk37ivlcf4xvq95g64vs8gfhf";
         };
       buildInputs =
         [ gtk_doc pkgconfig gobjectIntrospection intltool libgudev
-          polkit gcab appstream-glib gusb sqlite libarchive libsoup
+          polkit appstream-glib gusb sqlite libarchive libsoup
           docbook2x libxslt libelf libsmbios fwupdate libyaml valgrind
+          meson gpgme libuuid pygobject3 pillow ninja gcab makeWrapper
         ];
-      patches = [ ./localstatedir-check-perms.patch ];
-      postPatch = ''
-        sed -i -e \
-          's|/usr/bin/gpgme-config|${gpgme.dev}/bin/gpgme-config|' -e \
-          's|/usr/bin/gpg-error-config|${libgpgerror.dev}/bin/gpg-error-config|' \
-          ./configure
-      '';
+      patches = [ ./fix-missing-deps.patch ];
       preConfigure = ''
         export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${efivar}/include/efivar"
       '';
-      configureFlags =
-        [ "--with-systemdunitdir=$(out)/lib/systemd/system"
-          "--with-udevrulesdir=$(out)/lib/udev/rules.d"
-          "--localstatedir=/var"
-        ];
+      mesonFlags = [ "-Denable-colorhug=false" "-Denable-man=false" "-Denable-tests=false" "--localstatedir=/var" "-Denable-doc=false" "-Dwith-bootdir=/boot" ];
+      postFixup = ''
+        for prog in $out/bin/* $out/libexec/fwupd/*; do
+          wrapProgram "$prog" --prefix LD_LIBRARY_PATH : ${rpath}
+        done
+      '';
       enableParallelBuilding = true;
       meta =
         { license = [ stdenv.lib.licenses.gpl2 ];
diff --git a/pkgs/os-specific/linux/firmware/fwupd/fix-missing-deps.patch b/pkgs/os-specific/linux/firmware/fwupd/fix-missing-deps.patch
new file mode 100644
index 000000000000..be199227f3f8
--- /dev/null
+++ b/pkgs/os-specific/linux/firmware/fwupd/fix-missing-deps.patch
@@ -0,0 +1,114 @@
+diff -Naur fwupd-0.9.6-orig/data/meson.build fwupd-0.9.6/data/meson.build
+--- fwupd-0.9.6-orig/data/meson.build	2017-08-03 05:45:02.000000000 -0400
++++ fwupd-0.9.6/data/meson.build	2017-09-02 19:58:37.324596487 -0400
+@@ -20,7 +20,7 @@
+ )
+ 
+ install_data(['90-fwupd-devices.rules'],
+-  install_dir : join_paths(udev.get_pkgconfig_variable('udevdir'), 'rules.d')
++  install_dir : join_paths(get_option('prefix'), 'lib', 'udev', 'rules.d')
+ )
+ 
+ con2 = configuration_data()
+@@ -52,7 +52,7 @@
+     output : 'fwupd-offline-update.service',
+     configuration : con2,
+     install: true,
+-    install_dir: systemd.get_pkgconfig_variable('systemdsystemunitdir'),
++    install_dir: join_paths(get_option('prefix'), 'lib', 'systemd', 'system'),
+   )
+ endif
+ 
+@@ -63,6 +63,6 @@
+     output : 'fwupd.service',
+     configuration : con2,
+     install: true,
+-    install_dir: systemd.get_pkgconfig_variable('systemdsystemunitdir'),
++    install_dir: join_paths(get_option('prefix'), 'lib', 'systemd', 'system'),
+   )
+ endif
+diff -Naur fwupd-0.9.6-orig/libdfu/meson.build fwupd-0.9.6/libdfu/meson.build
+--- fwupd-0.9.6-orig/libdfu/meson.build	2017-08-03 05:45:02.000000000 -0400
++++ fwupd-0.9.6/libdfu/meson.build	2017-09-02 19:58:37.325596508 -0400
+@@ -23,6 +23,10 @@
+   giounix,
+   libm,
+   gusb,
++  uuid,
++  libarchive,
++  soup,
++  libgcab
+ ]
+ 
+ if get_option('enable-libelf')
+diff -Naur fwupd-0.9.6-orig/meson.build fwupd-0.9.6/meson.build
+--- fwupd-0.9.6-orig/meson.build	2017-08-03 05:45:02.000000000 -0400
++++ fwupd-0.9.6/meson.build	2017-09-02 19:59:07.406216716 -0400
+@@ -124,6 +124,7 @@
+ if polkit.version().version_compare('>= 0.114')
+   conf.set('HAVE_POLKIT_0_114', '1')
+ endif
++libgcab = dependency('libgcab-1.0')
+ gudev = dependency('gudev-1.0')
+ appstream_glib = dependency('appstream-glib', version : '>= 0.6.9')
+ gusb = dependency('gusb', version : '>= 0.2.9')
+@@ -200,7 +201,7 @@
+                         'fwupd-plugins-2')
+ conf.set_quoted('PLUGINDIR', plugin_dir)
+ 
+-conf.set_quoted('SYSCONFDIR', get_option('sysconfdir'))
++conf.set_quoted('SYSCONFDIR', '/etc')
+ conf.set_quoted('BINDIR',
+                 join_paths(get_option('prefix'),
+                            get_option('bindir')))
+@@ -227,6 +228,9 @@
+ plugin_deps += gmodule
+ plugin_deps += gusb
+ plugin_deps += soup
++plugin_deps += libarchive
++plugin_deps += uuid
++plugin_deps += libgcab
+ 
+ subdir('data')
+ subdir('docs')
+@@ -255,6 +259,3 @@
+   endif
+ endif
+ 
+-if get_option('enable-systemd')
+-  meson.add_install_script('meson_post_install.sh', systemd.get_pkgconfig_variable('systemdsystemunitdir'), localstatedir)
+-endif
+diff -Naur fwupd-0.9.6-orig/po/make-images.sh fwupd-0.9.6/po/make-images.sh
+--- fwupd-0.9.6-orig/po/make-images.sh	2017-08-03 05:45:02.000000000 -0400
++++ fwupd-0.9.6/po/make-images.sh	2017-09-02 19:58:37.328596570 -0400
+@@ -7,6 +7,7 @@
+ #
+ install -m 0755 -d ${MESON_INSTALL_DESTDIR_PREFIX}/share/locale/
+ ${MESON_SOURCE_ROOT}/po/make-images "Installing firmware update…" ${MESON_INSTALL_DESTDIR_PREFIX}/share/locale/ ${MESON_SOURCE_ROOT}/po/LINGUAS
++shopt -s nullglob
+ for x in ${MESON_INSTALL_DESTDIR_PREFIX}/share/locale/*/LC_IMAGES/*.bmp ; do
+     gzip -f ${x}
+ done
+diff -Naur fwupd-0.9.6-orig/src/meson.build fwupd-0.9.6/src/meson.build
+--- fwupd-0.9.6-orig/src/meson.build	2017-08-03 05:45:02.000000000 -0400
++++ fwupd-0.9.6/src/meson.build	2017-09-02 19:58:37.329596590 -0400
+@@ -24,6 +24,9 @@
+     polkit,
+     soup,
+     sqlite,
++    uuid,
++    libarchive,
++    libgcab
+   ],
+   link_with : fwupd,
+   c_args : [
+@@ -73,6 +76,9 @@
+     gpgme,
+     gpgerror,
+     valgrind,
++    uuid,
++    libarchive,
++    libgcab
+   ],
+   link_with : fwupd,
+   c_args : [
diff --git a/pkgs/os-specific/linux/firmware/fwupd/localstatedir-check-perms.patch b/pkgs/os-specific/linux/firmware/fwupd/localstatedir-check-perms.patch
deleted file mode 100644
index 0c1429d4f2e1..000000000000
--- a/pkgs/os-specific/linux/firmware/fwupd/localstatedir-check-perms.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur fwupd-0.8.1-orig/src/Makefile.in fwupd-0.8.1/src/Makefile.in
---- fwupd-0.8.1-orig/src/Makefile.in	2017-02-24 02:59:23.000000000 -0500
-+++ fwupd-0.8.1/src/Makefile.in	2017-02-27 15:06:56.218901891 -0500
-@@ -1639,7 +1639,7 @@
- 		$(srcdir)/fwupd.gresource.xml
- 
- install-data-hook:
--	if test -w $(DESTDIR)$(prefix)/; then \
-+	if test -w $$(dirname $(DESTDIR)$(localstatedir)/); then \
- 		mkdir -p $(DESTDIR)$(localstatedir)/lib/fwupd; \
- 		chmod 0755 $(DESTDIR)$(localstatedir)/lib/fwupd; \
- 		mkdir -p $(DESTDIR)$(localstatedir)/cache/app-info/xmls; \
diff --git a/pkgs/os-specific/linux/firmware/fwupdate/default.nix b/pkgs/os-specific/linux/firmware/fwupdate/default.nix
index b1cbed109087..ee94ad4226e1 100644
--- a/pkgs/os-specific/linux/firmware/fwupdate/default.nix
+++ b/pkgs/os-specific/linux/firmware/fwupdate/default.nix
@@ -23,6 +23,7 @@ let version = "8"; in
           linux/libfwup.c
         sed -i 's|/usr/share|$(prefix)share|' linux/Makefile
         sed -i "s|/usr/include|$out/include|" linux/fwup.pc.in
+        find . -type f -print0 | xargs -0 sed -i -e 's|/boot/efi|/boot|g' -e 's|/boot/efi/EFI|/boot/EFI|g'
       '';
       configurePhase = ''
         arch=$(cc -dumpmachine | cut -f1 -d- | sed 's,i[3456789]86,ia32,' )
diff --git a/pkgs/os-specific/linux/jfbview/default.nix b/pkgs/os-specific/linux/jfbview/default.nix
index 6a0706106625..310cdbd1eee8 100644
--- a/pkgs/os-specific/linux/jfbview/default.nix
+++ b/pkgs/os-specific/linux/jfbview/default.nix
@@ -15,15 +15,17 @@ in
 
 stdenv.mkDerivation rec {
   name = "${package}-${version}";
-  version = "0.5.3";
+  version = "0.5.4";
 
   src = fetchFromGitHub {
-    sha256 = "18iyvisslqp5ibhix00j4y7q8fmf2a79chflimc78xf52x4m2p5q";
-    rev = version;
     repo = "JFBView";
     owner = "jichu4n";
+    rev = version;
+    sha256 = "0p12b5n07yfkmfswjdb3a4c5c50jcphl030n3i71djcq4jjvrxlw";
   };
 
+  hardeningDisable = [ "format" ];
+
   buildInputs = [
     freetype harfbuzz jbig2dec libjpeg libX11 mujs mupdf ncurses openjpeg
     openssl
diff --git a/pkgs/os-specific/linux/kernel/linux-4.9.nix b/pkgs/os-specific/linux/kernel/linux-4.9.nix
index 87b225dfd3d1..faa61372fef1 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.9.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.9.nix
@@ -1,12 +1,12 @@
 { stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "4.9.46";
+  version = "4.9.47";
   extraMeta.branch = "4.9";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0arbm9l8pq7d6c1hr0c64p94qcxrxf4q4famvcm13273y3lr70r2";
+    sha256 = "1ja14l9gy7cpj94zwacr3gi4vqzfv2k78556fxga8q4lsrwrdgkm";
   };
 
   kernelPatches = args.kernelPatches;
diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix
index e5f430b4d824..0a364823640a 100644
--- a/pkgs/os-specific/linux/kernel/patches.nix
+++ b/pkgs/os-specific/linux/kernel/patches.nix
@@ -51,14 +51,6 @@ rec {
       patch = ./modinst-arg-list-too-long.patch;
     };
 
-  grsecurity_testing = throw ''
-    Upstream has ceased free support for grsecurity/PaX.
-
-    See https://grsecurity.net/passing_the_baton.php
-    and https://grsecurity.net/passing_the_baton_faq.php
-    for more information.
-  '';
-
   genksyms_fix_segfault =
     { name = "genksyms-fix-segfault";
       patch = ./genksyms-fix-segfault.patch;