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 = [
|
||||
{networking.hostName = 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,
|
||||
...
|
||||
}: {
|
||||
# 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 = {
|
||||
|
@ -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 = [
|
||||
# steam and other stuff seems to depend on perl
|
||||
|
@ -78,6 +58,7 @@
|
|||
|
||||
../../modules/pkg_mgrmnt
|
||||
|
||||
../../system_profiles/defaults.nix
|
||||
# ../../tests
|
||||
];
|
||||
}
|
||||
|
|
|
@ -4,38 +4,13 @@
|
|||
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 = [
|
||||
./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,
|
||||
...
|
||||
}: {
|
||||
#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 = {
|
||||
# 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 = [
|
||||
./hardware-configuration.nix
|
||||
|
||||
../../modules/locale.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>
|
||||
../../system_profiles/defaults.nix
|
||||
../../system_profiles/mini-container.nix
|
||||
];
|
||||
}
|
||||
|
|
16
outputs.nix
16
outputs.nix
|
@ -1,27 +1,27 @@
|
|||
inArgs: let
|
||||
lib = inArgs.nixpkgs.lib;
|
||||
hostHelper = import ./hostHelper.nix inArgs;
|
||||
|
||||
# Supported systems for your flake packages, shell, etc.
|
||||
systems = [
|
||||
#"aarch64-linux"
|
||||
"x86_64-linux"
|
||||
];
|
||||
|
||||
# This is a function that generates an attribute by calling a function you
|
||||
# pass to it, with each system as an argument
|
||||
forAllSystems = inArgs.nixpkgs.lib.genAttrs systems;
|
||||
|
||||
lib = inArgs.nixpkgs.lib;
|
||||
|
||||
hostHelper = import ./hostHelper.nix inArgs;
|
||||
|
||||
in {
|
||||
# NixOS configuration entrypoint
|
||||
# Available through 'nixos-rebuild --flake .#your-hostname'
|
||||
# to add more append // (host_helper example);
|
||||
nixosConfigurations = builtins.mapAttrs (hostName: hostOptions: (hostHelper hostName hostOptions)) {
|
||||
crocoite = {};
|
||||
game-luanti = {unstable = true;};
|
||||
crocoite = {stateVersion = "24.05";};
|
||||
|
||||
jitsi = {stateVersion = "24.11";};
|
||||
game-luanti = {stateVersion = "25.05"; unstable = true;};
|
||||
};
|
||||
|
||||
|
||||
# Your custom packages
|
||||
# Accessible through 'nix build', 'nix shell', etc
|
||||
#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 = [
|
||||
./mini.nix
|
||||
|
||||
{
|
||||
boot.isContainer = true;
|
||||
boot.kernel.enable = false;
|
||||
boot.isContainer = lib.mkDefault true;
|
||||
boot.kernel.enable = lib.mkDefault false;
|
||||
}
|
||||
];
|
||||
}
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
{
|
||||
lib,
|
||||
modulesPath,
|
||||
...
|
||||
}: {
|
||||
|
@ -7,10 +8,14 @@
|
|||
(modulesPath + "/profiles/perlless.nix")
|
||||
|
||||
{
|
||||
boot.isContainer = true;
|
||||
boot.kernel.enable = false;
|
||||
environment.defaultPackages = [];
|
||||
nixpkgs.overlays = [(self: super: {})];
|
||||
environment.defaultPackages = lib.mkDefault [];
|
||||
nixpkgs.overlays = lib.mkDefault [(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