preload: init at 0.6.4
[NixPkgs.git] / pkgs / by-name / co / cosmic-panel / package.nix
blob7c8c31f511d4112651d43c21833f60e2caa4a161
1 { lib
2 , stdenv
3 , fetchFromGitHub
4 , just
5 , pkg-config
6 , rust
7 , rustPlatform
8 , libglvnd
9 , libxkbcommon
10 , wayland
13 rustPlatform.buildRustPackage {
14   pname = "cosmic-panel";
15   version = "unstable-2023-11-13";
17   src = fetchFromGitHub {
18     owner = "pop-os";
19     repo = "cosmic-panel";
20     rev = "f07cccbd2dc15ede5aeb7646c61c6f62cb32db0c";
21     sha256 = "sha256-uUq+xElZMcG5SWzha9/8COaenycII5aiXmm7sXGgjXE=";
22   };
24   cargoLock = {
25     lockFile = ./Cargo.lock;
26     outputHashes = {
27       "cosmic-client-toolkit-0.1.0" = "sha256-st46wmOncJvu0kj6qaot6LT/ojmW/BwXbbGf8s0mdZ8=";
28       "cosmic-config-0.1.0" = "sha256-eynEjV7eTRoOUA1v4Ac0FP2h9KQtIDx32WkY0hR4xig=";
29       "cosmic-notifications-util-0.1.0" = "sha256-F1+Y74JdpehRPTANzERwNVE6Q6n5f5HAFtawLQVMFrA=";
30       "launch-pad-0.1.0" = "sha256-tnbSJ/GP9GTnLnikJmvb9XrJSgnUnWjadABHF43L1zc=";
31       "smithay-0.3.0" = "sha256-OI+wtDeJ/2bJyiTxL+F53j1CWnZ0aH7XjUmM6oN45Ow=";
32       "smithay-client-toolkit-0.18.0" = "sha256-GhCZ7Eb6q7SwA+NeHSiHwx/Fnrw3R6Zm5N2meMOJ2/4=";
33       "xdg-shell-wrapper-0.1.0" = "sha256-8+RXbYiYeoIGUOsJ7yCc2iYtIGKIwDCzSdq9ISuWxIE=";
34     };
35   };
37   nativeBuildInputs = [ just pkg-config ];
38   buildInputs = [ libglvnd libxkbcommon wayland ];
40   dontUseJustBuild = true;
42   justFlags = [
43     "--set" "prefix" (placeholder "out")
44     "--set" "bin-src" "target/${stdenv.hostPlatform.rust.cargoShortTarget}/release/cosmic-panel"
45   ];
47   # Force linking to libEGL, which is always dlopen()ed.
48   "CARGO_TARGET_${stdenv.hostPlatform.rust.cargoEnvVarTarget}_RUSTFLAGS" =
49     map (a: "-C link-arg=${a}") [
50       "-Wl,--push-state,--no-as-needed"
51       "-lEGL"
52       "-Wl,--pop-state"
53     ];
55   meta = with lib; {
56     homepage = "https://github.com/pop-os/cosmic-panel";
57     description = "Panel for the COSMIC Desktop Environment";
58     license = licenses.gpl3Only;
59     maintainers = with maintainers; [ qyliss nyanbinary ];
60     platforms = platforms.linux;
61   };