summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--machines/bosco/configuration.nix87
-rw-r--r--machines/bosco/hardware-configuration.nix24
2 files changed, 72 insertions, 39 deletions
diff --git a/machines/bosco/configuration.nix b/machines/bosco/configuration.nix
index b6e4bb6..ce3a0ff 100644
--- a/machines/bosco/configuration.nix
+++ b/machines/bosco/configuration.nix
@@ -1,8 +1,8 @@
# Edit this configuration file to define what should be installed on
-# your system. Help is available in the configuration.nix(5) man page
-# and in the NixOS manual (accessible by running `nixos-help`).
+# your system. Help is available in the configuration.nix(5) man page, on
+# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
-{ config, pkgs, ... }:
+{ config, lib, pkgs, ... }:
{
imports =
@@ -10,47 +10,70 @@
./hardware-configuration.nix
];
- # Use the systemd-boot EFI boot loader.
- boot.loader.systemd-boot.enable = true;
- boot.loader.efi.canTouchEfiVariables = true;
+ # Use the GRUB 2 boot loader.
+ boot.loader.grub.enable = true;
+ # boot.loader.grub.efiSupport = true;
+ # boot.loader.grub.efiInstallAsRemovable = true;
+ # boot.loader.efi.efiSysMountPoint = "/boot/efi";
+ # Define on which hard drive you want to install Grub.
+ boot.loader.grub.device = "nodev";
+ boot.loader.timeout = 10;
+ boot.loader.grub.forceInstall = true;
+ boot.loader.grub.extraConfig = ''
+ serial --speed=19200 --unit=0 --word=8 --parity=no --stop=1;
+ terminal_input serial;
+ terminal_output serial
+ '';
networking.hostName = "bosco"; # Define your hostname.
# Set your time zone.
- time.timeZone = "US/Mountain";
+ # time.timeZone = "Europe/Amsterdam";
# Configure network proxy if necessary
# networking.proxy.default = "http://user:password@proxy:port/";
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
+ networking.usePredictableInterfaceNames = false;
+
# Select internationalisation properties.
# i18n.defaultLocale = "en_US.UTF-8";
# console = {
# font = "Lat2-Terminus16";
# keyMap = "us";
- # useXkbConfig = true; # use xkbOptions in tty.
+ # useXkbConfig = true; # use xkb.options in tty.
# };
# Enable the X11 windowing system.
- services.xserver.enable = true;
+ # services.xserver.enable = true;
+
+ # Configure keymap in X11
+ # services.xserver.xkb.layout = "us";
+ # services.xserver.xkb.options = "eurosign:e,caps:escape";
- # Enable the Plasma 5 Desktop Environment.
- services.xserver.displayManager.sddm.enable = true;
- services.xserver.desktopManager.plasma5.enable = true;
-
- # Enable CUPS to print documents.
- # services.printing.enable = true;
+ # List packages installed in system profile. To search, run:
+ # $ nix search wget
+ environment.systemPackages = with pkgs; [
+ # ineutils
+ sysstat
+ ];
# Some programs need SUID wrappers, can be configured further or are
# started in user sessions.
programs.mtr.enable = true;
- programs.gnupg.agent = {
- enable = true;
- enableSSHSupport = true;
- };
+ # programs.gnupg.agent = {
+ # enable = true;
+ # enableSSHSupport = true;
+ # };
+
+ # List services that you want to enable:
# Enable the OpenSSH daemon.
- services.openssh.enable = true;
+ services.openssh = {
+ enable = true;
+ settings.PermitRootLogin = "yes";
+ ports = [ 22 2200];
+ };
# Open ports in the firewall.
# networking.firewall.allowedTCPPorts = [ ... ];
@@ -63,13 +86,23 @@
# accidentally delete configuration.nix.
# system.copySystemConfiguration = true;
- # 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 = "23.05"; # Did you read the comment?
+ # This option defines the first version of NixOS you have installed on this particular machine,
+ # and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions.
+ #
+ # Most users should NEVER change this value after the initial install, for any reason,
+ # even if you've upgraded your system to a new NixOS release.
+ #
+ # This value does NOT affect the Nixpkgs version your packages and OS are pulled from,
+ # so changing it will NOT upgrade your system.
+ #
+ # This value being lower than the current NixOS release does NOT mean your system is
+ # out of date, out of support, or vulnerable.
+ #
+ # Do NOT change this value unless you have manually inspected all the changes it would make to your configuration,
+ # and migrated your data accordingly.
+ #
+ # For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion .
+ system.stateVersion = "23.11"; # Did you read the comment?
}
diff --git a/machines/bosco/hardware-configuration.nix b/machines/bosco/hardware-configuration.nix
index f768a3f..34dd9bf 100644
--- a/machines/bosco/hardware-configuration.nix
+++ b/machines/bosco/hardware-configuration.nix
@@ -5,31 +5,31 @@
{
imports =
- [ (modulesPath + "/installer/scan/not-detected.nix")
+ [ (modulesPath + "/profiles/qemu-guest.nix")
];
- boot.initrd.availableKernelModules = [ "ehci_pci" "megaraid_sas" "usb_storage" "usbhid" "sd_mod" ];
+ boot.initrd.availableKernelModules = [ "virtio_pci" "virtio_scsi" "ahci" "sd_mod" ];
boot.initrd.kernelModules = [ ];
- boot.kernelModules = [ "kvm-intel" ];
+ boot.kernelModules = [ ];
boot.extraModulePackages = [ ];
fileSystems."/" =
- { device = "/dev/disk/by-uuid/9fb0c7c8-8ee8-48ca-bd3a-3246838d3780";
- fsType = "btrfs";
+ { device = "/dev/sda";
+ fsType = "ext4";
};
- swapDevices = [ ];
+ swapDevices =
+ [ { device = "/dev/sdb"; }
+ ];
# 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.eno1.useDHCP = lib.mkDefault true;
- # networking.interfaces.eno2.useDHCP = lib.mkDefault true;
- # networking.interfaces.eno3.useDHCP = lib.mkDefault true;
- # networking.interfaces.eno4.useDHCP = lib.mkDefault true;
+ # networking.useDHCP = lib.mkDefault true;
+ networking.interfaces.enp0s5.useDHCP = lib.mkDefault true;
+ # required for ssh?
+ networking.interfaces.eth0.useDHCP = true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
- hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}