diff --git a/pkgs/applications/graphics/oculante/default.nix b/pkgs/applications/graphics/oculante/default.nix new file mode 100644 index 000000000000..65300df69048 --- /dev/null +++ b/pkgs/applications/graphics/oculante/default.nix @@ -0,0 +1,66 @@ +{ lib +, rustPlatform +, fetchFromGitHub +, cmake +, pkg-config +, openssl +, fontconfig +, nasm +, libX11 +, libXcursor +, libXrandr +, libXi +, libGL +, stdenv +, gtk3 +, darwin +}: + +rustPlatform.buildRustPackage rec { + pname = "oculante"; + version = "0.6.38"; + + src = fetchFromGitHub { + owner = "woelper"; + repo = pname; + rev = version; + sha256 = "sha256-0msPeW0FoBzHBDfX2iFH4HzAknaGPNThuCLi2vhdK08="; + }; + + cargoSha256 = "sha256-eKRn8MC4/jjPRoajhwrtXsa8n9bGO5MAKjDuwHWs7Oc="; + + nativeBuildInputs = [ + cmake + pkg-config + nasm + ]; + + checkFlagsArray = [ "--skip=tests::net" ]; # requires network access + + buildInputs = [ + openssl + fontconfig + ] ++ lib.optionals stdenv.isLinux [ + libX11 + libXcursor + libXi + libXrandr + libGL + gtk3 + ] ++ lib.optionals stdenv.isDarwin [ + darwin.libobjc + ]; + + postFixup = lib.optionalString stdenv.isLinux '' + patchelf $out/bin/oculante --add-rpath ${lib.makeLibraryPath [ libGL ]} + ''; + + meta = with lib; { + broken = stdenv.isDarwin; + description = "A minimalistic crossplatform image viewer written in Rust"; + homepage = "https://github.com/woelper/oculante"; + changelog = "https://github.com/woelper/oculante/blob/${version}/CHANGELOG.md"; + license = licenses.mit; + maintainers = with maintainers; [ dit7ya ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d1da7076dd35..fe74edcb69b2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -31390,6 +31390,8 @@ with pkgs; octoprint = callPackage ../applications/misc/octoprint { }; + oculante = callPackage ../applications/graphics/oculante { }; + ocr-a = callPackage ../data/fonts/ocr-a {}; ocrad = callPackage ../applications/graphics/ocrad { };