add yoga
This commit is contained in:
parent
35f117b32c
commit
65d31a4721
3 changed files with 152 additions and 0 deletions
29
flake.nix
29
flake.nix
|
@ -21,6 +21,34 @@
|
||||||
modules = [ (./. + "/nixos/boxes/${hostname}") ];
|
modules = [ (./. + "/nixos/boxes/${hostname}") ];
|
||||||
specialArgs = { inherit inputs; };
|
specialArgs = { inherit inputs; };
|
||||||
};
|
};
|
||||||
|
mkKiosk = pkgs: system: hostname:
|
||||||
|
pkgs.lib.nixosSystem {
|
||||||
|
inherit system;
|
||||||
|
modules = [
|
||||||
|
(./. + "/nixos/boxes/${hostname}")
|
||||||
|
|
||||||
|
sops.nixosModules.sops
|
||||||
|
|
||||||
|
home-manager.nixosModules.home-manager
|
||||||
|
{
|
||||||
|
home-manager.useGlobalPkgs = true;
|
||||||
|
home-manager.useUserPackages = true;
|
||||||
|
home-manager.users.cyryl = {
|
||||||
|
imports =
|
||||||
|
[ ./nixos/home-manager ./nixos/home-manager/linux.nix ];
|
||||||
|
_module.args.inputs = inputs;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
];
|
||||||
|
specialArgs = {
|
||||||
|
inherit inputs system;
|
||||||
|
nixpkgs-nixos-unstable-and-unfree = import nixpkgs-nixos-unstable {
|
||||||
|
inherit system;
|
||||||
|
config = { allowUnfree = true; };
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
mkWorkstation = pkgs: system: hostname:
|
mkWorkstation = pkgs: system: hostname:
|
||||||
pkgs.lib.nixosSystem {
|
pkgs.lib.nixosSystem {
|
||||||
inherit system;
|
inherit system;
|
||||||
|
@ -120,6 +148,7 @@
|
||||||
bolty = mkServer nixpkgs-stable "x86_64-linux" "bolty";
|
bolty = mkServer nixpkgs-stable "x86_64-linux" "bolty";
|
||||||
vultr1 = mkServer nixpkgs-stable "x86_64-linux" "vultr1";
|
vultr1 = mkServer nixpkgs-stable "x86_64-linux" "vultr1";
|
||||||
vpsfree1 = mkServer nixpkgs-stable "x86_64-linux" "vpsfree1";
|
vpsfree1 = mkServer nixpkgs-stable "x86_64-linux" "vpsfree1";
|
||||||
|
yoga = mkKiosk nixpkgs-stable "x86_64-linux" "yoga";
|
||||||
homescreen = mkRaspi nixpkgs-stable "homescreen";
|
homescreen = mkRaspi nixpkgs-stable "homescreen";
|
||||||
|
|
||||||
bootstrap = nixpkgs-stable.lib.nixosSystem rec {
|
bootstrap = nixpkgs-stable.lib.nixosSystem rec {
|
||||||
|
|
79
nixos/boxes/yoga/default.nix
Normal file
79
nixos/boxes/yoga/default.nix
Normal file
|
@ -0,0 +1,79 @@
|
||||||
|
{ config, pkgs, inputs, lib, nixpkgs-nixos-unstable-and-unfree, ... }: {
|
||||||
|
networking.hostName = "yoga";
|
||||||
|
|
||||||
|
imports = [ ./hardware-configuration.nix ../../boot.nix ../../git ];
|
||||||
|
|
||||||
|
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||||
|
|
||||||
|
hardware.trackpoint.enable = true;
|
||||||
|
services.hardware.bolt.enable = true;
|
||||||
|
|
||||||
|
services.fprintd = { enable = true; };
|
||||||
|
|
||||||
|
home-manager.users.cyryl = { ... }: {
|
||||||
|
home.packages = with pkgs; [ firefox vim gnome3.gedit git ];
|
||||||
|
};
|
||||||
|
|
||||||
|
networking.networkmanager.enable = true;
|
||||||
|
|
||||||
|
time.timeZone = "Europe/London";
|
||||||
|
|
||||||
|
i18n.defaultLocale = "en_GB.utf8";
|
||||||
|
|
||||||
|
services.xserver.enable = true;
|
||||||
|
|
||||||
|
services.xserver.displayManager.gdm.enable = true;
|
||||||
|
services.xserver.desktopManager.gnome.enable = true;
|
||||||
|
|
||||||
|
services.xserver = {
|
||||||
|
layout = "pl";
|
||||||
|
xkbVariant = "";
|
||||||
|
};
|
||||||
|
|
||||||
|
console.keyMap = "pl2";
|
||||||
|
|
||||||
|
services.printing.enable = true;
|
||||||
|
|
||||||
|
sound.enable = true;
|
||||||
|
hardware.pulseaudio.enable = false;
|
||||||
|
security.rtkit.enable = true;
|
||||||
|
services.pipewire = {
|
||||||
|
enable = true;
|
||||||
|
alsa.enable = true;
|
||||||
|
alsa.support32Bit = true;
|
||||||
|
pulse.enable = true;
|
||||||
|
};
|
||||||
|
services.xserver.libinput.enable = true;
|
||||||
|
|
||||||
|
users.users.cyryl = {
|
||||||
|
isNormalUser = true;
|
||||||
|
description = "cyryl";
|
||||||
|
extraGroups = [ "networkmanager" "wheel" ];
|
||||||
|
packages = with pkgs;
|
||||||
|
[
|
||||||
|
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
services.fwupd.enable = true;
|
||||||
|
|
||||||
|
services.xserver.displayManager.autoLogin.enable = true;
|
||||||
|
services.xserver.displayManager.autoLogin.user = "cyryl";
|
||||||
|
|
||||||
|
# Workaround for GNOME autologin: https://github.com/NixOS/nixpkgs/issues/103746#issuecomment-945091229
|
||||||
|
systemd.services."getty@tty1".enable = false;
|
||||||
|
systemd.services."autovt@tty1".enable = false;
|
||||||
|
|
||||||
|
nix = {
|
||||||
|
autoOptimiseStore = true;
|
||||||
|
gc.automatic = true;
|
||||||
|
optimise.automatic = true;
|
||||||
|
package = pkgs.nixUnstable;
|
||||||
|
extraOptions = ''
|
||||||
|
experimental-features = nix-command flakes
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
system = { stateVersion = "22.05"; };
|
||||||
|
|
||||||
|
}
|
44
nixos/boxes/yoga/hardware-configuration.nix
Normal file
44
nixos/boxes/yoga/hardware-configuration.nix
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
{ config, lib, pkgs, modulesPath, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [ ];
|
||||||
|
|
||||||
|
boot.initrd.availableKernelModules =
|
||||||
|
[ "xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ "kvm-intel" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
boot.loader.systemd-boot.enable = true;
|
||||||
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
boot.loader.efi.efiSysMountPoint = "/boot/efi";
|
||||||
|
|
||||||
|
boot.initrd.secrets = { "/crypto_keyfile.bin" = null; };
|
||||||
|
|
||||||
|
boot.initrd.luks.devices."luks-e6cb9de6-a571-4462-ba9e-6f8dafdd3d21".device =
|
||||||
|
"/dev/disk/by-uuid/e6cb9de6-a571-4462-ba9e-6f8dafdd3d21";
|
||||||
|
boot.initrd.luks.devices."luks-e6cb9de6-a571-4462-ba9e-6f8dafdd3d21".keyFile =
|
||||||
|
"/crypto_keyfile.bin";
|
||||||
|
|
||||||
|
fileSystems."/" = {
|
||||||
|
device = "/dev/disk/by-uuid/d19afedb-d03b-4a85-9ad7-d99d2ed057c5";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
boot.initrd.luks.devices."luks-10f9ad25-cff6-4a5c-ae92-4847e1374b2d".device =
|
||||||
|
"/dev/disk/by-uuid/10f9ad25-cff6-4a5c-ae92-4847e1374b2d";
|
||||||
|
|
||||||
|
fileSystems."/boot/efi" = {
|
||||||
|
device = "/dev/disk/by-uuid/5A4D-EDA3";
|
||||||
|
fsType = "vfat";
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices =
|
||||||
|
[{ device = "/dev/disk/by-uuid/5c9ab30b-9128-4c31-b392-785e7acbc0d2"; }];
|
||||||
|
|
||||||
|
networking.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
|
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
|
||||||
|
hardware.cpu.intel.updateMicrocode =
|
||||||
|
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
}
|
Loading…
Reference in a new issue