about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorSandro <sandro.jaeckel@gmail.com>2024-06-26 00:43:23 +0200
committerGitHub <noreply@github.com>2024-06-26 00:43:23 +0200
commitd2076f15a67c388c3d926eec826e7c82d71bc53d (patch)
tree4969636657e91209a7999ab96229387dc786256d /pkgs
parent56db90ee7bb90bcf5c7cafe22b8d2370b88f7cca (diff)
parent55fcb611f471f8f1dd387edb688ec04b9b1d46f2 (diff)
Merge pull request #300749 from zebreus/init-photini
photini: init at 2024.2.1
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/by-name/ph/photini/package.nix48
-rw-r--r--pkgs/development/python-modules/exiv2/default.nix46
-rw-r--r--pkgs/top-level/python-packages.nix8
3 files changed, 101 insertions, 1 deletions
diff --git a/pkgs/by-name/ph/photini/package.nix b/pkgs/by-name/ph/photini/package.nix
new file mode 100644
index 0000000000000..732c835edfbe7
--- /dev/null
+++ b/pkgs/by-name/ph/photini/package.nix
@@ -0,0 +1,48 @@
+{
+  lib,
+  fetchFromGitHub,
+  python3Packages,
+  gitUpdater,
+}:
+
+python3Packages.buildPythonApplication rec {
+  pname = "photini";
+  version = "2024.5.0";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "jim-easterbrook";
+    repo = "Photini";
+    rev = "refs/tags/${version}";
+    hash = "sha256-iTaFyQpC585QPInLvFzgk65+Znvb1kTTsrzEQvy1quY=";
+  };
+
+  build-system = with python3Packages; [ setuptools-scm ];
+  dependencies = with python3Packages; [
+    pyqt6
+    pyqt6-webengine
+    cachetools
+    appdirs
+    chardet
+    exiv2
+    filetype
+    requests
+    requests-oauthlib
+    requests-toolbelt
+    pyenchant
+    gpxpy
+    keyring
+    pillow
+  ];
+
+  passthru.updateScript = gitUpdater { };
+
+  meta = {
+    homepage = "https://github.com/jim-easterbrook/Photini";
+    changelog = "https://photini.readthedocs.io/en/release-${version}/misc/changelog.html";
+    description = "An easy to use digital photograph metadata (Exif, IPTC, XMP) editing application";
+    license = lib.licenses.gpl3Plus;
+    maintainers = with lib.maintainers; [ zebreus ];
+    mainProgram = "photini";
+  };
+}
diff --git a/pkgs/development/python-modules/exiv2/default.nix b/pkgs/development/python-modules/exiv2/default.nix
new file mode 100644
index 0000000000000..01869fb292486
--- /dev/null
+++ b/pkgs/development/python-modules/exiv2/default.nix
@@ -0,0 +1,46 @@
+{
+  lib,
+  pkg-config,
+  exiv2,
+  python3Packages,
+  fetchFromGitHub,
+  gitUpdater,
+}:
+python3Packages.buildPythonPackage rec {
+  pname = "exiv2";
+  version = "0.16.3";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "jim-easterbrook";
+    repo = "python-exiv2";
+    rev = "refs/tags/${version}";
+    hash = "sha256-DX0pg80fOSkWqrIvcye0btZGglnizzM9ZEuVEpnEJKQ=";
+  };
+
+  build-system = with python3Packages; [
+    setuptools
+    toml
+  ];
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [ exiv2 ];
+
+  pythonImportsCheck = [ "exiv2" ];
+  nativeCheckInputs = with python3Packages; [ unittestCheckHook ];
+  unittestFlagsArray = [
+    "-s"
+    "tests"
+    "-v"
+  ];
+
+  passthru.updateScript = gitUpdater { };
+
+  meta = {
+    description = "Low level Python interface to the Exiv2 C++ library";
+    homepage = "https://github.com/jim-easterbrook/python-exiv2";
+    changelog = "https://python-exiv2.readthedocs.io/en/release-${version}/misc/changelog.html";
+    license = lib.licenses.gpl3Plus;
+    maintainers = with lib.maintainers; [ zebreus ];
+  };
+}
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 839d53a8d48ca..abaa5611892c3 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -4033,6 +4033,10 @@ self: super: with self; {
 
   exifread = callPackage ../development/python-modules/exifread { };
 
+  exiv2 = callPackage ../development/python-modules/exiv2 {
+    inherit (pkgs) exiv2;
+  };
+
   expandvars = callPackage ../development/python-modules/expandvars { };
 
   expects = callPackage ../development/python-modules/expects { };
@@ -10695,7 +10699,9 @@ self: super: with self; {
 
   py3buddy = toPythonModule (callPackage ../development/python-modules/py3buddy { });
 
-  py3exiv2 = callPackage ../development/python-modules/py3exiv2 { };
+  py3exiv2 = callPackage ../development/python-modules/py3exiv2 {
+    inherit (pkgs) exiv2;
+  };
 
   py3langid = callPackage ../development/python-modules/py3langid { };