130 lines
3.8 KiB
Nix
130 lines
3.8 KiB
Nix
{
|
|
description = "Home Manager configuration of doloro";
|
|
|
|
inputs = {
|
|
# Specify the source of Home Manager and Nixpkgs.
|
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
|
home-manager = {
|
|
url = "github:nix-community/home-manager";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
nixos-wsl.url = "github:nix-community/NixOS-WSL/main";
|
|
nix-meow.url = "git+https://git.scug.io/nikkuss/nix-meow.git"; # config manager, meow'd
|
|
hyprland.url = "github:hyprwm/Hyprland";
|
|
quickshell = {
|
|
url = "git+https://git.outfoxxed.me/outfoxxed/quickshell";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
sops-nix = {
|
|
url = "github:Mic92/sops-nix";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
disko = {
|
|
url = "github:nix-community/disko/latest";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
stylix = {
|
|
url = "github:nix-community/stylix";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay";
|
|
nixvim = {
|
|
url = "github:nix-community/nixvim";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
spicetify-nix = {
|
|
url = "github:Gerg-L/spicetify-nix";
|
|
};
|
|
nix-warez = {
|
|
# Blender-bin
|
|
url = "github:edolstra/nix-warez?dir=blender";
|
|
};
|
|
nixpkgs-gamescope = {
|
|
url = "github:Nixos/nixpkgs?rev=8fcb6f1c4948305af52d19f887b89011ee2c080d";
|
|
};
|
|
};
|
|
outputs =
|
|
inputs@{
|
|
nixpkgs,
|
|
home-manager,
|
|
nix-meow,
|
|
...
|
|
}:
|
|
let
|
|
overlays = [
|
|
(final: prev: {
|
|
arrpc = prev.arrpc.overrideAttrs (preve: rec {
|
|
pname = preve.pname + "-meow";
|
|
version = "94d3ec81";
|
|
patches = [ ./deadlock.patch ];
|
|
src = prev.fetchFromGitHub {
|
|
owner = "XenHat";
|
|
repo = "arrpc";
|
|
# branch = "improved-detection-fixes";
|
|
rev = "94d3ec81339f94e563af512b83db369596d05d3b";
|
|
sha256 = "sha256-DI/HCrmiQo1lPkErCNXOpdQli2wua03PDjdlERrpxTg=";
|
|
};
|
|
npmDepsHash = prev.lib.fakeHash;
|
|
npmDeps = final.fetchNpmDeps {
|
|
inherit src;
|
|
name = "${pname}-${version}-npm-deps";
|
|
hash = "sha256-lw6pngFC2Pnk+I8818TOTwN4r+8IsjvdMYIyTsTi49g=";
|
|
};
|
|
});
|
|
})
|
|
(
|
|
final: prev:
|
|
let
|
|
system = prev.stdenv.hostPlatform.system;
|
|
pkgs_gamescope = import inputs.nixpkgs-gamescope {
|
|
inherit system;
|
|
config = {
|
|
allow_unfree = true;
|
|
};
|
|
};
|
|
packageNix = "${inputs.nixpkgs-gamescope}/pkgs/by-name/ga/gamescope/package.nix";
|
|
in
|
|
{
|
|
gamescope = pkgs_gamescope.callPackage packageNix { };
|
|
}
|
|
)
|
|
];
|
|
utils = nix-meow.lib.setup {
|
|
inherit (inputs) home-manager nixpkgs;
|
|
inherit inputs;
|
|
flakeRoot = ./.;
|
|
hostsFolder = ./hosts;
|
|
hardwaresFolder = ./hardwares;
|
|
modulesFolder = ./modules;
|
|
globalConfig = {
|
|
allowUnfree = true;
|
|
};
|
|
globalOverlays = overlays;
|
|
defaultUser = "doloro";
|
|
};
|
|
inherit (utils) mkHost;
|
|
configurations = [
|
|
(mkHost {
|
|
hardware = "doloro";
|
|
host = "doloro";
|
|
system = "x86_64-linux";
|
|
stateVersion = "25.05";
|
|
nixpkgsConfig = {
|
|
rocmSupport = true;
|
|
cudaSupport = true;
|
|
};
|
|
})
|
|
(mkHost {
|
|
hardware = "doloro-wsl";
|
|
host = "doloro-wsl";
|
|
system = "aarch64-linux";
|
|
stateVersion = "25.05";
|
|
nixpkgsConfig = {
|
|
rocmSupport = false;
|
|
};
|
|
})
|
|
];
|
|
in
|
|
(utils.deepMerge configurations);
|
|
}
|