pyprland: 2.2.16 -> 2.2.17
[NixPkgs.git] / pkgs / by-name / py / pyprland / package.nix
blobb9821190cec24f073995a5ee04b7d5f5724c01ef
2   lib,
3   fetchFromGitHub,
4   python3Packages,
5 }:
7 python3Packages.buildPythonApplication rec {
8   pname = "pyprland";
9   version = "2.2.17";
10   format = "pyproject";
12   disabled = python3Packages.pythonOlder "3.10";
14   src = fetchFromGitHub {
15     owner = "hyprland-community";
16     repo = "pyprland";
17     rev = "refs/tags/${version}";
18     hash = "sha256-S1bIIazrBWyjF8tOcIk0AwwWq9gbpTKNsjr9iYA5lKk=";
19   };
21   nativeBuildInputs = with python3Packages; [ poetry-core ];
23   propagatedBuildInputs = with python3Packages; [ aiofiles ];
25   postInstall = ''
26     # file has shebang but cant be run due to a relative import, has proper entrypoint in /bin
27     chmod -x $out/${python3Packages.python.sitePackages}/pyprland/command.py
28   '';
30   # NOTE: this is required for the imports check below to work properly
31   HYPRLAND_INSTANCE_SIGNATURE = "dummy";
33   pythonImportsCheck = [
34     "pyprland"
35     "pyprland.adapters"
36     "pyprland.adapters.menus"
37     "pyprland.command"
38     "pyprland.common"
39     "pyprland.ipc"
40     "pyprland.plugins"
41     "pyprland.plugins.experimental"
42     "pyprland.plugins.expose"
43     "pyprland.plugins.fetch_client_menu"
44     "pyprland.plugins.interface"
45     "pyprland.plugins.layout_center"
46     "pyprland.plugins.lost_windows"
47     "pyprland.plugins.magnify"
48     "pyprland.plugins.monitors"
49     "pyprland.plugins.monitors_v0"
50     "pyprland.plugins.pyprland"
51     "pyprland.plugins.scratchpads"
52     "pyprland.plugins.shift_monitors"
53     "pyprland.plugins.shortcuts_menu"
54     "pyprland.plugins.system_notifier"
55     "pyprland.plugins.toggle_dpms"
56     "pyprland.plugins.toggle_special"
57     "pyprland.plugins.workspaces_follow_focus"
58   ];
60   meta = {
61     mainProgram = "pypr";
62     description = "An hyperland plugin system";
63     homepage = "https://github.com/hyprland-community/pyprland";
64     license = lib.licenses.mit;
65     maintainers = with lib.maintainers; [
66       iliayar
67       johnrtitor
68     ];
69     platforms = lib.platforms.linux;
70   };