Re-add Laptop

This commit is contained in:
Johannes Jöns 2023-07-10 10:17:10 +02:00
parent 0cbb356770
commit 181b4a6b62
3 changed files with 212 additions and 56 deletions

163
flake.nix
View file

@ -38,66 +38,117 @@
nixos-hardware,
...
}: {
nixosConfigurations.kami = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = inputs;
modules = [
./systems/kami
./modules/audio
./modules/bluetooth
./modules/local
./modules/nix
./modules/plasma
./modules/printing
#./modules/ssh
./modules/steam
./modules/users/jopejoe1
nixos-hardware.nixosModules.common-cpu-intel
nixos-hardware.nixosModules.common-gpu-intel
nixos-hardware.nixosModules.common-gpu-nvidia
nixos-hardware.nixosModules.common-pc
nixos-hardware.nixosModules.common-hidpi
nixos-hardware.nixosModules.common-pc-ssd
nur.nixosModules.nur
home-manager.nixosModules.home-manager
{
nixpkgs = {
config.allowUnfree = true;
overlays = [
prismlauncher.overlays.default
nur.overlay
(self: super: {
tela-icon-theme = super.tela-icon-theme.overrideAttrs (old: {
src = inputs.tela-icon-theme;
});
prismlauncher = super.prismlauncher.overrideAttrs (old: {
patches = (old.patches or []) ++ [
inputs.prism-game-options-patch
inputs.prism-ftb-patch
];
});
discord = super.discord.overrideAttrs (old: {
desktopItem = old.desktopItem.override (old: { exec = old.exec + " --disable-gpu-sandbox"; });
});
})
];
};
home-manager = {
nixosConfigurations = {
kami = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = inputs;
modules = [
./systems/kami
./modules/audio
./modules/bluetooth
./modules/local
./modules/nix
./modules/plasma
./modules/printing
#./modules/ssh
./modules/steam
./modules/users/jopejoe1
nixos-hardware.nixosModules.common-cpu-intel
nixos-hardware.nixosModules.common-gpu-intel
nixos-hardware.nixosModules.common-gpu-nvidia
nixos-hardware.nixosModules.common-pc
nixos-hardware.nixosModules.common-hidpi
nixos-hardware.nixosModules.common-pc-ssd
nur.nixosModules.nur
home-manager.nixosModules.home-manager
{
nixpkgs = {
config.allowUnfree = true;
overlays = [
prismlauncher.overlays.default
nur.overlay
(self: super: {
tela-icon-theme = super.tela-icon-theme.overrideAttrs (old: {
src = inputs.tela-icon-theme;
});
prismlauncher = super.prismlauncher.overrideAttrs (old: {
patches = (old.patches or []) ++ [
inputs.prism-game-options-patch
inputs.prism-ftb-patch
];
});
discord = super.discord.overrideAttrs (old: {
desktopItem = old.desktopItem.override (old: { exec = old.exec + " --disable-gpu-sandbox"; });
});
})
];
};
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
};
};
system.stateVersion = "23.05";
system.stateVersion = "23.05";
nix.registry = {
home-manager.flake = home-manager;
nixos-hardware.flake = nixos-hardware;
nur.flake = nur;
nixpkgs.flake = nixpkgs;
};
nix.nixPath = [ "nixpkgs=/etc/channels/nixpkgs" "nixos-config=/etc/nixos/configuration.nix" "/nix/var/nix/profiles/per-user/root/channels" ];
}
];
nix.registry = {
home-manager.flake = home-manager;
nixos-hardware.flake = nixos-hardware;
nur.flake = nur;
nixpkgs.flake = nixpkgs;
};
nix.nixPath = [ "nixpkgs=/etc/channels/nixpkgs" "nixos-config=/etc/nixos/configuration.nix" "/nix/var/nix/profiles/per-user/root/channels" ];
}
];
};
yokai = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = inputs;
modules = [
./systems/yokai
./modules/audio
./modules/bluetooth
./modules/local
./modules/nix
./modules/plasma
./modules/printing
#./modules/ssh
./modules/users/jopejoe1
nixos-hardware.nixosModules.pine64-pinebook-pro
nur.nixosModules.nur
home-manager.nixosModules.home-manager
{
nixpkgs = {
config.allowUnfree = true;
overlays = [
prismlauncher.overlays.default
nur.overlay
(self: super: {
tela-icon-theme = super.tela-icon-theme.overrideAttrs (old: {
src = inputs.tela-icon-theme;
});
discord = super.discord.overrideAttrs (old: {
desktopItem = old.desktopItem.override (old: { exec = old.exec + " --disable-gpu-sandbox"; });
});
})
];
};
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
};
system.stateVersion = "23.05";
nix.registry = {
home-manager.flake = home-manager;
nixos-hardware.flake = nixos-hardware;
nur.flake = nur;
nixpkgs.flake = nixpkgs;
};
nix.nixPath = [ "nixpkgs=/etc/channels/nixpkgs" "nixos-config=/etc/nixos/configuration.nix" "/nix/var/nix/profiles/per-user/root/channels" ];
}
];
};
};
};
}

65
systems/yokai/default.nix Normal file
View file

@ -0,0 +1,65 @@
{ config, pkgs, ... }:
{
imports =
[ # Include the results of the hardware scan.
./hardware.nix
];
networking.hostName = "yokai";
boot.supportedFilesystems = [ "ntfs" "btrfs" "zfs" ];
boot.kernelPackages = config.boot.zfs.package.latestCompatibleLinuxPackages;
hardware-opengl.enable = true;
networking.networkmanager.enable = true;
time.timeZone = "Europe/Berlin";
environment.systemPackages = with pkgs; [
git
# Theming
catppuccin-kvantum
catppuccin-kde
catppuccin-gtk
tela-icon-theme
# Fonts
google-fonts
noto-fonts
noto-fonts-emoji
noto-fonts-cjk-sans
noto-fonts-cjk-serif
noto-fonts-emoji-blob-bin
nerdfonts
league-of-moveable-type
twitter-color-emoji
];
services.flatpak.enable = true;
programs = {
droidcam.enable = true;
dconf.enable = true;
xwayland.enable = true;
kdeconnect.enable = true;
};
console = {
enable = true;
keyMap = "us";
};
services.xserver = {
layout = "us";
};
boot.loader = {
grub.enable = false;
genric-extlinux-compatible.enable = true;
systemd-boot.configurationLimit = 10;
systemd-boot.editor = false;
};
}

View file

@ -0,0 +1,40 @@
# 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 = [ "usbhid" ];
boot.extraModulePackages = [ ];
fileSystems."/" =
{ device = "/dev/disk/by-label/NIXROOT";
fsType = "ext4";
};
fileSystems."/boot" =
{ device = "/dev/disk/by-label/NIXBOOT";
fsType = "vfat";
};
swapDevices = [ {
device = "/var/lib/swapfile";
size = (4*1024)+(2*1024);
} ];
# 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.enp6s0.useDHCP = lib.mkDefault true;
# networking.interfaces.wlo1.useDHCP = lib.mkDefault true;
#nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
hardware.enableRedistrubutableFirmware = true;
}