Compare commits

..

25 Commits

Author SHA1 Message Date
dd96ede0c8 288 current 1970-01-01 01:00:00 23.11.20240410.b2cf36f 6.1.84 * 2024-04-12 14:48:16 +02:00
25bc410fdd 287 current 1970-01-01 01:00:00 23.11.20240410.b2cf36f 6.1.84 * 2024-04-12 14:33:29 +02:00
ac70365221 285 current 1970-01-01 01:00:00 23.11.20240408.d272ca5 6.1.84 * 2024-04-11 08:40:50 +02:00
1c46f39e6d 283 current 1970-01-01 01:00:00 23.11.20240406.e38d7cb 6.1.84 * 2024-04-09 14:50:45 +02:00
e0dc5888d8 282 current 1970-01-01 01:00:00 23.11.20240406.e38d7cb 6.1.84 * 2024-04-09 14:36:03 +02:00
dbde974faa 281 current 1970-01-01 01:00:00 23.11.20240406.e38d7cb 6.1.84 * 2024-04-09 14:26:28 +02:00
cb534abacd 280 current 1970-01-01 01:00:00 23.11.20240406.e38d7cb 6.1.84 * 2024-04-09 14:04:14 +02:00
92d8a0e76e 279 current 1970-01-01 01:00:00 23.11.20240406.e38d7cb 6.1.84 * 2024-04-09 08:54:15 +02:00
09e4a7cb46 277 current 1970-01-01 01:00:00 23.11.20240405.72da83d 6.1.84 * 2024-04-07 12:28:23 +02:00
48c3a93156 276 current 1970-01-01 01:00:00 23.11.20240405.72da83d 6.1.84 * 2024-04-07 12:20:59 +02:00
232cec6c0e 275 current 1970-01-01 01:00:00 23.11.20240405.72da83d 6.1.84 * 2024-04-07 12:19:40 +02:00
745f103304 274 current 1970-01-01 01:00:00 23.11.20240405.72da83d 6.1.84 * 2024-04-07 12:18:03 +02:00
a0b5f5b5c4 273 current 1970-01-01 01:00:00 23.11.20240405.72da83d 6.1.84 * 2024-04-07 12:14:19 +02:00
8db057bc42 272 current 1970-01-01 01:00:00 23.11.20240405.72da83d 6.1.84 * 2024-04-07 11:56:15 +02:00
f27298fa9f 270 current 1970-01-01 01:00:00 23.11.20240403.1487bde 6.1.84 * 2024-04-05 21:12:59 +02:00
e6a3d4b7db 269 current 1970-01-01 01:00:00 23.11.20240403.1487bde 6.1.84 * 2024-04-05 13:19:28 +02:00
cd200e0d1b 266 current 1970-01-01 01:00:00 23.11.20240326.4473351 6.1.82 * 2024-03-30 15:54:59 +01:00
4c45aa0005 265 current 1970-01-01 01:00:00 23.11.20240326.4473351 6.1.82 * 2024-03-28 11:16:07 +01:00
bf73460fe7 264 current 1970-01-01 01:00:00 23.11.20240326.4473351 6.1.82 * 2024-03-27 15:18:56 +01:00
3b839f957f 261 current 1970-01-01 01:00:00 23.11.20240320.f091af0 6.1.82 * 2024-03-21 18:11:12 +01:00
abc25ef6ae 260 current 1970-01-01 01:00:00 23.11.20240320.f091af0 6.1.82 * 2024-03-21 18:03:14 +01:00
fd6a01a1df 259 current 1970-01-01 01:00:00 23.11.20240320.f091af0 6.1.82 * 2024-03-21 14:56:17 +01:00
57f260920f 258 current 1970-01-01 01:00:00 23.11.20240320.f091af0 6.1.82 * 2024-03-21 14:49:42 +01:00
fac2369ac9 257 current 1970-01-01 01:00:00 23.11.20240320.f091af0 6.1.82 * 2024-03-21 14:48:55 +01:00
3a75c8c938 256 current 1970-01-01 01:00:00 23.11.20240320.f091af0 6.1.82 * 2024-03-21 14:33:45 +01:00
5 changed files with 171 additions and 34 deletions

View File

@ -7,31 +7,32 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1709756385, "lastModified": 1710888565,
"narHash": "sha256-EwAsCWfjLnq6Rzh9c95ThPhTTOQkY/R9ZROPUfhtHmE=", "narHash": "sha256-s9Hi4RHhc6yut4EcYD50sZWRDKsugBJHSbON8KFwoTw=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "ad9254cd9af9165000ecd6ef9c23c2b8ceda01c7", "rev": "f33900124c23c4eca5831b9b5eb32ea5894375ce",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-community", "owner": "nix-community",
"ref": "release-23.11",
"repo": "home-manager", "repo": "home-manager",
"type": "github" "type": "github"
} }
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1709479366, "lastModified": 1712168706,
"narHash": "sha256-n6F0n8UV6lnTZbYPl1A9q1BS0p4hduAv1mGAP17CVd0=", "narHash": "sha256-XP24tOobf6GGElMd0ux90FEBalUtw6NkBSVh/RlA6ik=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "b8697e57f10292a6165a20f03d2f42920dfaf973", "rev": "1487bdea619e4a7a53a4590c475deabb5a9d1bfb",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nixos", "owner": "nixos",
"ref": "nixos-unstable", "ref": "nixos-23.11",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
@ -56,7 +57,8 @@
"inputs": { "inputs": {
"home-manager": "home-manager", "home-manager": "home-manager",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs",
"sops-nix": "sops-nix" "sops-nix": "sops-nix",
"unstable": "unstable"
} }
}, },
"sops-nix": { "sops-nix": {
@ -79,6 +81,22 @@
"repo": "sops-nix", "repo": "sops-nix",
"type": "github" "type": "github"
} }
},
"unstable": {
"locked": {
"lastModified": 1712163089,
"narHash": "sha256-Um+8kTIrC19vD4/lUCN9/cU9kcOsD1O1m+axJqQPyMM=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "fd281bd6b7d3e32ddfa399853946f782553163b5",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
} }
}, },
"root": "root", "root": "root",

View File

@ -2,10 +2,12 @@
description = "Nixos config flake"; description = "Nixos config flake";
inputs = { inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; nixpkgs.url = "github:nixos/nixpkgs/nixos-23.11";
unstable.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager = { home-manager = {
url = "github:nix-community/home-manager"; url = "github:nix-community/home-manager/release-23.11";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
@ -23,10 +25,23 @@
... ...
} @ inputs: let } @ inputs: let
system = "x86_64-linux"; system = "x86_64-linux";
pkgs = nixpkgs.legacyPackages.${system}; unstable = final: prev: {
unstable = import inputs.unstable {
system = final.system;
config = final.config;
};
};
pkgs = import nixpkgs {
inherit system;
overlays = [unstable];
config.allowUnfree = true;
};
in { in {
nixosConfigurations."MaxNixosLaptop" = nixpkgs.lib.nixosSystem { nixosConfigurations."MaxNixosLaptop" = nixpkgs.lib.nixosSystem {
specialArgs = {inherit inputs;}; specialArgs = {
inherit inputs;
inherit pkgs;
};
system = "x86_64-linux"; system = "x86_64-linux";
modules = [ modules = [
./hosts/MaxNixosLaptop/configuration.nix ./hosts/MaxNixosLaptop/configuration.nix

View File

@ -21,6 +21,20 @@
inputs.home-manager.nixosModules.default inputs.home-manager.nixosModules.default
]; ];
hardware.opengl = {
enable = true;
extraPackages = with pkgs; [
libvdpau-va-gl
libvdpau
libva
rocmPackages.clr.icd
amdvlk
driversi686Linux.amdvlk
];
};
hardware.spacenavd.enable = true;
# Bootloader. # Bootloader.
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true; boot.loader.efi.canTouchEfiVariables = true;
@ -69,13 +83,10 @@
users.users.max = { users.users.max = {
isNormalUser = true; isNormalUser = true;
description = "Max Känner"; description = "Max Känner";
extraGroups = ["networkmanager" "wheel"]; extraGroups = ["networkmanager" "wheel" "libvirtd"];
shell = pkgs.zsh; shell = pkgs.zsh;
}; };
# Allow unfree packages
nixpkgs.config.allowUnfree = true;
home-manager = { home-manager = {
extraSpecialArgs = {inherit inputs;}; extraSpecialArgs = {inherit inputs;};
users = { users = {
@ -89,11 +100,37 @@
neovim neovim
wget wget
fprintd fprintd
qemu
quickemu
home-manager home-manager
(let
base = pkgs.appimageTools.defaultFhsEnvArgs;
in
pkgs.buildFHSUserEnv (base
// {
name = "fhs";
targetPkgs = pkgs: (
# pkgs.buildFHSUserEnv provides only a minimal FHS environment,
# lacking many basic packages needed by most software.
# Therefore, we need to add them manually.
#
# pkgs.appimageTools provides basic packages required by most software.
(base.targetPkgs pkgs)
++ [
pkg-config
ncurses
# Feel free to add more packages here if needed.
]
);
profile = "export FHS=1";
runScript = "bash";
extraOutputsToInstall = ["dev"];
}))
]; ];
fonts.packages = with pkgs; [ fonts.packages = with pkgs; [
nerdfonts nerdfonts
montserrat
]; ];
# Some programs need SUID wrappers, can be configured further or are # Some programs need SUID wrappers, can be configured further or are
@ -119,6 +156,24 @@
enable = true; enable = true;
defaultNetwork.settings.dns_enabled = true; defaultNetwork.settings.dns_enabled = true;
}; };
libvirtd = {
enable = true;
qemu = {
package = pkgs.qemu_kvm;
runAsRoot = true;
swtpm.enable = true;
ovmf = {
enable = true;
packages = [
(pkgs.unstable.OVMF.override {
secureBoot = true;
tpmSupport = true;
})
.fd
];
};
};
};
}; };
# List services that you want to enable: # List services that you want to enable:
@ -132,9 +187,30 @@
}; };
services.blueman.enable = true; services.blueman.enable = true;
services.udev.extraRules = '' services.udisks2.enable = true;
services.udev = {
enable = true;
packages = with pkgs; [
picoprobe-udev-rules
teensy-udev-rules
qmk-udev-rules
game-devices-udev-rules
android-udev-rules
];
extraRules = ''
ACTION=="add", KERNEL=="event[0-9]*", DEVPATH="/devices/platform/AMDI0010:02/i2c-2/i2c-ELAN2513:00/0018:04F3:2D9C.0001/input/input[0-9]*/event[0-9]*", SYMLINK+="touchscreen0" ACTION=="add", KERNEL=="event[0-9]*", DEVPATH="/devices/platform/AMDI0010:02/i2c-2/i2c-ELAN2513:00/0018:04F3:2D9C.0001/input/input[0-9]*/event[0-9]*", SYMLINK+="touchscreen0"
''; '';
};
services.flatpak.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
jack.enable = true;
pulse.enable = true;
};
# Enable the OpenSSH daemon. # Enable the OpenSSH daemon.
# services.openssh.enable = true; # services.openssh.enable = true;

View File

@ -1,7 +1,6 @@
{ {
config,
pkgs, pkgs,
lib, inputs,
... ...
}: { }: {
imports = [ imports = [
@ -27,8 +26,6 @@
home.username = "max"; home.username = "max";
home.homeDirectory = "/home/max"; home.homeDirectory = "/home/max";
nixpkgs.config.allowUnfree = true;
# This value determines the Home Manager release that your configuration is # This value determines the Home Manager release that your configuration is
# compatible with. This helps avoid breakage when a new Home Manager release # compatible with. This helps avoid breakage when a new Home Manager release
# introduces backwards incompatible changes. # introduces backwards incompatible changes.
@ -46,7 +43,6 @@
firefox firefox
thunderbird thunderbird
xournalpp xournalpp
kicad
prismlauncher prismlauncher
steam steam
blender blender
@ -55,22 +51,21 @@
youtube-dl youtube-dl
dconf dconf
distrobox distrobox
gyroflow
libqalculate libqalculate
sops sops
pwvucontrol pwvucontrol
qpwgraph qpwgraph
(pkgs.discord.override { discord
withOpenASAR = true;
withVencord = true;
})
vesktop
libreoffice-fresh libreoffice-fresh
mate.caja mate.caja
kdePackages.okular libsForQt5.okular
mpv mpv
gimp gimp
freecad freecad
flatpak
wine
unstable.gyroflow
prusa-slicer
]; ];
home.sessionVariables = { home.sessionVariables = {
@ -81,6 +76,12 @@
services.nextcloud-client.enable = true; services.nextcloud-client.enable = true;
services.udiskie = {
enable = true;
automount = true;
notify = true;
};
# Let Home Manager install and manage itself. # Let Home Manager install and manage itself.
programs.home-manager.enable = true; programs.home-manager.enable = true;

View File

@ -99,6 +99,9 @@ in {
HDMI-A-1 = { HDMI-A-1 = {
bg = "'${bg4k}' fit"; bg = "'${bg4k}' fit";
}; };
DP-3 = {
bg = "'${bg1080}' fit";
};
DP-4 = { DP-4 = {
bg = "'${bg1080}' fit"; bg = "'${bg1080}' fit";
}; };
@ -208,11 +211,11 @@ in {
workspaceOutputAssign = [ workspaceOutputAssign = [
{ {
workspace = "main"; workspace = "main";
output = ["DP-4" "DP-6" "HDMI-A-1" "eDP-1"]; output = ["DP-3" "DP-4" "DP-6" "HDMI-A-1" "eDP-1"];
} }
{ {
workspace = "term"; workspace = "term";
output = ["DP-5" "DP-7" "eDP-1"]; output = ["DP-5" "DP-4" "DP-7" "eDP-1"];
} }
{ {
workspace = "msg"; workspace = "msg";
@ -224,7 +227,7 @@ in {
} }
{ {
workspace = "5"; workspace = "5";
output = ["DP-4" "DP-6" "HDMI-A-1" "eDP-1"]; output = ["DP-3" "DP-4" "DP-6" "HDMI-A-1" "eDP-1"];
} }
]; ];
@ -463,6 +466,30 @@ in {
"${pkgs.sway}/bin/swaymsg workspace 5, move workspace to DP-6" "${pkgs.sway}/bin/swaymsg workspace 5, move workspace to DP-6"
]; ];
}; };
dock_luhbots4 = {
outputs = [
{
criteria = "eDP-1";
position = "1080,1080";
}
{
criteria = "Dell Inc. DELL P2422HE 4BXL9M3";
position = "1080,0";
}
{
criteria = "NEC Corporation E243WMi 75309334NB";
transform = "90";
position = "0,0";
}
];
exec = [
"${pkgs.sway}/bin/swaymsg workspace 1, move workspace to DP-3"
"${pkgs.sway}/bin/swaymsg workspace 2, move workspace to DP-4"
"${pkgs.sway}/bin/swaymsg workspace 3, move workspace to eDP-1"
"${pkgs.sway}/bin/swaymsg workspace 4, move workspace to eDP-1"
"${pkgs.sway}/bin/swaymsg workspace 5, move workspace to DP-3"
];
};
laptop_hannspree = { laptop_hannspree = {
outputs = [ outputs = [
{ {