Merge pull request #142455 from bobby285271/fileroller

pantheon.file-roller: init

authored by

davidak and committed by
GitHub
6adc2ce3 5e9c3d58

+78 -10
+13 -4
nixos/modules/programs/file-roller.nix
··· 4 5 with lib; 6 7 - { 8 9 # Added 2019-08-09 10 imports = [ ··· 21 22 enable = mkEnableOption "File Roller, an archive manager for GNOME"; 23 24 }; 25 26 }; ··· 28 29 ###### implementation 30 31 - config = mkIf config.programs.file-roller.enable { 32 33 - environment.systemPackages = [ pkgs.gnome.file-roller ]; 34 35 - services.dbus.packages = [ pkgs.gnome.file-roller ]; 36 37 }; 38
··· 4 5 with lib; 6 7 + let cfg = config.programs.file-roller; 8 + 9 + in { 10 11 # Added 2019-08-09 12 imports = [ ··· 23 24 enable = mkEnableOption "File Roller, an archive manager for GNOME"; 25 26 + package = mkOption { 27 + type = types.package; 28 + default = pkgs.gnome.file-roller; 29 + defaultText = literalExpression "pkgs.gnome.file-roller"; 30 + description = "File Roller derivation to use."; 31 + }; 32 + 33 }; 34 35 }; ··· 37 38 ###### implementation 39 40 + config = mkIf cfg.enable { 41 42 + environment.systemPackages = [ cfg.package ]; 43 44 + services.dbus.packages = [ cfg.package ]; 45 46 }; 47
+1
nixos/modules/services/x11/desktop-managers/pantheon.nix
··· 221 programs.evince.enable = mkDefault true; 222 programs.evince.package = pkgs.pantheon.evince; 223 programs.file-roller.enable = mkDefault true; 224 225 # Settings from elementary-default-settings 226 environment.sessionVariables.GTK_CSD = "1";
··· 221 programs.evince.enable = mkDefault true; 222 programs.evince.package = pkgs.pantheon.evince; 223 programs.file-roller.enable = mkDefault true; 224 + programs.file-roller.package = pkgs.pantheon.file-roller; 225 226 # Settings from elementary-default-settings 227 environment.sessionVariables.GTK_CSD = "1";
+62 -6
pkgs/desktops/gnome/apps/file-roller/default.nix
··· 1 - { lib, stdenv, fetchurl, glib, gtk3, meson, ninja, pkg-config, gnome, gettext, itstool, libxml2, libarchive 2 - , file, json-glib, python3, wrapGAppsHook, desktop-file-utils, libnotify, nautilus, glibcLocales 3 - , unzip, cpio }: 4 5 stdenv.mkDerivation rec { 6 pname = "file-roller"; ··· 11 sha256 = "039w1dcpa5ypmv6sm634alk9vbcdkyvy595vkh5gn032jsiqca2a"; 12 }; 13 14 LANG = "en_US.UTF-8"; # postinstall.py 15 16 - nativeBuildInputs = [ meson ninja gettext itstool pkg-config libxml2 python3 wrapGAppsHook glibcLocales desktop-file-utils ]; 17 18 - buildInputs = [ glib gtk3 json-glib libarchive file gnome.adwaita-icon-theme libnotify nautilus cpio ]; 19 20 PKG_CONFIG_LIBNAUTILUS_EXTENSION_EXTENSIONDIR = "${placeholder "out"}/lib/nautilus/extensions-3.0"; 21 ··· 44 description = "Archive manager for the GNOME desktop environment"; 45 license = licenses.gpl2Plus; 46 platforms = platforms.linux; 47 - maintainers = teams.gnome.members; 48 }; 49 }
··· 1 + { lib 2 + , stdenv 3 + , fetchurl 4 + , fetchpatch 5 + , desktop-file-utils 6 + , gettext 7 + , glibcLocales 8 + , itstool 9 + , libxml2 10 + , meson 11 + , ninja 12 + , pkg-config 13 + , python3 14 + , wrapGAppsHook 15 + , cpio 16 + , file 17 + , glib 18 + , gnome 19 + , gtk3 20 + , json-glib 21 + , libarchive 22 + , libnotify 23 + , nautilus 24 + , pantheon 25 + , unzip 26 + , withPantheon ? false 27 + }: 28 29 stdenv.mkDerivation rec { 30 pname = "file-roller"; ··· 35 sha256 = "039w1dcpa5ypmv6sm634alk9vbcdkyvy595vkh5gn032jsiqca2a"; 36 }; 37 38 + patches = lib.optionals withPantheon [ 39 + # Make this respect dark mode settings from Pantheon 40 + # https://github.com/elementary/fileroller/ 41 + (fetchpatch { 42 + url = "https://raw.githubusercontent.com/elementary/fileroller/f183eac36c68c9c9441e72294d4e305cf5fe36ed/fr-application-prefers-color-scheme.patch"; 43 + sha256 = "sha256-d/sqf4Oen9UrzYqru7Ck15o/6g6WfxRDH/iAGFXgYAA="; 44 + }) 45 + ]; 46 + 47 LANG = "en_US.UTF-8"; # postinstall.py 48 49 + nativeBuildInputs = [ 50 + desktop-file-utils 51 + gettext 52 + glibcLocales 53 + itstool 54 + libxml2 55 + meson 56 + ninja 57 + pkg-config 58 + python3 59 + wrapGAppsHook 60 + ]; 61 62 + buildInputs = [ 63 + cpio 64 + file 65 + glib 66 + gnome.adwaita-icon-theme 67 + gtk3 68 + json-glib 69 + libarchive 70 + libnotify 71 + nautilus 72 + ] ++ lib.optionals withPantheon [ 73 + pantheon.granite 74 + ]; 75 76 PKG_CONFIG_LIBNAUTILUS_EXTENSION_EXTENSIONDIR = "${placeholder "out"}/lib/nautilus/extensions-3.0"; 77 ··· 100 description = "Archive manager for the GNOME desktop environment"; 101 license = licenses.gpl2Plus; 102 platforms = platforms.linux; 103 + maintainers = teams.gnome.members ++ teams.pantheon.members; 104 }; 105 }
+2
pkgs/desktops/pantheon/default.nix
··· 73 74 evince = pkgs.evince.override { withPantheon = true; }; 75 76 sideload = callPackage ./apps/sideload { }; 77 78 #### DESKTOP
··· 73 74 evince = pkgs.evince.override { withPantheon = true; }; 75 76 + file-roller = pkgs.gnome.file-roller.override { withPantheon = true; }; 77 + 78 sideload = callPackage ./apps/sideload { }; 79 80 #### DESKTOP