OS, add Non-EFI Support
This commit is contained in:
parent
5605c829b6
commit
0f7638ad40
1 changed files with 53 additions and 45 deletions
|
|
@ -4,60 +4,68 @@
|
||||||
options = {
|
options = {
|
||||||
system.timezone = lib.mkOption { default = "America/Los_Angeles"; };
|
system.timezone = lib.mkOption { default = "America/Los_Angeles"; };
|
||||||
system.extraFonts = lib.mkOption { default = []; };
|
system.extraFonts = lib.mkOption { default = []; };
|
||||||
|
system.isNonEFI = lib.mkEnableOption
|
||||||
|
"Enable if you are running a non-EFI system";
|
||||||
system.users.bigWheels = lib.mkOption { default = []; };
|
system.users.bigWheels = lib.mkOption { default = []; };
|
||||||
};
|
};
|
||||||
|
|
||||||
config = {
|
config = lib.mkMerge [
|
||||||
# Use the systemd-boot EFI boot loader.
|
(lib.mkIf config.system.isNonEFI {
|
||||||
boot.kernelPackages = pkgs.linuxPackages_latest;
|
boot.loader.grub.enable = false;
|
||||||
boot.loader.systemd-boot.enable = true;
|
boot.loader.generic-extlinux-compatible.enable = true;
|
||||||
boot.loader.timeout = 1;
|
})
|
||||||
boot.loader.efi.canTouchEfiVariables = true;
|
(lib.mkIf (!config.system.isNonEFI) {
|
||||||
|
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||||
|
boot.loader.systemd-boot.enable = true;
|
||||||
|
boot.loader.timeout = 1;
|
||||||
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
})
|
||||||
|
{
|
||||||
|
networking.hostName = hostname;
|
||||||
|
system.stateVersion = "23.05";
|
||||||
|
|
||||||
networking.hostName = hostname;
|
time.timeZone = config.system.timezone;
|
||||||
system.stateVersion = "23.05";
|
i18n.defaultLocale = "en_US.UTF-8";
|
||||||
|
|
||||||
time.timeZone = config.system.timezone;
|
# Packages & Default Packages
|
||||||
i18n.defaultLocale = "en_US.UTF-8";
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
git
|
||||||
|
neovim
|
||||||
|
nnn
|
||||||
|
xdg-user-dirs
|
||||||
|
];
|
||||||
|
|
||||||
# Packages & Default Packages
|
# XDG Compliance
|
||||||
nixpkgs.config.allowUnfree = true;
|
nix.settings.use-xdg-base-directories = true;
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
git
|
|
||||||
neovim
|
|
||||||
nnn
|
|
||||||
xdg-user-dirs
|
|
||||||
];
|
|
||||||
|
|
||||||
# XDG Compliance
|
users = {
|
||||||
nix.settings.use-xdg-base-directories = true;
|
users = builtins.listToAttrs (map (
|
||||||
|
user: {
|
||||||
users = {
|
|
||||||
users = builtins.listToAttrs (map (
|
|
||||||
user: {
|
|
||||||
name = user;
|
|
||||||
value = {
|
|
||||||
name = user;
|
name = user;
|
||||||
isNormalUser = true;
|
value = {
|
||||||
extraGroups = [ "network" ];
|
name = user;
|
||||||
|
isNormalUser = true;
|
||||||
|
extraGroups = [ "network" ];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
) usernameList);
|
||||||
|
groups = {
|
||||||
|
wheel = {
|
||||||
|
members = config.system.users.bigWheels;
|
||||||
};
|
};
|
||||||
}
|
network = { };
|
||||||
) usernameList);
|
|
||||||
groups = {
|
|
||||||
wheel = {
|
|
||||||
members = config.system.users.bigWheels;
|
|
||||||
};
|
};
|
||||||
network = { };
|
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
fonts = {
|
fonts = {
|
||||||
enableDefaultPackages = true;
|
enableDefaultPackages = true;
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
cascadia-code
|
cascadia-code
|
||||||
(nerdfonts.override { fonts = [ "CascadiaCode" ]; })
|
(nerdfonts.override { fonts = [ "CascadiaCode" ]; })
|
||||||
source-han-sans # Pan-CJK font
|
source-han-sans # Pan-CJK font
|
||||||
] ++ config.system.extraFonts;
|
] ++ config.system.extraFonts;
|
||||||
};
|
};
|
||||||
};
|
}
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue