diff --git a/flake.nix b/flake.nix index 1c4bb64..d837910 100644 --- a/flake.nix +++ b/flake.nix @@ -167,6 +167,7 @@ prism-launcher = ./home/modules/programs/prism-launcher; shellAliases = ./home/modules/shellAliases.nix; systemd-tmpfiles = ./home/modules/systemd-tmpfiles.nix; + tumblerd = ./home/modules/services/tumblerd; vscode-auto-extension-updater = ./home/modules/programs/vscode/auto-extension-updater.nix; }; diff --git a/home/modules/services/tumblerd/default.nix b/home/modules/services/tumblerd/default.nix new file mode 100644 index 0000000..0fb327e --- /dev/null +++ b/home/modules/services/tumblerd/default.nix @@ -0,0 +1,32 @@ +{ config, lib, pkgs, ... }: +let + cfg = config.services.tumblerd; + package = cfg.package; +in +{ + options.services.tumblerd.enable = lib.mkEnableOption "tumblerd"; + options.services.tumblerd.package = lib.mkPackageOption pkgs "tumbler" { }; + + config = lib.mkIf cfg.enable { + systemd.user.services.tumblerd = { + Unit = { + Description = "Thumbnailing service"; + }; + + Service = { + Type = "dbus"; + BusName = "org.freedesktop.thumbnails.Thumbnailer1"; + ExecStart = "${package}/lib/tumbler-1/tumblerd"; + }; + }; + + xdg.dataFile = { + "dbus-1/services/org.xfce.Tumbler.Cache1.service".source = "${package}/share/dbus-1/services/org.xfce.Tumbler.Cache1.service"; + "dbus-1/services/org.xfce.Tumbler.Manager1.service".source = "${package}/share/dbus-1/services/org.xfce.Tumbler.Manager1.service"; + "dbus-1/services/org.xfce.Tumbler.Thumbnailer1.service".source = "${package}/share/dbus-1/services/org.xfce.Tumbler.Thumbnailer1.service"; + }; + + # TODO: configure properly + xdg.configFile."tumbler/tumbler.rc".source = "${package}/etc/xdg/tumbler/tumbler.rc"; + }; +} diff --git a/home/services/tumblerd.nix b/home/services/tumblerd.nix index 0fb327e..d0a3a00 100644 --- a/home/services/tumblerd.nix +++ b/home/services/tumblerd.nix @@ -1,32 +1,4 @@ -{ config, lib, pkgs, ... }: -let - cfg = config.services.tumblerd; - package = cfg.package; -in +{ ... }: { - options.services.tumblerd.enable = lib.mkEnableOption "tumblerd"; - options.services.tumblerd.package = lib.mkPackageOption pkgs "tumbler" { }; - - config = lib.mkIf cfg.enable { - systemd.user.services.tumblerd = { - Unit = { - Description = "Thumbnailing service"; - }; - - Service = { - Type = "dbus"; - BusName = "org.freedesktop.thumbnails.Thumbnailer1"; - ExecStart = "${package}/lib/tumbler-1/tumblerd"; - }; - }; - - xdg.dataFile = { - "dbus-1/services/org.xfce.Tumbler.Cache1.service".source = "${package}/share/dbus-1/services/org.xfce.Tumbler.Cache1.service"; - "dbus-1/services/org.xfce.Tumbler.Manager1.service".source = "${package}/share/dbus-1/services/org.xfce.Tumbler.Manager1.service"; - "dbus-1/services/org.xfce.Tumbler.Thumbnailer1.service".source = "${package}/share/dbus-1/services/org.xfce.Tumbler.Thumbnailer1.service"; - }; - - # TODO: configure properly - xdg.configFile."tumbler/tumbler.rc".source = "${package}/etc/xdg/tumbler/tumbler.rc"; - }; + services.tumblerd = { }; }