mirror of
https://forge.katzen.cafe/schrottkatze/nix-configs.git
synced 2024-11-21 21:04:41 +01:00
174 lines
5 KiB
Nix
174 lines
5 KiB
Nix
{
|
|
description = "system";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "nixpkgs/nixos-unstable";
|
|
nixpkgs-stable.url = "nixpkgs/nixos-23.11";
|
|
nixpkgs-unstable-small.url = "nixpkgs/nixos-unstable-small";
|
|
lix = {
|
|
url = "git+https://git@git.lix.systems/lix-project/lix?ref=refs/tags/2.90-beta.1";
|
|
flake = false;
|
|
};
|
|
lix-module = {
|
|
url = "git+https://git.lix.systems/lix-project/nixos-module";
|
|
inputs.lix.follows = "lix";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
home-manager = {
|
|
url = "github:nix-community/home-manager";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
nixos-hardware.url = "github:networkException/nixos-hardware/apple-t2-init";
|
|
mac-brcm-fw = {
|
|
url = "path:/home/jade/nix-configs/mac-brcm-fw";
|
|
flake = false;
|
|
};
|
|
crane = {
|
|
url = "github:ipetkov/crane";
|
|
inputs = {
|
|
nixpkgs.follows = "nixpkgs";
|
|
};
|
|
};
|
|
fenix = {
|
|
url = "github:nix-community/fenix";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
};
|
|
|
|
outputs = {
|
|
self,
|
|
nixpkgs,
|
|
nixpkgs-stable,
|
|
nixpkgs-unstable-small,
|
|
lix-module,
|
|
home-manager,
|
|
nixos-hardware,
|
|
mac-brcm-fw,
|
|
fenix,
|
|
crane,
|
|
...
|
|
} @ inputs: let
|
|
system = "x86_64-linux";
|
|
pkgs = nixpkgs.legacyPackages.${system};
|
|
pkgs-stable = nixpkgs-stable.legacyPackages.${system};
|
|
pkgs-unstable-small = nixpkgs-unstable-small.legacyPackages.${system};
|
|
crane-lib = crane.lib.${system};
|
|
rs-toolchain = with fenix.packages.${system};
|
|
combine [
|
|
default.toolchain
|
|
rust-analyzer
|
|
];
|
|
# rs-platform = pkgs.makeRustPlatform {
|
|
# cargo = rs-toolchain;
|
|
# rustc = rs-toolchain;
|
|
# };
|
|
rs-programs = final: prev: {
|
|
# s10e-jrnl = rs-platform.buildRustPackage {
|
|
# pname = "jrnl";
|
|
# version = "0.0.1";
|
|
# src = ./programs/jrnl;
|
|
# cargoLock.lockFile = ./programs/jrnl/Cargo.lock;
|
|
# };
|
|
s10e-jrnl = crane-lib.buildPackage {
|
|
pname = "s10e-bs";
|
|
version = "0.0.1";
|
|
src = crane-lib.cleanCargoSource (crane-lib.path ./.);
|
|
};
|
|
};
|
|
in {
|
|
devShells."x86_64-linux".default = pkgs.mkShell {
|
|
buildInputs = [
|
|
(pkgs.haskellPackages.ghcWithPackages
|
|
(pkgs:
|
|
with pkgs; [
|
|
xmonad
|
|
xmonad-contrib
|
|
xmobar
|
|
statgrab
|
|
]))
|
|
rs-toolchain
|
|
pkgs.haskell-language-server
|
|
];
|
|
};
|
|
nixosConfigurations = {
|
|
monosodium-glutamate-g = nixpkgs.lib.nixosSystem {
|
|
specialArgs = {
|
|
inherit inputs pkgs-unstable-small pkgs-stable rs-programs lix-module;
|
|
};
|
|
system = "x86_64-linux";
|
|
modules = [
|
|
./hosts/monosodium-glutamate-g/configuration.nix
|
|
home-manager.nixosModules.home-manager
|
|
{
|
|
home-manager.useGlobalPkgs = true;
|
|
home-manager.useUserPackages = true;
|
|
home-manager.extraSpecialArgs = {
|
|
inherit pkgs-unstable-small pkgs-stable;
|
|
};
|
|
home-manager.users.jade = {
|
|
nixosConfig,
|
|
pkgs,
|
|
...
|
|
}: {
|
|
home.sessionVariables.TZ = nixosConfig.time.timeZone;
|
|
home.stateVersion = "${nixosConfig.system.stateVersion}";
|
|
};
|
|
}
|
|
];
|
|
};
|
|
catbook-j = nixpkgs.lib.nixosSystem {
|
|
specialArgs = {
|
|
inherit inputs pkgs-unstable-small pkgs-stable rs-programs lix-module;
|
|
};
|
|
system = "x86_64-linux";
|
|
modules = [
|
|
./hosts/catbook-j/configuration.nix
|
|
home-manager.nixosModules.home-manager
|
|
{
|
|
home-manager.useGlobalPkgs = true;
|
|
home-manager.useUserPackages = true;
|
|
home-manager.extraSpecialArgs = {
|
|
inherit pkgs-unstable-small pkgs-stable;
|
|
};
|
|
home-manager.users.jade = {
|
|
nixosConfig,
|
|
pkgs,
|
|
...
|
|
}: {
|
|
home.sessionVariables.TZ = nixosConfig.time.timeZone;
|
|
home.stateVersion = "22.11";
|
|
};
|
|
}
|
|
];
|
|
};
|
|
potatobook-g = nixpkgs.lib.nixosSystem {
|
|
specialArgs = {
|
|
inherit inputs pkgs-unstable-small rs-programs lix-module;
|
|
};
|
|
system = "x86_64-linux";
|
|
modules = [
|
|
"${mac-brcm-fw}"
|
|
./hosts/potatobook-g/configuration.nix
|
|
home-manager.nixosModules.home-manager
|
|
{
|
|
home-manager.useGlobalPkgs = true;
|
|
home-manager.useUserPackages = true;
|
|
home-manager.extraSpecialArgs = {
|
|
inherit pkgs-unstable-small pkgs-stable;
|
|
};
|
|
home-manager.users.jade = {
|
|
nixosConfig,
|
|
pkgs,
|
|
...
|
|
}: {
|
|
home.sessionVariables.TZ = nixosConfig.time.timeZone;
|
|
home.stateVersion = "${nixosConfig.system.stateVersion}";
|
|
};
|
|
}
|
|
nixos-hardware.nixosModules.apple-t2
|
|
];
|
|
};
|
|
};
|
|
};
|
|
}
|