!qol(restructure): heavy restructure
This commit is contained in:
134
flake.nix
Normal file
134
flake.nix
Normal file
@@ -0,0 +1,134 @@
|
||||
{
|
||||
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";
|
||||
};
|
||||
nikkuss-pkgs = {
|
||||
url = "git+https://git.scug.io/nikkuss/pkgs";
|
||||
# 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 = [
|
||||
# inputs.nikkuss-pkgs.overlays.default
|
||||
(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 = false;
|
||||
cudaSupport = true;
|
||||
};
|
||||
})
|
||||
(mkHost {
|
||||
hardware = "doloro-wsl";
|
||||
host = "doloro-wsl";
|
||||
system = "aarch64-linux";
|
||||
stateVersion = "25.05";
|
||||
nixpkgsConfig = {
|
||||
rocmSupport = false;
|
||||
};
|
||||
})
|
||||
];
|
||||
in
|
||||
(utils.deepMerge configurations);
|
||||
}
|
||||
Reference in New Issue
Block a user