mirror of
https://github.com/H3rmt/hyprshell.git
synced 2026-01-09 05:41:06 +08:00
fix: update hyprland plugin chore: fix packaging for nix Signed-off-by: Enrico Stemmer <enrico@h3rmt.zip>
104 lines
3.2 KiB
Nix
104 lines
3.2 KiB
Nix
{
|
|
description = "hyprshell - A Rust-based GUI designed to enhance window management in hyprland";
|
|
inputs = {
|
|
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
|
|
home-manager = {
|
|
url = "github:nix-community/home-manager";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
flake-parts = {
|
|
url = "github:hercules-ci/flake-parts";
|
|
inputs.nixpkgs-lib.follows = "nixpkgs";
|
|
};
|
|
hyprland.url = "github:hyprwm/Hyprland";
|
|
crane.url = "github:ipetkov/crane";
|
|
};
|
|
outputs =
|
|
inputs@{
|
|
self,
|
|
nixpkgs,
|
|
home-manager,
|
|
flake-parts,
|
|
hyprland,
|
|
crane,
|
|
}:
|
|
flake-parts.lib.mkFlake { inherit inputs; } {
|
|
systems = [
|
|
"aarch64-linux"
|
|
"x86_64-linux"
|
|
];
|
|
perSystem =
|
|
{ pkgs, self', ... }:
|
|
let
|
|
craneLib = crane.mkLib pkgs;
|
|
buildLib = import ./nix/build.nix { inherit craneLib pkgs; };
|
|
in
|
|
{
|
|
formatter = pkgs.nixfmt-tree;
|
|
packages = rec {
|
|
hyprshell = craneLib.buildPackage (
|
|
buildLib.commonArgs
|
|
// {
|
|
cargoArtifacts = buildLib.cargoReleaseArtifacts;
|
|
preFixup =
|
|
buildLib.addWrapWithGccArgs
|
|
inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.default;
|
|
postInstall = buildLib.postInstall;
|
|
}
|
|
);
|
|
hyprshell-nixpkgs = craneLib.buildPackage (
|
|
buildLib.commonArgs
|
|
// {
|
|
cargoArtifacts = buildLib.cargoReleaseArtifacts;
|
|
preFixup = buildLib.addWrapWithGccArgs pkgs.hyprland;
|
|
postInstall = buildLib.postInstall;
|
|
}
|
|
);
|
|
hyprshell-slim = craneLib.buildPackage (
|
|
buildLib.commonArgs
|
|
// {
|
|
cargoArtifacts = buildLib.cargoReleaseArtifacts;
|
|
cargoExtraArgs = "--no-default-features --features slim";
|
|
preFixup =
|
|
buildLib.addWrapWithGccArgs
|
|
inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.default;
|
|
postInstall = buildLib.postInstall;
|
|
}
|
|
);
|
|
hyprshell-slim-nixpkgs = craneLib.buildPackage (
|
|
buildLib.commonArgs
|
|
// {
|
|
cargoArtifacts = buildLib.cargoReleaseArtifacts;
|
|
cargoExtraArgs = "--no-default-features --features slim";
|
|
preFixup = buildLib.addWrapWithGccArgs pkgs.hyprland;
|
|
postInstall = buildLib.postInstall;
|
|
}
|
|
);
|
|
default = hyprshell;
|
|
};
|
|
checks = import ./nix/checks.nix {
|
|
inherit
|
|
self
|
|
pkgs
|
|
craneLib
|
|
buildLib
|
|
home-manager
|
|
;
|
|
};
|
|
devShells.default = craneLib.devShell {
|
|
checks = self'.checks;
|
|
stdenv = buildLib.stdenv;
|
|
packages = [
|
|
pkgs.rust-analyzer
|
|
];
|
|
};
|
|
};
|
|
flake = {
|
|
homeModules = rec {
|
|
hyprshell = import ./nix/module.nix self;
|
|
default = hyprshell;
|
|
};
|
|
};
|
|
};
|
|
}
|