-
-
Notifications
You must be signed in to change notification settings - Fork 63
Expand file tree
/
Copy pathflake.nix
More file actions
44 lines (39 loc) · 1.63 KB
/
Copy pathflake.nix
File metadata and controls
44 lines (39 loc) · 1.63 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
flake-utils.url = "github:numtide/flake-utils";
};
outputs = { self, nixpkgs, flake-utils }: flake-utils.lib.eachDefaultSystem (system:
let
pkgs = import nixpkgs { inherit system; };
native_build_inputs = with pkgs; [ meson ninja pkg-config blueprint-compiler desktop-file-utils ];
build_inputs = with pkgs; [ glib-networking libadwaita libportal libsecret pipewire ] ++ (with pkgs.gst_all_1; [ gstreamer gst-plugins-base gst-plugins-good ]);
dependencies = with pkgs; [ alsa-utils ] ++ (with pkgs.python313Packages; [ pygobject3 tidalapi requests mpd2 pypresence ]);
in {
devShells.default = pkgs.mkShell {
name = "high-tide-dev-shell";
packages = with pkgs; [ ruff gettext basedpyright ]
++ (with pkgs.python313Packages; [ python-lsp-server flake8 ])
++ native_build_inputs
++ build_inputs
++ dependencies;
};
packages.high-tide = pkgs.python313Packages.buildPythonApplication {
name = "high-tide";
pyproject = false;
src = ./.;
nativeBuildInputs = with pkgs; [ wrapGAppsHook4 ] ++ native_build_inputs;
buildInputs = build_inputs;
dependencies = dependencies;
dontWrapGApps = true;
makeWrapperArgs = [ "\${gappsWrapperArgs[@]}" ];
meta = {
description = "Libadwaita TIDAL client for Linux";
homepage = "https://github.com/Nokse22/high-tide";
mainProgram = "high-tide";
};
};
defaultPackage = self.packages.${system}.high-tide;
}
);
}