diff --git a/pkgs/applications/misc/metamorphose2/default.nix b/pkgs/applications/misc/metamorphose2/default.nix new file mode 100644 index 000000000000..86b4bc66d296 --- /dev/null +++ b/pkgs/applications/misc/metamorphose2/default.nix @@ -0,0 +1,44 @@ +{ lib, stdenv, fetchFromGitHub, makeWrapper, gettext +, python3 +}: + +stdenv.mkDerivation { + pname = "metamorphose2"; + version = "0.10.0beta"; + + # exif-py vendored via submodule + src = fetchFromGitHub { + owner = "timinaust"; + repo = "metamorphose2"; + rev = "ba0666dd02e4f3f58c1dadc309e7ec1cc13fe851"; + sha256 = "0w9l1vyyswdhdwrmi71g23qyslvhg1xym4ksifd42vwf9dxy55qp"; + fetchSubmodules = true; + }; + + postPatch = '' + rm -rf ./src/mutagen + substituteInPlace messages/Makefile \ + --replace "\$(shell which msgfmt)" "${gettext}/bin/msgfmt" + ''; + + postInstall = '' + rm $out/bin/metamorphose2 + makeWrapper ${python3.interpreter} $out/bin/metamorphose2 \ + --prefix PYTHONPATH : $PYTHONPATH:$(toPythonPath "$out") \ + --add-flags "-O $out/share/metamorphose2/metamorphose2.py -w=3" + ''; + + buildInput = [ gettext python3 ]; + nativeBuildInputs = [ makeWrapper ]; + propagatedBuildInputs = with python3.pkgs; [ mutagen wxPython_4_1 pillow six ]; + + makeFlags = [ "PREFIX=$(out)" ]; + + meta = with lib; { + description = "a graphical mass renaming program for files and folders"; + homepage = "https://github.com/timinaust/metamorphose2"; + license = with licenses; gpl3Plus; + maintainers = with maintainers; [ ramkromberg ]; + platforms = with platforms; linux; + }; +} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 51f51534635e..6ad3af02118b 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -823,7 +823,6 @@ mapAliases ({ mercurial_4 = throw "mercurial_4 has been removed as it's unmaintained"; # Added 2021-10-18 mesos = throw "mesos has been removed from nixpkgs, as it's unmaintained"; # Added 2020-08-15 mess = mame; # Added 2019-10-30 - metamorphose2 = throw "metamorphose2 has been removed from nixpkgs, as it was stuck on python2"; # Added 2022-01-12 mididings = throw "mididings has been removed from nixpkgs as it doesn't support recent python3 versions and its upstream stopped maintaining it"; # Added 2022-01-12 midoriWrapper = throw "'midoriWrapper' has been renamed to/replaced by 'midori'"; # Converted to throw 2022-02-22 mime-types = mailcap; # Added 2022-01-21 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9d16d3298d1f..2acdcfd9f408 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8298,6 +8298,8 @@ with pkgs; mencal = callPackage ../applications/misc/mencal { } ; + metamorphose2 = callPackage ../applications/misc/metamorphose2 { }; + metar = callPackage ../applications/misc/metar { }; mfcuk = callPackage ../tools/security/mfcuk { };