at master 842 B view raw
1# GVfs 2 3{ 4 config, 5 lib, 6 pkgs, 7 ... 8}: 9 10let 11 12 cfg = config.services.gvfs; 13 14in 15 16{ 17 18 meta = { 19 maintainers = lib.teams.gnome.members; 20 }; 21 22 ###### interface 23 24 options = { 25 26 services.gvfs = { 27 28 enable = lib.mkEnableOption "GVfs, a userspace virtual filesystem"; 29 30 # gvfs can be built with multiple configurations 31 package = lib.mkPackageOption pkgs [ "gnome" "gvfs" ] { }; 32 33 }; 34 35 }; 36 37 ###### implementation 38 39 config = lib.mkIf cfg.enable { 40 41 environment.systemPackages = [ cfg.package ]; 42 43 services.dbus.packages = [ cfg.package ]; 44 45 systemd.packages = [ cfg.package ]; 46 47 services.udev.packages = [ pkgs.libmtp.out ]; 48 49 services.udisks2.enable = true; 50 51 # Needed for unwrapped applications 52 environment.sessionVariables.GIO_EXTRA_MODULES = [ "${cfg.package}/lib/gio/modules" ]; 53 54 }; 55 56}