Add pearl host

This commit is contained in:
Daniel Lundin 2024-09-03 17:13:48 +02:00
parent 318c9c9cc3
commit d8cd9df7d3
Signed by: dln
SSH key fingerprint: SHA256:Vhqxf7VIXwfS0r2j6bJiJ5A+hjhzMODtihuHIybqf3s
6 changed files with 173 additions and 96 deletions

1
.gitignore vendored Normal file
View file

@ -0,0 +1 @@
/result

View file

@ -1,41 +1,6 @@
{
"nodes": {
"colmena": {
"inputs": {
"flake-compat": "flake-compat",
"flake-utils": "flake-utils",
"nixpkgs": "nixpkgs",
"stable": "stable"
},
"locked": {
"lastModified": 1711386353,
"narHash": "sha256-gWEpb8Hybnoqb4O4tmpohGZk6+aerAbJpywKcFIiMlg=",
"path": "/nix/store/in94zdj4ls6p21r3q4zzvmbd61g9ap3b-source",
"rev": "cd65ef7a25cdc75052fbd04b120aeb066c3881db",
"type": "path"
},
"original": {
"id": "colmena",
"type": "indirect"
}
},
"flake-compat": {
"flake": false,
"locked": {
"lastModified": 1650374568,
"narHash": "sha256-Z+s0J8/r907g149rllvwhb4pKi8Wam5ij0st8PwAh+E=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "b4a34015c698c7793d592d66adbab377907a2be8",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-compat_2": {
"flake": false,
"locked": {
"lastModified": 1696426674,
@ -52,21 +17,6 @@
}
},
"flake-utils": {
"locked": {
"lastModified": 1659877975,
"narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_2": {
"inputs": {
"systems": "systems"
},
@ -84,7 +34,7 @@
"type": "github"
}
},
"flake-utils_3": {
"flake-utils_2": {
"inputs": {
"systems": "systems_2"
},
@ -102,7 +52,7 @@
"type": "github"
}
},
"flake-utils_4": {
"flake-utils_3": {
"inputs": {
"systems": "systems_3"
},
@ -132,11 +82,11 @@
"zls": "zls"
},
"locked": {
"lastModified": 1725298527,
"narHash": "sha256-WAttmsNzqkw4tm0Po/ZzeFtp83BvJAnYIbGyBIdGnMU=",
"lastModified": 1725337181,
"narHash": "sha256-qahlxe7TBQBdpCVahSauLPx/Wp1+HDpFClArt2HNQaI=",
"ref": "refs/heads/main",
"rev": "2f32efbc82c938c3502ce20d2479ea867cc3ed0a",
"revCount": 7161,
"rev": "d885c814234060679dcd5bd0d9259be39b938be9",
"revCount": 7176,
"type": "git",
"url": "ssh://git@github.com/ghostty-org/ghostty"
},
@ -215,22 +165,6 @@
}
},
"nixpkgs": {
"locked": {
"lastModified": 1696019113,
"narHash": "sha256-X3+DKYWJm93DRSdC5M6K5hLqzSya9BjibtBsuARoPco=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "f5892ddac112a1e9b3612c39af1b72987ee5783a",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_2": {
"locked": {
"lastModified": 1725103162,
"narHash": "sha256-Ym04C5+qovuQDYL/rKWSR+WESseQBbNAe5DsXNx5trY=",
@ -248,27 +182,10 @@
},
"root": {
"inputs": {
"colmena": "colmena",
"ghostty": "ghostty",
"ghostty-hm": "ghostty-hm",
"home-manager": "home-manager",
"nixpkgs": "nixpkgs_2"
}
},
"stable": {
"locked": {
"lastModified": 1696039360,
"narHash": "sha256-g7nIUV4uq1TOVeVIDEZLb005suTWCUjSY0zYOlSBsyE=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "32dcb45f66c0487e92db8303a798ebc548cadedc",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "nixos-23.05",
"repo": "nixpkgs",
"type": "github"
"nixpkgs": "nixpkgs"
}
},
"systems": {
@ -321,7 +238,7 @@
"flake-compat": [
"ghostty"
],
"flake-utils": "flake-utils_2",
"flake-utils": "flake-utils",
"nixpkgs": [
"ghostty",
"nixpkgs-stable"
@ -343,8 +260,8 @@
},
"zig-overlay": {
"inputs": {
"flake-compat": "flake-compat_2",
"flake-utils": "flake-utils_4",
"flake-compat": "flake-compat",
"flake-utils": "flake-utils_3",
"nixpkgs": [
"ghostty",
"zls",
@ -367,7 +284,7 @@
},
"zls": {
"inputs": {
"flake-utils": "flake-utils_3",
"flake-utils": "flake-utils_2",
"gitignore": "gitignore",
"langref": "langref",
"nixpkgs": [

View file

@ -21,7 +21,6 @@
{
self,
nixpkgs,
colmena,
ghostty,
ghostty-hm,
home-manager,
@ -82,19 +81,21 @@
devShells = forEachSystem' (
{ system, pkgs, ... }:
{
default = pkgs.mkShell { packages = [ pkgs.colmena ]; };
default = pkgs.mkShell { packages = [ ]; };
}
);
homeConfigurations = {
"dln@dinky" = mkHome [ ./home/dln/dinky.nix ];
"dln@nemo" = mkHome [ ./home/dln/nemo.nix ];
"dln@pearl" = mkHome [ ./home/dln/pearl.nix ];
"lsjostro@nemo" = mkHome [ ./home/lsjostro/nemo.nix ];
};
nixosConfigurations = {
dinky = mkHost [ ./hosts/dinky ];
nemo = mkHost [ ./hosts/nemo ];
pearl = mkHost [ ./hosts/pearl ];
};
};
}

9
home/dln/pearl.nix Normal file
View file

@ -0,0 +1,9 @@
{ pkgs, ... }:
{
imports = [
./home.nix
];
home.packages = with pkgs; [
];
}

111
hosts/pearl/default.nix Normal file
View file

@ -0,0 +1,111 @@
{
inputs,
outputs,
lib,
config,
pkgs,
modulesPath,
...
}:
{
imports = [ ./hardware-configuration.nix ];
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
hardware.graphics = {
enable = true;
extraPackages = with pkgs; [
vpl-gpu-rt
intel-media-driver
vaapiVdpau
libvdpau-va-gl
];
};
hardware.enableAllFirmware = true;
#environment.systemPackages = with pkgs; [
#];
services.printing.enable = true;
services.printing.drivers = [ pkgs.brlaser ];
programs.adb.enable = true;
networking = {
hostName = "pearl";
domain = "aarn.patagia.dev";
search = [
"patagia.dev"
"aarn.patagia.dev"
];
useDHCP = lib.mkDefault true;
};
networking.networkmanager.enable = true;
networking.networkmanager.wifi.backend = "iwd";
time.timeZone = "Europe/Stockholm";
users.users.dln = {
isNormalUser = true;
description = "Daniel Lundin";
extraGroups = [
"lp"
"wheel"
];
openssh.authorizedKeys.keys = [
"sk-ssh-ed25519@openssh.com AAAAGnNrLXNzaC1lZDI1NTE5QG9wZW5zc2guY29tAAAAILwakA+EeuR23vRhjvjMkzK+FtWIhpnbs7z1pfnBehCUAAAABHNzaDo= dln@dinky"
"sk-ssh-ed25519@openssh.com AAAAGnNrLXNzaC1lZDI1NTE5QG9wZW5zc2guY29tAAAAIJNOBFoU7Cdsgi4KpYRcv7EhR/8kD4DYjEZnwk6urRx7AAAABHNzaDo= dln@nemo"
];
};
patagia = {
desktop.enable = true;
laptop.enable = true;
plymouth.enable = true;
podman.enable = false;
};
systemd.services."getty@tty1".enable = false;
systemd.services."autovt@tty1".enable = false;
# Enable the X11 windowing system.
services.xserver.enable = true;
# Enable the GNOME Desktop Environment.
services.xserver.displayManager.gdm.enable = true;
services.xserver.desktopManager.gnome.enable = true;
# Configure keymap in X11
services.xserver.xkb = {
layout = "se";
variant = "us";
};
# Configure console keymap
console.keyMap = "sv-latin1";
# Enable sound with pipewire.
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
# If you want to use JACK applications, uncomment this
#jack.enable = true;
# use the example session manager (no others are packaged yet so this is enabled by default,
# no need to redefine it in your config for now)
#media-session.enable = true;
};
nixpkgs.config.allowUnfree = true;
services.openssh.enable = true;
system.stateVersion = "24.05"; # Did you read the comment?
}

View file

@ -0,0 +1,38 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-uuid/5ab8f3b9-4f74-4bc3-ac8e-3392a6120240";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/4C5D-8244";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
};
swapDevices = [ ];
# 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.wlp0s20f3.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}