Compare commits
2 commits
4880ce65ae
...
14dfeec55f
Author | SHA1 | Date | |
---|---|---|---|
![]() |
14dfeec55f | ||
![]() |
bf19849309 |
8 changed files with 61 additions and 100 deletions
|
@ -10,5 +10,15 @@ in
|
||||||
modules = [
|
modules = [
|
||||||
{networking.hostName = hostname;}
|
{networking.hostName = hostname;}
|
||||||
(./hosts/${hostname})
|
(./hosts/${hostname})
|
||||||
|
|
||||||
|
{
|
||||||
|
# This value determines the NixOS release from which the default
|
||||||
|
# settings for stateful data, like file locations and database versions
|
||||||
|
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||||
|
# this value at the release version of the first install of this system.
|
||||||
|
# Before changing this value read the documentation for this option
|
||||||
|
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||||
|
system.stateVersion = hostOptions.stateVersion; # Did you read the comment?
|
||||||
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,13 +5,6 @@
|
||||||
nixos-unstable,
|
nixos-unstable,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
# This value determines the NixOS release from which the default
|
|
||||||
# settings for stateful data, like file locations and database versions
|
|
||||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
|
||||||
# this value at the release version of the first install of this system.
|
|
||||||
# Before changing this value read the documentation for this option
|
|
||||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
|
||||||
system.stateVersion = "24.05"; # Did you read the comment?
|
|
||||||
|
|
||||||
#nixpkgs.overlays = [ overlays.unstable-packages ];
|
#nixpkgs.overlays = [ overlays.unstable-packages ];
|
||||||
nixpkgs = {
|
nixpkgs = {
|
||||||
|
@ -33,22 +26,9 @@
|
||||||
# })
|
# })
|
||||||
];
|
];
|
||||||
|
|
||||||
# Configure your nixpkgs instance
|
|
||||||
config = {
|
|
||||||
allowUnfree = true;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
nix = {
|
|
||||||
settings.experimental-features = ["nix-command" "flakes"];
|
|
||||||
|
|
||||||
# https://lix.systems/ Lix is a modern, delicious implementation of the Nix package manager,
|
|
||||||
# focused on correctness, usability, and growth –
|
|
||||||
# and committed to doing right by its community.
|
|
||||||
package = pkgs.lix;
|
|
||||||
|
|
||||||
channel.enable = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
# steam and other stuff seems to depend on perl
|
# steam and other stuff seems to depend on perl
|
||||||
|
@ -77,7 +57,8 @@
|
||||||
../../modules/wm_and_de
|
../../modules/wm_and_de
|
||||||
|
|
||||||
../../modules/pkg_mgrmnt
|
../../modules/pkg_mgrmnt
|
||||||
|
|
||||||
|
../../system_profiles/defaults.nix
|
||||||
# ../../tests
|
# ../../tests
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,38 +4,13 @@
|
||||||
modulesPath,
|
modulesPath,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
# This value determines the NixOS release from which the default
|
|
||||||
# settings for stateful data, like file locations and database versions
|
|
||||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
|
||||||
# this value at the release version of the first install of this system.
|
|
||||||
# Before changing this value read the documentation for this option
|
|
||||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
|
||||||
system.stateVersion = "25.05"; # Did you read the comment?
|
|
||||||
|
|
||||||
nixpkgs.config = {
|
|
||||||
# Disable if you don't want unfree packages
|
|
||||||
allowUnfree = true;
|
|
||||||
};
|
|
||||||
nix.settings.experimental-features = ["nix-command" "flakes"];
|
|
||||||
|
|
||||||
# https://lix.systems/ Lix is a modern, delicious implementation of the Nix package manager,
|
|
||||||
# focused on correctness, usability, and growth –
|
|
||||||
# and committed to doing right by its community.
|
|
||||||
nix.package = pkgs.lix;
|
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
|
|
||||||
../../modules/locale.nix
|
../../system_profiles/defaults.nix
|
||||||
|
../../system_profiles/mini-container.nix
|
||||||
|
|
||||||
../../system_profiles/mini.nix
|
|
||||||
{
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
|
||||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
|
||||||
# still possible to use this option, but it's recommended to use it in conjunction
|
|
||||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
|
||||||
networking.useDHCP = lib.mkDefault true;
|
|
||||||
# networking.interfaces.ens18.useDHCP = lib.mkDefault true;
|
|
||||||
}
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,52 +4,16 @@
|
||||||
modulesPath,
|
modulesPath,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
#networking.hostName = "jitsi"; # Define your hostname.
|
|
||||||
# This value determines the NixOS release from which the default
|
|
||||||
# settings for stateful data, like file locations and database versions
|
|
||||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
|
||||||
# this value at the release version of the first install of this system.
|
|
||||||
# Before changing this value read the documentation for this option
|
|
||||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
|
||||||
system.stateVersion = "24.11"; # Did you read the comment?
|
|
||||||
|
|
||||||
nixpkgs.config = {
|
nixpkgs.config = {
|
||||||
# Disable if you don't want unfree packages
|
# Disable if you don't want unfree packages
|
||||||
allowUnfree = true;
|
allowUnfree = true;
|
||||||
};
|
};
|
||||||
nix.settings.experimental-features = ["nix-command" "flakes"];
|
|
||||||
|
|
||||||
# https://lix.systems/ Lix is a modern, delicious implementation of the Nix package manager,
|
|
||||||
# focused on correctness, usability, and growth –
|
|
||||||
# and committed to doing right by its community.
|
|
||||||
nix.package = pkgs.lix;
|
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
|
|
||||||
../../modules/locale.nix
|
../../system_profiles/defaults.nix
|
||||||
|
../../system_profiles/mini-container.nix
|
||||||
(modulesPath + "/profiles/perlless.nix")
|
|
||||||
(modulesPath + "/profiles/minimal.nix")
|
|
||||||
{
|
|
||||||
environment.defaultPackages = [];
|
|
||||||
boot.kernel.enable = false;
|
|
||||||
boot.isContainer = true;
|
|
||||||
nixpkgs.overlays = [(self: super: {})];
|
|
||||||
}
|
|
||||||
{
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
|
||||||
# (the default) this is the recommended approach. When using systemd-networkd it's
|
|
||||||
# still possible to use this option, but it's recommended to use it in conjunction
|
|
||||||
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
|
||||||
networking.useDHCP = lib.mkDefault true;
|
|
||||||
# networking.interfaces.ens18.useDHCP = lib.mkDefault true;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
disabledModules = [
|
|
||||||
(modulesPath + "/profiles/all-hardware.nix")
|
|
||||||
(modulesPath + "/profiles/base.nix")
|
|
||||||
# <nixpkgs/nixos/modules/profiles/all-hardware.nix>
|
|
||||||
# <nixpkgs/nixos/modules/profiles/base.nix>
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
16
outputs.nix
16
outputs.nix
|
@ -1,27 +1,27 @@
|
||||||
inArgs: let
|
inArgs: let
|
||||||
|
lib = inArgs.nixpkgs.lib;
|
||||||
|
hostHelper = import ./hostHelper.nix inArgs;
|
||||||
|
|
||||||
# Supported systems for your flake packages, shell, etc.
|
# Supported systems for your flake packages, shell, etc.
|
||||||
systems = [
|
systems = [
|
||||||
#"aarch64-linux"
|
#"aarch64-linux"
|
||||||
"x86_64-linux"
|
"x86_64-linux"
|
||||||
];
|
];
|
||||||
|
|
||||||
# This is a function that generates an attribute by calling a function you
|
# This is a function that generates an attribute by calling a function you
|
||||||
# pass to it, with each system as an argument
|
# pass to it, with each system as an argument
|
||||||
forAllSystems = inArgs.nixpkgs.lib.genAttrs systems;
|
forAllSystems = inArgs.nixpkgs.lib.genAttrs systems;
|
||||||
|
|
||||||
lib = inArgs.nixpkgs.lib;
|
|
||||||
|
|
||||||
hostHelper = import ./hostHelper.nix inArgs;
|
|
||||||
|
|
||||||
in {
|
in {
|
||||||
# NixOS configuration entrypoint
|
# NixOS configuration entrypoint
|
||||||
# Available through 'nixos-rebuild --flake .#your-hostname'
|
# Available through 'nixos-rebuild --flake .#your-hostname'
|
||||||
# to add more append // (host_helper example);
|
|
||||||
nixosConfigurations = builtins.mapAttrs (hostName: hostOptions: (hostHelper hostName hostOptions)) {
|
nixosConfigurations = builtins.mapAttrs (hostName: hostOptions: (hostHelper hostName hostOptions)) {
|
||||||
crocoite = {};
|
crocoite = {stateVersion = "24.05";};
|
||||||
game-luanti = {unstable = true;};
|
|
||||||
|
jitsi = {stateVersion = "24.11";};
|
||||||
|
game-luanti = {stateVersion = "25.05"; unstable = true;};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
# Your custom packages
|
# Your custom packages
|
||||||
# Accessible through 'nix build', 'nix shell', etc
|
# Accessible through 'nix build', 'nix shell', etc
|
||||||
#packages = forAllSystems (system: import ./pkgs nixpkgs.legacyPackages.${system});
|
#packages = forAllSystems (system: import ./pkgs nixpkgs.legacyPackages.${system});
|
||||||
|
|
23
system_profiles/defaults.nix
Normal file
23
system_profiles/defaults.nix
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
nix.settings.experimental-features = lib.mkDefault ["nix-command" "flakes"];
|
||||||
|
|
||||||
|
# Disable if you don't want unfree packages
|
||||||
|
nixpkgs.config.allowUnfree = lib.mkDefault true;
|
||||||
|
|
||||||
|
nix = {
|
||||||
|
# https://lix.systems/ Lix is a modern, delicious implementation of the Nix package manager,
|
||||||
|
# focused on correctness, usability, and growth –
|
||||||
|
# and committed to doing right by its community.
|
||||||
|
package = lib.mkDefault pkgs.lix;
|
||||||
|
|
||||||
|
channel.enable = lib.mkDefault false;
|
||||||
|
};
|
||||||
|
|
||||||
|
imports = [
|
||||||
|
../modules/locale.nix
|
||||||
|
];
|
||||||
|
}
|
|
@ -1,10 +1,13 @@
|
||||||
{
|
{
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
./mini.nix
|
./mini.nix
|
||||||
|
|
||||||
{
|
{
|
||||||
boot.isContainer = true;
|
boot.isContainer = lib.mkDefault true;
|
||||||
boot.kernel.enable = false;
|
boot.kernel.enable = lib.mkDefault false;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
{
|
{
|
||||||
|
lib,
|
||||||
modulesPath,
|
modulesPath,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
|
@ -7,10 +8,14 @@
|
||||||
(modulesPath + "/profiles/perlless.nix")
|
(modulesPath + "/profiles/perlless.nix")
|
||||||
|
|
||||||
{
|
{
|
||||||
boot.isContainer = true;
|
environment.defaultPackages = lib.mkDefault [];
|
||||||
boot.kernel.enable = false;
|
nixpkgs.overlays = lib.mkDefault [(self: super: {})];
|
||||||
environment.defaultPackages = [];
|
|
||||||
nixpkgs.overlays = [(self: super: {})];
|
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||||
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
||||||
|
# still possible to use this option, but it's recommended to use it in conjunction
|
||||||
|
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
||||||
|
networking.useDHCP = lib.mkDefault true;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue