Files
nixpkgs/pkgs/by-name/bi/binary/package.nix
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

74 lines
1.7 KiB
Nix

{
lib,
appstream,
blueprint-compiler,
desktop-file-utils,
fetchFromGitHub,
glib,
gobject-introspection,
gtk4,
libadwaita,
meson,
ninja,
nix-update-script,
pkg-config,
python3Packages,
wrapGAppsHook4,
}:
python3Packages.buildPythonApplication rec {
pname = "binary";
version = "5.3";
pyproject = false;
src = fetchFromGitHub {
owner = "fizzyizzy05";
repo = "binary";
tag = version;
hash = "sha256-kJLEDE/jHKc/VDGa0lcm4eM7nEMam0fbEW8YJVfc7OY=";
};
strictDeps = true;
nativeBuildInputs = [
appstream
blueprint-compiler
desktop-file-utils # for `desktop-file-validate`
glib # for `glib-compile-schemas`
gobject-introspection
gtk4 # for `gtk-update-icon-cache`
meson
ninja
pkg-config
wrapGAppsHook4
];
buildInputs = [ libadwaita ];
dependencies = with python3Packages; [ pygobject3 ];
dontWrapGApps = true;
makeWrapperArgs = [ "\${gappsWrapperArgs[@]}" ];
# NOTE: `postCheck` is intentionally not used here, as the entire checkPhase
# is skipped by `buildPythonApplication`
# https://github.com/NixOS/nixpkgs/blob/9d4343b7b27a3e6f08fc22ead568233ff24bbbde/pkgs/development/interpreters/python/mk-python-derivation.nix#L296
postInstallCheck = ''
mesonCheckPhase
'';
passthru = {
updateScript = nix-update-script { };
};
meta = {
description = "Small and simple app to convert numbers to a different base";
homepage = "https://github.com/fizzyizzy05/binary";
changelog = "https://github.com/fizzyizzy05/binary/releases/tag/${version}";
license = lib.licenses.gpl3Plus;
teams = [ lib.teams.gnome-circle ];
mainProgram = "binary";
platforms = lib.platforms.linux;
};
}