X-Git-Url: http://git.scottworley.com/nix-env-apps/blobdiff_plain/b718bf5ead92dffaeadce6dbefc65e7188b7fb20..HEAD:/default.nix diff --git a/default.nix b/default.nix index 17ddac7..e309267 100644 --- a/default.nix +++ b/default.nix @@ -1,14 +1,41 @@ -{ pkgs ? import { } }: -pkgs.python3Packages.callPackage ({ buildPythonPackage, gobject-introspection - , gtk4, lib, pygobject3, wrapGAppsHook4, }: +{ pkgs ? import { }, lint ? false }: +pkgs.python3Packages.callPackage ({ autopep8, buildPythonPackage + , gobject-introspection, gtk4, lib, makeDesktopItem, mypy, pylint, pygobject3 + , wrapGAppsHook4, }: buildPythonPackage rec { pname = "apps"; - version = "1.0"; + version = "1.0.2"; + src = lib.cleanSource ./.; - nativeBuildInputs = [ gobject-introspection wrapGAppsHook4 ]; - buildInputs = [ gtk4 ]; + doCheck = true; + checkPhase = "./test.sh"; + nativeBuildInputs = [ gobject-introspection wrapGAppsHook4 ]; + nativeCheckInputs = [ mypy ] ++ lib.optionals lint [ autopep8 pylint ]; + buildInputs = [ gtk4 ]; pythonPath = [ pygobject3 ]; + postInstall = '' + cp -r $desktopItem/share $out + ''; + + desktopItem = makeDesktopItem { + name = "Apps"; + exec = "apps"; + icon = ./apps.png; + comment = "Configure nix-env Apps"; + desktopName = "Apps"; + genericName = "Configure Apps"; + categories = [ "Settings" ]; + }; + + meta = { + description = + "A simple GUI for managing declarative nix-env user environments"; + homepage = "https://git.scottworley.com/nix-env-apps"; + license = pkgs.lib.licenses.gpl3; + maintainers = with pkgs.lib.maintainers; [ chkno ]; + }; + }) { }