Initial commit
This commit is contained in:
commit
179f22fe42
72
flake.lock
Normal file
72
flake.lock
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
{
|
||||||
|
"nodes": {
|
||||||
|
"home-manager": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1724435763,
|
||||||
|
"narHash": "sha256-UNky3lJNGQtUEXT2OY8gMxejakSWPTfWKvpFkpFlAfM=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"rev": "c2cd2a52e02f1dfa1c88f95abeb89298d46023be",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "home-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1724224976,
|
||||||
|
"narHash": "sha256-Z/ELQhrSd7bMzTO8r7NZgi9g5emh+aRKoCdaAv5fiO0=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "c374d94f1536013ca8e92341b540eba4c22f9c62",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"plasma-manager": {
|
||||||
|
"inputs": {
|
||||||
|
"home-manager": [
|
||||||
|
"home-manager"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1724364293,
|
||||||
|
"narHash": "sha256-R/Jsd29RtrPoxr+NivHWIi+Zm63+G/1R539KtSQSycw=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "plasma-manager",
|
||||||
|
"rev": "0b7f9b5eed2d221db4b6ed4dade0b4e9f50dfd6f",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "plasma-manager",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": {
|
||||||
|
"inputs": {
|
||||||
|
"home-manager": "home-manager",
|
||||||
|
"nixpkgs": "nixpkgs",
|
||||||
|
"plasma-manager": "plasma-manager"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": "root",
|
||||||
|
"version": 7
|
||||||
|
}
|
46
flake.nix
Normal file
46
flake.nix
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
{
|
||||||
|
inputs = {
|
||||||
|
#nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.05";
|
||||||
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
|
home-manager = {
|
||||||
|
# url = "github:nix-community/home-manager/release-24.05";
|
||||||
|
url = "github:nix-community/home-manager";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
plasma-manager = {
|
||||||
|
url = "github:nix-community/plasma-manager";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
inputs.home-manager.follows = "home-manager";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
outputs = inputs@{ self, nixpkgs, home-manager, plasma-manager, ... }: {
|
||||||
|
nixosConfigurations.jry-thinkpad = nixpkgs.lib.nixosSystem {
|
||||||
|
system = "x86_64-linux";
|
||||||
|
modules = [
|
||||||
|
home-manager.nixosModules.home-manager
|
||||||
|
{
|
||||||
|
home-manager = {
|
||||||
|
useGlobalPkgs = true;
|
||||||
|
useUserPackages = true;
|
||||||
|
sharedModules = [
|
||||||
|
plasma-manager.homeManagerModules.plasma-manager
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
( { config, ... }:
|
||||||
|
let hostname = "jry-thinkpad";
|
||||||
|
in {
|
||||||
|
system.stateVersion = "24.05";
|
||||||
|
networking.hostName = hostname;
|
||||||
|
imports = [
|
||||||
|
./shared/configuration.nix
|
||||||
|
./${hostname}/configuration.nix
|
||||||
|
./${hostname}/hardware-configuration.nix
|
||||||
|
];
|
||||||
|
} )
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: tabstop=2 softtabstop=2
|
47
jry-thinkpad/configuration.nix
Normal file
47
jry-thinkpad/configuration.nix
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
../shared/variables.nix
|
||||||
|
../shared/cli_packages.nix
|
||||||
|
../shared/desktop_environment/kde_plasma/plasma.nix
|
||||||
|
../shared/desktop_environment/packages.nix
|
||||||
|
../shared/keyboard.nix
|
||||||
|
../shared/sound.nix
|
||||||
|
../shared/networkmanager.nix
|
||||||
|
../shared/printing.nix
|
||||||
|
../shared/hibernation.nix
|
||||||
|
./home_manager.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
swapDevices = [ {
|
||||||
|
device = "/swapfile";
|
||||||
|
size = 16*1024;
|
||||||
|
} ];
|
||||||
|
|
||||||
|
variables.username = "jry";
|
||||||
|
variables.homedir = "/home/${config.variables.username}/";
|
||||||
|
variables.flakedir = "${config.variables.homedir}/Nextcloud/configfiles/nix/PC/";
|
||||||
|
variables.swapsize = 16*1024;
|
||||||
|
variables.resumeOffset = 4685824; # Found using `sudo filefrag -v /swapfile | awk '{ if($1=="0:"){print $4} }'`
|
||||||
|
|
||||||
|
# Select internationalisation properties.
|
||||||
|
# i18n.defaultLocale = "en_US.UTF-8";
|
||||||
|
# console = {
|
||||||
|
# font = "Lat2-Terminus16";
|
||||||
|
# keyMap = "us";
|
||||||
|
# useXkbConfig = true; # use xkb.options in tty.
|
||||||
|
# };
|
||||||
|
|
||||||
|
users.users."${config.variables.username}" = {
|
||||||
|
uid = 1000;
|
||||||
|
isNormalUser = true;
|
||||||
|
extraGroups = [
|
||||||
|
"wheel"
|
||||||
|
"networkmanager"
|
||||||
|
];
|
||||||
|
packages = with pkgs; [];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: tabstop=2 softtabstop=2
|
42
jry-thinkpad/hardware-configuration.nix
Normal file
42
jry-thinkpad/hardware-configuration.nix
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
# 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 = [ "nvme" "ehci_pci" "xhci_pci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
|
||||||
|
boot.initrd.kernelModules = [ ];
|
||||||
|
boot.kernelModules = [ "kvm-amd" ];
|
||||||
|
boot.extraModulePackages = [ ];
|
||||||
|
|
||||||
|
fileSystems."/" =
|
||||||
|
{ device = "/dev/disk/by-uuid/ea8ecb95-f34f-4b2d-b5c8-b7a002813cb1";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
boot.initrd.luks.devices."cryptroot".device = "/dev/disk/by-uuid/ae4cbc4c-9e00-4918-85a6-c5ebacda5975";
|
||||||
|
|
||||||
|
fileSystems."/boot" =
|
||||||
|
{ device = "/dev/disk/by-uuid/CEBD-9286";
|
||||||
|
fsType = "vfat";
|
||||||
|
options = [ "fmask=0022" "dmask=0022" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
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.enp2s0f0.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.enp5s0.useDHCP = lib.mkDefault true;
|
||||||
|
# networking.interfaces.wlp3s0.useDHCP = lib.mkDefault true;
|
||||||
|
|
||||||
|
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||||
|
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||||
|
}
|
18
jry-thinkpad/home_manager.nix
Normal file
18
jry-thinkpad/home_manager.nix
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
{ home-manager, config, lib, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
home-manager.users.${config.variables.username} = { ... }: {
|
||||||
|
imports = [
|
||||||
|
../shared/home_manager/plasma_manager.nix
|
||||||
|
../shared/variables.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
variables = config.variables;
|
||||||
|
|
||||||
|
# The state version is required and should stay at the version you
|
||||||
|
# originally installed.
|
||||||
|
home.stateVersion = "24.05";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: tabstop=2 softtabstop=2
|
1
jry-thinkpad/hostname.nix
Normal file
1
jry-thinkpad/hostname.nix
Normal file
@ -0,0 +1 @@
|
|||||||
|
"jry-thinkpad"
|
1
jry-thinkpad/username.nix
Normal file
1
jry-thinkpad/username.nix
Normal file
@ -0,0 +1 @@
|
|||||||
|
"jry"
|
22
shared/cli_packages.nix
Normal file
22
shared/cli_packages.nix
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
curl
|
||||||
|
git
|
||||||
|
htop
|
||||||
|
ripgrep
|
||||||
|
trash-cli
|
||||||
|
usbutils
|
||||||
|
wget
|
||||||
|
];
|
||||||
|
|
||||||
|
programs.neovim = {
|
||||||
|
enable = true;
|
||||||
|
defaultEditor = true;
|
||||||
|
viAlias = true;
|
||||||
|
vimAlias = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: tabstop=2 softtabstop=2
|
32
shared/configuration.nix
Normal file
32
shared/configuration.nix
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
environment.etc.configuration = {
|
||||||
|
target = "nixos/flake.nix";
|
||||||
|
source = "${config.variables.flakedir}/flake.nix";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/boot" = lib.mkForce {
|
||||||
|
device = "/dev/disk/by-label/NIXBOOT";
|
||||||
|
fsType = "vfat";
|
||||||
|
};
|
||||||
|
|
||||||
|
fileSystems."/" = lib.mkForce {
|
||||||
|
device = "/dev/disk/by-label/NIXROOT";
|
||||||
|
fsType = "ext4";
|
||||||
|
};
|
||||||
|
|
||||||
|
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||||
|
|
||||||
|
# Use the systemd-boot EFI boot loader.
|
||||||
|
boot.loader.systemd-boot.enable = true;
|
||||||
|
boot.loader.efi.canTouchEfiVariables = true;
|
||||||
|
|
||||||
|
nixpkgs.config = {
|
||||||
|
allowUnfree = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
time.timeZone = "Europe/Copenhagen";
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: tabstop=2 softtabstop=2
|
@ -0,0 +1,11 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
aha
|
||||||
|
];
|
||||||
|
|
||||||
|
services.fwupd.enable = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: tabstop=2 softtabstop=2
|
17
shared/desktop_environment/kde_plasma/parts/plasma6.nix
Normal file
17
shared/desktop_environment/kde_plasma/parts/plasma6.nix
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
services.xserver.enable = true;
|
||||||
|
services.displayManager.sddm.enable = true;
|
||||||
|
services.desktopManager.plasma6.enable = true;
|
||||||
|
environment.plasma6.excludePackages = with pkgs.kdePackages; [
|
||||||
|
elisa
|
||||||
|
gwenview
|
||||||
|
kate
|
||||||
|
khelpcenter
|
||||||
|
okular
|
||||||
|
plasma-browser-integration
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: tabstop=2 softtabstop=2
|
10
shared/desktop_environment/kde_plasma/plasma.nix
Normal file
10
shared/desktop_environment/kde_plasma/plasma.nix
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
{ ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./parts/plasma6.nix
|
||||||
|
./parts/kinfocenter/dependencies.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: tabstop=2 softtabstop=2
|
11
shared/desktop_environment/packages.nix
Normal file
11
shared/desktop_environment/packages.nix
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
firefox
|
||||||
|
keepassxc
|
||||||
|
nextcloud-client
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: tabstop=2 softtabstop=2
|
17
shared/hibernation.nix
Normal file
17
shared/hibernation.nix
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
{ config, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
swapDevices = [ {
|
||||||
|
device = "/swapfile";
|
||||||
|
size = config.variables.swapsize;
|
||||||
|
} ];
|
||||||
|
|
||||||
|
boot.resumeDevice = "/dev/disk/by-label/NIXROOT";
|
||||||
|
boot.kernelParams = [ "resume_offset=${toString config.variables.resumeOffset}" ];
|
||||||
|
|
||||||
|
systemd.sleep.extraConfig = ''
|
||||||
|
HibernateDelaySec=1h
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: tabstop=2 softtabstop=2
|
119
shared/home_manager/assets/KritaDarkOrange.colors
Normal file
119
shared/home_manager/assets/KritaDarkOrange.colors
Normal file
@ -0,0 +1,119 @@
|
|||||||
|
[ColorEffects:Disabled]
|
||||||
|
Color=56,56,56
|
||||||
|
ColorAmount=0
|
||||||
|
ColorEffect=0
|
||||||
|
ContrastAmount=0.65
|
||||||
|
ContrastEffect=1
|
||||||
|
IntensityAmount=0.1
|
||||||
|
IntensityEffect=2
|
||||||
|
|
||||||
|
[ColorEffects:Inactive]
|
||||||
|
ChangeSelectionColor=false
|
||||||
|
Color=112,111,110
|
||||||
|
ColorAmount=0.025
|
||||||
|
ColorEffect=2
|
||||||
|
ContrastAmount=0.1
|
||||||
|
ContrastEffect=2
|
||||||
|
Enable=false
|
||||||
|
IntensityAmount=0
|
||||||
|
IntensityEffect=0
|
||||||
|
|
||||||
|
[Colors:Button]
|
||||||
|
BackgroundAlternate=77,77,77
|
||||||
|
BackgroundNormal=31,31,31
|
||||||
|
DecorationFocus=180,113,31
|
||||||
|
DecorationHover=180,113,31
|
||||||
|
ForegroundActive=180,113,31
|
||||||
|
ForegroundInactive=189,195,199
|
||||||
|
ForegroundLink=180,113,31
|
||||||
|
ForegroundNegative=218,68,83
|
||||||
|
ForegroundNeutral=246,116,0
|
||||||
|
ForegroundNormal=247,247,247
|
||||||
|
ForegroundPositive=255,162,0
|
||||||
|
ForegroundVisited=132,67,101
|
||||||
|
|
||||||
|
[Colors:Complementary]
|
||||||
|
BackgroundAlternate=36,36,36
|
||||||
|
BackgroundNormal=31,31,31
|
||||||
|
DecorationFocus=255,162,0
|
||||||
|
DecorationHover=255,162,0
|
||||||
|
ForegroundActive=255,162,0
|
||||||
|
ForegroundInactive=180,113,31
|
||||||
|
ForegroundLink=180,113,31
|
||||||
|
ForegroundNegative=83,62,37
|
||||||
|
ForegroundNeutral=83,62,37
|
||||||
|
ForegroundNormal=239,240,241
|
||||||
|
ForegroundPositive=255,162,0
|
||||||
|
ForegroundVisited=110,65,40
|
||||||
|
|
||||||
|
[Colors:Selection]
|
||||||
|
BackgroundAlternate=180,113,31
|
||||||
|
BackgroundNormal=255,162,0
|
||||||
|
DecorationFocus=180,113,31
|
||||||
|
DecorationHover=180,113,31
|
||||||
|
ForegroundActive=132,67,101
|
||||||
|
ForegroundInactive=255,232,115
|
||||||
|
ForegroundLink=44,27,0
|
||||||
|
ForegroundNegative=200,62,76
|
||||||
|
ForegroundNeutral=200,93,0
|
||||||
|
ForegroundNormal=44,27,0
|
||||||
|
ForegroundPositive=255,162,0
|
||||||
|
ForegroundVisited=144,112,140
|
||||||
|
|
||||||
|
[Colors:Tooltip]
|
||||||
|
BackgroundAlternate=31,31,31
|
||||||
|
BackgroundNormal=31,31,31
|
||||||
|
DecorationFocus=180,113,31
|
||||||
|
DecorationHover=180,113,31
|
||||||
|
ForegroundActive=180,113,31
|
||||||
|
ForegroundInactive=189,195,199
|
||||||
|
ForegroundLink=180,113,31
|
||||||
|
ForegroundNegative=218,68,83
|
||||||
|
ForegroundNeutral=246,116,0
|
||||||
|
ForegroundNormal=239,240,241
|
||||||
|
ForegroundPositive=255,162,0
|
||||||
|
ForegroundVisited=127,140,141
|
||||||
|
|
||||||
|
[Colors:View]
|
||||||
|
BackgroundAlternate=32,32,32
|
||||||
|
BackgroundNormal=36,36,36
|
||||||
|
DecorationFocus=255,162,0
|
||||||
|
DecorationHover=255,162,0
|
||||||
|
ForegroundActive=255,162,0
|
||||||
|
ForegroundInactive=199,199,199
|
||||||
|
ForegroundLink=255,162,0
|
||||||
|
ForegroundNegative=218,68,83
|
||||||
|
ForegroundNeutral=246,116,0
|
||||||
|
ForegroundNormal=255,255,255
|
||||||
|
ForegroundPositive=255,162,0
|
||||||
|
ForegroundVisited=141,141,141
|
||||||
|
|
||||||
|
[Colors:Window]
|
||||||
|
BackgroundAlternate=42,42,42
|
||||||
|
BackgroundNormal=31,31,31
|
||||||
|
DecorationFocus=255,162,0
|
||||||
|
DecorationHover=255,162,0
|
||||||
|
ForegroundActive=83,62,37
|
||||||
|
ForegroundInactive=189,195,199
|
||||||
|
ForegroundLink=180,113,31
|
||||||
|
ForegroundNegative=218,68,83
|
||||||
|
ForegroundNeutral=246,116,0
|
||||||
|
ForegroundNormal=255,255,255
|
||||||
|
ForegroundPositive=255,162,0
|
||||||
|
ForegroundVisited=110,65,40
|
||||||
|
|
||||||
|
[General]
|
||||||
|
ColorScheme=Krita dark orange
|
||||||
|
Name=Krita dark orange
|
||||||
|
shadeSortColumn=true
|
||||||
|
|
||||||
|
[KDE]
|
||||||
|
contrast=4
|
||||||
|
|
||||||
|
[WM]
|
||||||
|
activeBackground=25,25,25
|
||||||
|
activeBlend=255,255,255
|
||||||
|
activeForeground=239,240,241
|
||||||
|
inactiveBackground=25,25,25
|
||||||
|
inactiveBlend=65,65,65
|
||||||
|
inactiveForeground=131,131,131
|
67
shared/home_manager/plasma_manager.nix
Normal file
67
shared/home_manager/plasma_manager.nix
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
{ plasma-manager, config, ... }:
|
||||||
|
|
||||||
|
# https://nix-community.github.io/plasma-manager/options.xhtml
|
||||||
|
# https://github.com/nix-community/plasma-manager/blob/trunk/examples/home.nix
|
||||||
|
{
|
||||||
|
programs.plasma = {
|
||||||
|
enable = true;
|
||||||
|
|
||||||
|
panels = [{
|
||||||
|
height = 44;
|
||||||
|
location = "left";
|
||||||
|
widgets = [
|
||||||
|
"org.kde.plasma.kickoff"
|
||||||
|
"org.kde.plasma.pager"
|
||||||
|
{
|
||||||
|
iconTasks.launchers = [];
|
||||||
|
}
|
||||||
|
"org.kde.plasma.marginsseparator"
|
||||||
|
{
|
||||||
|
systemTray.items = {
|
||||||
|
# shown = [];
|
||||||
|
# hidden = [];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
digitalClock = {
|
||||||
|
calendar = {
|
||||||
|
firstDayOfWeek = "monday";
|
||||||
|
showWeekNumbers = true;
|
||||||
|
};
|
||||||
|
time.format = "24h";
|
||||||
|
settings.Appearance.showDate = false;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}];
|
||||||
|
|
||||||
|
workspace = {
|
||||||
|
theme = "breeze-dark";
|
||||||
|
colorScheme = "KritaDarkOrange";
|
||||||
|
};
|
||||||
|
|
||||||
|
kwin = {
|
||||||
|
edgeBarrier = 0;
|
||||||
|
cornerBarrier = false;
|
||||||
|
virtualDesktops = {
|
||||||
|
number = 8;
|
||||||
|
rows = 4;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Find attributes at /proc/bus/input/devices
|
||||||
|
# converting vendorId and productId from hex to base10 is broken currently
|
||||||
|
# https://github.com/nix-community/plasma-manager/issues/306
|
||||||
|
# input.mice = [{
|
||||||
|
# vendorId = "0002";
|
||||||
|
# productId = "0007";
|
||||||
|
# naturalScroll = true;
|
||||||
|
# }];
|
||||||
|
configFile.kcminputrc."Libinput/2/10/SynPS/2 Synaptics TouchPad"."NaturalScroll" = true;
|
||||||
|
};
|
||||||
|
systemd.user.tmpfiles.rules = [
|
||||||
|
"L ${config.variables.homedir}/.local/share/color-schemes/KritaDarkOrange.colors - - - - ${config.variables.flakedir}/shared/home_manager/assets/KritaDarkOrange.colors"
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: tabstop=2 softtabstop=2
|
8
shared/keyboard.nix
Normal file
8
shared/keyboard.nix
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
{ ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
console.keyMap = "us";
|
||||||
|
services.xserver.xkb.layout = "us";
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: tabstop=2 softtabstop=2
|
39
shared/networkmanager.nix
Normal file
39
shared/networkmanager.nix
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
{ lib, ... }:
|
||||||
|
|
||||||
|
let network-config-default = {
|
||||||
|
connection = {
|
||||||
|
type = "wifi";
|
||||||
|
permissions = "";
|
||||||
|
};
|
||||||
|
wifi = {
|
||||||
|
mac-address-blacklist = "";
|
||||||
|
mode = "infrastructure";
|
||||||
|
};
|
||||||
|
wifi-security = {
|
||||||
|
auth-alg = "open";
|
||||||
|
key-mgmt = "wpa-psk";
|
||||||
|
};
|
||||||
|
ipv4 = {
|
||||||
|
dns-search = "";
|
||||||
|
method = "auto";
|
||||||
|
};
|
||||||
|
ipv6 = {
|
||||||
|
addr-gen-mode = "stable-privacy";
|
||||||
|
dns-search = "";
|
||||||
|
method = "auto";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
networking.networkmanager.enable = true;
|
||||||
|
networking.networkmanager.wifi.powersave = true; # We assume only laptops use wifi
|
||||||
|
|
||||||
|
networking.networkmanager.ensureProfiles.profiles = {
|
||||||
|
KnyfNet = lib.recursiveUpdate network-config-default {
|
||||||
|
connection.id = "KnyfNet";
|
||||||
|
wifi.ssid = "KnyfNet";
|
||||||
|
wifi-security.psk = "ltzlhznhzd";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: tabstop=2 softtabstop=2
|
7
shared/printing.nix
Normal file
7
shared/printing.nix
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
{ ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
services.printing.enable = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: tabstop=2 softtabstop=2
|
10
shared/sound.nix
Normal file
10
shared/sound.nix
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
{ ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
services.pipewire = {
|
||||||
|
enable = true;
|
||||||
|
pulse.enable = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: tabstop=2 softtabstop=2
|
23
shared/variables.nix
Normal file
23
shared/variables.nix
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
{ lib, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
options.variables = {
|
||||||
|
username = lib.mkOption {
|
||||||
|
type = lib.types.str;
|
||||||
|
};
|
||||||
|
homedir = lib.mkOption {
|
||||||
|
type = lib.types.str;
|
||||||
|
};
|
||||||
|
flakedir = lib.mkOption {
|
||||||
|
type = lib.types.str;
|
||||||
|
};
|
||||||
|
swapsize = lib.mkOption {
|
||||||
|
type = lib.types.int;
|
||||||
|
};
|
||||||
|
resumeOffset = lib.mkOption {
|
||||||
|
type = lib.types.int;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
# vim: tabstop=2 softtabstop=2
|
Loading…
Reference in New Issue
Block a user