Add darktable ghost publish plugin
Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
@@ -2,7 +2,10 @@
|
||||
user ? throw "user argument is required",
|
||||
home ? throw "home argument is required",
|
||||
}:
|
||||
{ pkgs, ... }:
|
||||
{ config, pkgs, ... }:
|
||||
let
|
||||
hmConfig = config.home-manager.users.${user};
|
||||
in
|
||||
{
|
||||
nixpkgs.overlays = [
|
||||
(final: prev: {
|
||||
@@ -13,12 +16,22 @@
|
||||
];
|
||||
|
||||
environment.persistence = {
|
||||
"/persist"."${home}/.config/darktable" = { };
|
||||
"/persist" = {
|
||||
"${home}/.config/darktable/data.db" = { };
|
||||
"${home}/.config/darktable/library.db" = { };
|
||||
};
|
||||
"/cache"."${home}/.cache/darktable" = { };
|
||||
};
|
||||
|
||||
home-manager.users.${user} =
|
||||
let
|
||||
lua-scripts = pkgs.fetchFromGitHub {
|
||||
owner = "darktable-org";
|
||||
repo = "lua-scripts";
|
||||
rev = "daa0877b4c25b91e4b71afc1ef8ffcba6018f7b2";
|
||||
sha256 = "sha256-NNGAq1zgKqWLhKBPgm7kFZq4xwvescxnCAwovSF9r4k=";
|
||||
};
|
||||
|
||||
hald-clut = pkgs.fetchFromGitHub {
|
||||
owner = "cedeber";
|
||||
repo = "hald-clut";
|
||||
@@ -27,7 +40,18 @@
|
||||
};
|
||||
in
|
||||
{
|
||||
home.packages = with pkgs; [ darktable ];
|
||||
home = {
|
||||
packages = with pkgs; [
|
||||
darktable
|
||||
exiftool
|
||||
(pkgs.callPackage ./publish { })
|
||||
];
|
||||
|
||||
sessionVariables = {
|
||||
GHOST_URL = "https://photos.karaolidis.com";
|
||||
GHOST_ADMIN_API_KEY_PATH = hmConfig.sops.secrets."jupiter/photos.karaolidis.com/admin".path;
|
||||
};
|
||||
};
|
||||
|
||||
xdg.configFile = {
|
||||
"darktable/darktablerc".source = (pkgs.formats.keyValue { }).generate "darktablerc" {
|
||||
@@ -48,9 +72,22 @@
|
||||
"$(EXIF.YEAR)-$(EXIF.MONTH)-$(EXIF.DAY)_$(EXIF.HOUR)-$(EXIF.MINUTE)-$(EXIF.SECOND)_$(CONFLICT_PADDING).$(FILE_EXTENSION)";
|
||||
"session/sub_directory_pattern" = "";
|
||||
"setup_import_directory" = true;
|
||||
"lua/script_manager/check_update" = false;
|
||||
};
|
||||
|
||||
"darktable/luarc".text = ''
|
||||
require "tools/script_manager"
|
||||
require "tools/publish"
|
||||
'';
|
||||
|
||||
"darktable/lua/lib".source = "${lua-scripts}/lib";
|
||||
"darktable/lua/tools/script_manager.lua".source = "${lua-scripts}/tools/script_manager.lua";
|
||||
"darktable/lua/tools/publish.lua".source = ./publish/publish.lua;
|
||||
|
||||
"darktable/luts".source = "${hald-clut}/HaldCLUT";
|
||||
};
|
||||
|
||||
sops.secrets."jupiter/photos.karaolidis.com/admin".sopsFile =
|
||||
../../../../../../secrets/personal/secrets.yaml;
|
||||
};
|
||||
}
|
||||
|
Reference in New Issue
Block a user