summaryrefslogtreecommitdiff
path: root/os/srv/files.nix
diff options
context:
space:
mode:
Diffstat (limited to 'os/srv/files.nix')
-rw-r--r--os/srv/files.nix46
1 files changed, 46 insertions, 0 deletions
diff --git a/os/srv/files.nix b/os/srv/files.nix
new file mode 100644
index 0000000..9b5759e
--- /dev/null
+++ b/os/srv/files.nix
@@ -0,0 +1,46 @@
+{ config, lib, pkgs, ... }:
+let
+ cfg = config.sys.srv.files;
+in
+{
+ options.sys.srv.files = {
+ thunar.enable = lib.mkEnableOption "enables the thunar file manager";
+ utils.enable = lib.mkEnableOption "enables compression and trash utilities";
+ };
+ config = lib.mkMerge [
+ {
+ sys.srv.files.utils.enable = lib.mkDefault cfg.thunar.enable;
+ }
+
+ (lib.mkIf cfg.thunar.enable {
+ programs.thunar = {
+ enable = true;
+ plugins = with pkgs.xfce; [
+ thunar-volman
+ thunar-archive-plugin
+ thunar-vcs-plugin
+ ];
+ };
+ services = {
+ tumbler.enable = true;
+ gnome.gnome-keyring.enable = true;
+ };
+ environment.systemPackages = with pkgs; [ file-roller ];
+ })
+
+ (lib.mkIf cfg.utils.enable {
+ services.gvfs.enable = true;
+
+ environment.systemPackages = with pkgs; [
+ trashy
+ gdu
+
+ unzip
+ p7zip
+ unrar
+ pxz
+ pigz
+ ];
+ })
+ ];
+}