diff --git a/.github/workflows/cachix.yaml b/.github/workflows/cachix.yaml index 9b4646b..0a0e362 100644 --- a/.github/workflows/cachix.yaml +++ b/.github/workflows/cachix.yaml @@ -46,6 +46,7 @@ jobs: fail-fast: false matrix: name: + - ansel - grafanaDashboards/nginx - grafanaDashboards/node-exporter - kaleidoscope-udev-rules diff --git a/pkgs/ansel/default.nix b/pkgs/ansel/default.nix new file mode 100644 index 0000000..643d974 --- /dev/null +++ b/pkgs/ansel/default.nix @@ -0,0 +1,155 @@ +{ cmake +, colord +, colord-gtk +, curl +, dav1d +, desktop-file-utils +, exiftool +, exiv2 +, fetchFromGitHub +, glib +, gmic +, graphicsmagick +, gtk3 +, icu +, intltool +, isocodes +, jasper +, json-glib +, lcms +, lensfun +, lib +, libXdmcp +, libXtst +, libaom +, libavif +, libdatrie +, libde265 +, libepoxy +, libffi +, libgcrypt +, libgpg-error +, libheif +, libjpeg +, libpsl +, librsvg +, libsecret +, libselinux +, libsepol +, libsoup +, libsysprof-capture +, libthai +, libwebp +, libxkbcommon +, libxml2 +, libxslt +, llvmPackages +, openexr_3 +, openjpeg +, osm-gps-map +, pcre +, pcre2 +, perlPackages +, pkg-config +, pugixml +, python3Packages +, rav1e +, sqlite +, stdenv +, util-linux +, wrapGAppsHook +, x265 +}: + +stdenv.mkDerivation { + pname = "ansel"; + version = "unstable-2023-12-15"; + + src = fetchFromGitHub { + owner = "aurelienpierreeng"; + repo = "ansel"; + rev = "53c609cd274b6b893ed10214ac6877941d1b486b"; + hash = "sha256-ed3rKdJRO+QQdn+C4DANoztXxtoMvHudBvJQogoaHT0="; + fetchSubmodules = true; + }; + + nativeBuildInputs = [ + cmake + desktop-file-utils + exiftool + intltool + libxml2 + llvmPackages.clang + llvmPackages.llvm + pkg-config + perlPackages.perl + python3Packages.jsonschema + wrapGAppsHook + ]; + + buildInputs = [ + colord + colord-gtk + curl + dav1d + exiv2 + json-glib + glib + gmic + graphicsmagick + gtk3 + icu + isocodes + jasper + lcms + lensfun + libaom + libavif + libdatrie + libde265 + libepoxy + libffi + libgcrypt + libgpg-error + libheif + libjpeg + libpsl + librsvg + libsecret + libselinux + libsepol + libsoup + libsysprof-capture + libthai + libwebp + libXdmcp + libxkbcommon + libxslt + libXtst + openexr_3 + openjpeg + osm-gps-map + pcre + pcre2 + perlPackages.Po4a + pugixml + rav1e + sqlite + util-linux + x265 + ]; + + preFixup = '' + gappsWrapperArgs+=( + --prefix LD_LIBRARY_PATH ":" "$out/lib/ansel" + ) + ''; + + meta = { + description = "A darktable fork minus the bloat plus some design vision"; + homepage = "https://ansel.photos/"; + license = lib.licenses.gpl3Plus; + mainProgram = "ansel"; + platforms = lib.platforms.linux; + }; +} diff --git a/pkgs/default.nix b/pkgs/default.nix index 19307a1..fc7fdd0 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -1,4 +1,5 @@ {pkgs}: { + ansel = pkgs.callPackage ./ansel {}; sddm-sugar-candy = pkgs.callPackage ./sddm-sugar-candy {}; kaleidoscope-udev-rules = pkgs.callPackage ./kaleidoscope-udev-rules {}; grafanaDashboards = pkgs.recurseIntoAttrs (pkgs.callPackage ./grafana-dashboards {});