at 23.11-pre 1.2 kB view raw
1# GVfs 2 3{ config, lib, pkgs, ... }: 4 5with lib; 6 7let 8 9 cfg = config.services.gvfs; 10 11in 12 13{ 14 15 meta = { 16 maintainers = teams.gnome.members; 17 }; 18 19 # Added 2019-08-19 20 imports = [ 21 (mkRenamedOptionModule 22 [ "services" "gnome3" "gvfs" "enable" ] 23 [ "services" "gvfs" "enable" ]) 24 ]; 25 26 ###### interface 27 28 options = { 29 30 services.gvfs = { 31 32 enable = mkEnableOption (lib.mdDoc "GVfs, a userspace virtual filesystem"); 33 34 # gvfs can be built with multiple configurations 35 package = mkOption { 36 type = types.package; 37 default = pkgs.gnome.gvfs; 38 defaultText = literalExpression "pkgs.gnome.gvfs"; 39 description = lib.mdDoc "Which GVfs package to use."; 40 }; 41 42 }; 43 44 }; 45 46 47 ###### implementation 48 49 config = mkIf cfg.enable { 50 51 environment.systemPackages = [ cfg.package ]; 52 53 services.dbus.packages = [ cfg.package ]; 54 55 systemd.packages = [ cfg.package ]; 56 57 services.udev.packages = [ pkgs.libmtp.out ]; 58 59 services.udisks2.enable = true; 60 61 # Needed for unwrapped applications 62 environment.sessionVariables.GIO_EXTRA_MODULES = [ "${cfg.package}/lib/gio/modules" ]; 63 64 }; 65 66}