Compare commits
32 Commits
5f64559
...
ea4489732b
Author | SHA1 | Date | |
---|---|---|---|
ea4489732b | |||
6c35b8fb99 | |||
76702ea878 | |||
b261195413 | |||
6651ba444e | |||
093ac9c011 | |||
d6ca7ba793 | |||
17e3fc6a9e | |||
0da22649eb | |||
f14bc8c082 | |||
c766b08973 | |||
27ca179697 | |||
66b67b9b03 | |||
116e81d080 | |||
e64579832a | |||
11e350751a | |||
d86380c995 | |||
79ad288bcc | |||
5b3d74179b | |||
ac2d3acf0e | |||
9d132e5366 | |||
8248d4b969 | |||
18df257130 | |||
c9ffd8a567 | |||
637f7e0d78 | |||
4ff3ab574f | |||
633eea8877 | |||
3b7c49041c | |||
e8fac6e226 | |||
3239948de6 | |||
10c46e1e6a | |||
34e087b815 |
5
Makefile
5
Makefile
@ -1,7 +1,7 @@
|
||||
HOST ?= $(file < /etc/nixosFlakeName)
|
||||
THREADS ?= $(shell nproc)
|
||||
FLAKE ?= .
|
||||
MODE = switch
|
||||
MODE ?= boot
|
||||
|
||||
FLAGS = --impure --cores $(THREADS) -j $(THREADS)
|
||||
|
||||
@ -22,4 +22,5 @@ iso :
|
||||
rm -rf result
|
||||
|
||||
cleanup :
|
||||
sudo nix-collect-garbage -d
|
||||
sudo nix-collect-garbage -d --delete-older-than 1d
|
||||
nix-store --optimize -vv
|
||||
|
24
flake.lock
generated
24
flake.lock
generated
@ -8,11 +8,11 @@
|
||||
},
|
||||
"locked": {
|
||||
"dir": "pkgs/firefox-addons",
|
||||
"lastModified": 1745222277,
|
||||
"narHash": "sha256-zkUx4CzgqRS8bUT1hyEGol3w6/iv+tk0axMpdzTB7Mw=",
|
||||
"lastModified": 1754138575,
|
||||
"narHash": "sha256-6foT7Sflve4XuLnBKkgN9b9IP4FvdoBA2XQ2IyXmbog=",
|
||||
"owner": "rycee",
|
||||
"repo": "nur-expressions",
|
||||
"rev": "da88304c0a5113485bd36a498ee05516cace8ec9",
|
||||
"rev": "27c945a6450d42c62f7e41019d7931b426bb786f",
|
||||
"type": "gitlab"
|
||||
},
|
||||
"original": {
|
||||
@ -29,11 +29,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1745256380,
|
||||
"narHash": "sha256-hJH1S5Xy0K2J6eT22AMDIcQ07E8XYC1t7DnXUr2llEM=",
|
||||
"lastModified": 1754085240,
|
||||
"narHash": "sha256-kVHCrTWEe8B1thAhFag1bk4QPY0ZP45V9vPbrwPHoNo=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "22b326b42bf42973d5e4fe1044591fb459e6aeac",
|
||||
"rev": "e102920c1becb114645c6f92fe14edc0b05cc229",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -44,11 +44,11 @@
|
||||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1744633460,
|
||||
"narHash": "sha256-fbWE4Xpw6eH0Q6in+ymNuDwTkqmFmtxcQEmtRuKDTTk=",
|
||||
"lastModified": 1753122741,
|
||||
"narHash": "sha256-nFxE8lk9JvGelxClCmwuJYftbHqwnc01dRN4DVLUroM=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "9a049b4a421076d27fee3eec664a18b2066824cb",
|
||||
"rev": "cc66fddc6cb04ab479a1bb062f4d4da27c936a22",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -60,11 +60,11 @@
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1744932701,
|
||||
"narHash": "sha256-fusHbZCyv126cyArUwwKrLdCkgVAIaa/fQJYFlCEqiU=",
|
||||
"lastModified": 1753939845,
|
||||
"narHash": "sha256-K2ViRJfdVGE8tpJejs8Qpvvejks1+A4GQej/lBk5y7I=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "b024ced1aac25639f8ca8fdfc2f8c4fbd66c48ef",
|
||||
"rev": "94def634a20494ee057c76998843c015909d6311",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -76,7 +76,7 @@
|
||||
|
||||
homeConfigurations = {
|
||||
vbox = homeConfig { flakeName = "vbox"; };
|
||||
ft = homeConfig { flakeName = "ft"; username = "tomoron"; homeDir = "/nfs/homes/tomoron";};
|
||||
ft = homeConfig { flakeName = "ft"; username = "tomoron"; homeDir = "/home/tomoron";};
|
||||
laptop = homeConfig { flakeName = "laptop"; };
|
||||
desktop = homeConfig { flakeName = "desktop"; };
|
||||
server = homeConfig { flakeName = "server"; };
|
||||
|
@ -6,7 +6,7 @@
|
||||
# By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ #
|
||||
# +#+#+#+#+#+ +#+ #
|
||||
# Created: 2024/10/17 18:15:38 by tomoron #+# #+# #
|
||||
# Updated: 2025/04/25 00:08:54 by tomoron ### ########.fr #
|
||||
# Updated: 2025/05/12 12:35:00 by tomoron ### ########.fr #
|
||||
# #
|
||||
# **************************************************************************** #
|
||||
|
||||
@ -66,7 +66,7 @@
|
||||
|
||||
|
||||
home.file = { #should be able to make most of these in nix configs
|
||||
".config/wallpaper.png".source = lib.mkDefault utils/wallpaper.png;
|
||||
".config/wallpaper.png".source = lib.mkDefault utils/wallpaper_test.png;
|
||||
".config/pc.jpg".source = lib.mkDefault utils/pc.jpg;
|
||||
".config/rofi/config.rasi".text = "@theme \"rounded-nord-dark.rasi\"";
|
||||
|
||||
|
@ -20,7 +20,8 @@
|
||||
"LIBVA_DRIVER_NAME,nvidia"
|
||||
"__GLX_VENDOR_LIBRARY_NAME,nvidia"
|
||||
];
|
||||
cursor.no_hardware_cursors = 1;
|
||||
cursor.no_hardware_cursors = true;
|
||||
misc.vrr = 1;
|
||||
};
|
||||
|
||||
mods.hyprland.autoSuspend = false;
|
||||
|
@ -12,7 +12,9 @@
|
||||
mods.x11.enable = true;
|
||||
programs.firefox.enable = false;
|
||||
|
||||
mods.sync.homeFolder = "/sgoinfre/goinfre/Perso/tomoron";
|
||||
mods.polybar.fspath = "/home/tomoron";
|
||||
|
||||
mods.sync.homeFolder = "/home/tomoron/sync";
|
||||
mods.sync.defaultSynced = false;
|
||||
mods.sync.syncedAdditions = [ "42_desktop" "Downloads" ];
|
||||
mods.sync.customHostName = "pc42";
|
||||
|
@ -1,7 +1,6 @@
|
||||
{ lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
home.file.".config/wallpaper.png".source = ../utils/wallpaper_test.png;
|
||||
programs.waybar.settings.mainBar = {
|
||||
modules-right = lib.mkBefore ["custom/fans" "custom/dgpu"];
|
||||
"custom/dgpu" = {
|
||||
|
@ -1,6 +1,11 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
mods.game.enable = false;
|
||||
mods.hyprland.enable = false;
|
||||
mods.x11.enable = true;
|
||||
programs.firefox.enable = false;
|
||||
|
||||
services.picom = {
|
||||
backend = "xrender";
|
||||
settings = {
|
||||
|
@ -18,6 +18,7 @@
|
||||
pull.rebase = true;
|
||||
push.autoSetupRemote = true;
|
||||
rerere.enabled = true;
|
||||
help.autocorrect = 1;
|
||||
};
|
||||
aliases = {
|
||||
fuck = "!f() { git reset --hard \"@{upstream}\" && git restore . && git clean -f .; };f";
|
||||
|
@ -18,7 +18,7 @@
|
||||
home.packages = with pkgs; [
|
||||
clang-tools
|
||||
nixd
|
||||
nodejs_23
|
||||
nodejs_24
|
||||
glsl_analyzer
|
||||
];
|
||||
|
||||
@ -93,7 +93,7 @@
|
||||
#install stdheader 42
|
||||
".config/nvim/plugin/stdheader.vim".source = "${builtins.fetchGit {
|
||||
url = "https://github.com/42Paris/42header";
|
||||
rev = "71e6a4df6d72ae87a080282bf45bb993da6146b2";
|
||||
rev = "e6e6b191871545e0d43f1aad817070bc806b8fa7";
|
||||
ref = "master";
|
||||
}}/plugin/stdheader.vim";
|
||||
|
||||
|
@ -18,6 +18,7 @@
|
||||
"CTRL_ALT, Q, killactive,"
|
||||
"SUPER_ALT, Q, exit,"
|
||||
"$mainMod, S, togglefloating,"
|
||||
"$mainMod, I, pin,"
|
||||
"$mainMod, D, exec, rofi -show drun -show-icons"
|
||||
"$mainMod, M, fullscreen, 1"
|
||||
"$mainMod, F, fullscreen, 0"
|
||||
|
@ -6,7 +6,7 @@
|
||||
# By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ #
|
||||
# +#+#+#+#+#+ +#+ #
|
||||
# Created: 2025/02/10 00:21:11 by tomoron #+# #+# #
|
||||
# Updated: 2025/02/12 09:36:07 by tomoron ### ########.fr #
|
||||
# Updated: 2025/06/18 15:49:03 by tomoron ### ########.fr #
|
||||
# #
|
||||
# **************************************************************************** #
|
||||
{lib, config, ... }:
|
||||
@ -34,7 +34,7 @@
|
||||
setxkbmap fr us&
|
||||
nitrogen --restore &
|
||||
pgrep activate-linux >/dev/null || (sleep 2;activate-linux -d)&
|
||||
''; # this is messy but i don't care, x11 isn't my default now.
|
||||
''; # this is messy but i don't care, x11 is just a fallback now
|
||||
|
||||
};
|
||||
}
|
||||
|
@ -6,13 +6,19 @@
|
||||
# By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ #
|
||||
# +#+#+#+#+#+ +#+ #
|
||||
# Created: 2025/02/10 02:51:32 by tomoron #+# #+# #
|
||||
# Updated: 2025/02/10 17:28:27 by tomoron ### ########.fr #
|
||||
# Updated: 2025/08/07 15:30:07 by tomoron ### ########.fr #
|
||||
# #
|
||||
# **************************************************************************** #
|
||||
|
||||
{ lib, config, ... }:
|
||||
|
||||
{
|
||||
options.mods.polybar.fspath = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "/";
|
||||
description = "set the filesystem path for the remaining disk space";
|
||||
};
|
||||
|
||||
config = lib.mkIf config.mods.x11.enable {
|
||||
services.polybar.enable = true;
|
||||
services.polybar.script = "pgrep polybar >/dev/null || polybar -q main -c \"$HOME/.config/polybar/config.ini\"&";
|
||||
@ -44,8 +50,8 @@
|
||||
|
||||
"module/filesystem" = {
|
||||
type = "internal/fs";
|
||||
mount-0 = "/";
|
||||
interval = 30;
|
||||
mount-0 = config.mods.polybar.fspath;
|
||||
interval = 10;
|
||||
fixed-values = true;
|
||||
format-mounted = "<label-mounted>";
|
||||
format-mounted-prefix = "";
|
||||
|
@ -6,7 +6,7 @@
|
||||
# By: tomoron <tomoron@student.42angouleme.fr> +#+ +:+ +#+ #
|
||||
# +#+#+#+#+#+ +#+ #
|
||||
# Created: 2025/02/09 22:01:56 by tomoron #+# #+# #
|
||||
# Updated: 2025/04/15 15:58:07 by tomoron ### ########.fr #
|
||||
# Updated: 2025/08/04 15:38:21 by tomoron ### ########.fr #
|
||||
# #
|
||||
# **************************************************************************** #
|
||||
|
||||
@ -14,22 +14,35 @@
|
||||
|
||||
{
|
||||
home.packages = with pkgs;[
|
||||
lrzip
|
||||
pigz
|
||||
htop
|
||||
gnumake
|
||||
git
|
||||
neofetch
|
||||
clang
|
||||
ninja
|
||||
gdb
|
||||
valgrind
|
||||
wget
|
||||
cmake
|
||||
man-pages
|
||||
stress
|
||||
ffmpeg-full
|
||||
ripgrep
|
||||
|
||||
activate-linux
|
||||
unison
|
||||
brightnessctl
|
||||
playerctl
|
||||
python3
|
||||
vlc
|
||||
nerd-fonts.iosevka
|
||||
|
||||
nix-index
|
||||
yubikey-manager
|
||||
yubico-pam
|
||||
dunst
|
||||
yubikey-manager
|
||||
bibata-cursors
|
||||
libcaca
|
||||
nasm
|
||||
nerd-fonts.iosevka
|
||||
compiledb
|
||||
];
|
||||
}
|
||||
|
@ -2,12 +2,7 @@
|
||||
{ config, lib, inputs, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
../modules/game.nix
|
||||
../modules/nvidia.nix
|
||||
../modules/vboxHost.nix
|
||||
];
|
||||
|
||||
boot.kernelParams = [ "nvidia-drm-modset=1" ];
|
||||
environment.systemPackages = with pkgs; [
|
||||
cudatoolkit
|
||||
lm_sensors
|
||||
@ -18,9 +13,10 @@
|
||||
hardware.cpu.intel.updateMicrocode = true;
|
||||
|
||||
boot.kernelModules = [ "kvm-intel" "nvidia" ];
|
||||
|
||||
mods.displayManager.enable = true;
|
||||
|
||||
hardware.nvidia = {
|
||||
package = config.boot.kernelPackages.nvidiaPackages.beta;
|
||||
open = true;
|
||||
|
||||
prime.nvidiaBusId = "PCI:1:0:0";
|
||||
|
@ -13,13 +13,13 @@
|
||||
|
||||
services.getty.autologinUser = lib.mkForce "tom";
|
||||
services.getty.helpLine = lib.mkForce "";
|
||||
programs.hyprland.enable = true;
|
||||
# programs.hyprland.enable = true;
|
||||
|
||||
home-manager.extraSpecialArgs = { inherit inputs; inherit pkgs; isOs = true;};
|
||||
home-manager.users.tom = {
|
||||
imports = [
|
||||
../../homeConfigs/home.nix
|
||||
../../homeConfigs/hosts/iso.nix
|
||||
];
|
||||
};
|
||||
# home-manager.extraSpecialArgs = { inherit inputs; inherit pkgs; isOs = true;};
|
||||
# home-manager.users.tom = {
|
||||
# imports = [
|
||||
# ../../homeConfigs/home.nix
|
||||
# ../../homeConfigs/hosts/iso.nix
|
||||
# ];
|
||||
# };
|
||||
}
|
||||
|
@ -1,18 +1,46 @@
|
||||
{ pkgs, ... }:
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
boot.kernelParams = [ "kvm.enable_virt_at_load=0" ];
|
||||
|
||||
boot.initrd.luks.devices.cryptroot.device = "/dev/disk/by-uuid/a4593b01-069d-4a5d-a550-74a762b89b3f";
|
||||
boot.initrd.luks.devices.cryptroot.allowDiscards = true;
|
||||
|
||||
services.displayManager.enable = true;
|
||||
services.displayManager.ly.enable = true;
|
||||
mods.displayManager.enable = true;
|
||||
mods.virtualManager.enable = false;
|
||||
networking.firewall.enable = false;
|
||||
|
||||
networking.hostName = "patate-douce";
|
||||
networking.wireless.enable = true;
|
||||
networking.networkmanager.enable = false;
|
||||
|
||||
specialisation.vfio_ready.configuration = {
|
||||
boot.kernel.sysctl."vm.nr_hugepages" = 5120;
|
||||
boot.extraModulePackages = with config.boot.kernelPackages; [ kvmfr ];
|
||||
boot.kernelModules = [ "kvmfr" ];
|
||||
boot.extraModprobeConfig = ''
|
||||
options kvmfr static_size_mb=128
|
||||
blacklist xpad
|
||||
'';
|
||||
virtualisation.libvirtd.qemu.verbatimConfig = ''
|
||||
cgroup_device_acl = [
|
||||
"/dev/kvmfr0", "/dev/null", "/dev/full", "/dev/zero",
|
||||
"/dev/random", "/dev/urandom",
|
||||
"/dev/ptmx", "/dev/kvm",
|
||||
"/dev/rtc","/dev/hpet",
|
||||
"/dev/input/by-id/[some_mouse_device]-event-mouse",
|
||||
"/dev/input/by-id/[some_keyboard_device]-event-kbd"
|
||||
]
|
||||
'';
|
||||
services.udev.extraRules = ''
|
||||
SUBSYSTEM=="kvmfr", OWNER="tom", GROUP="kvm", MODE="0660"
|
||||
'';
|
||||
environment.systemPackages = with pkgs; [ looking-glass-client ];
|
||||
};
|
||||
|
||||
programs.virt-manager.enable = true;
|
||||
virtualisation.libvirtd.enable = true;
|
||||
virtualisation.libvirtd.qemu.runAsRoot = true;
|
||||
virtualisation.libvirtd.qemu.vhostUserPackages = [ pkgs.virtiofsd ];
|
||||
|
||||
networking.dhcpcd.enable = false;
|
||||
systemd.network.enable = true;
|
||||
networking.useNetworkd = true;
|
||||
@ -20,7 +48,6 @@
|
||||
environment.systemPackages = with pkgs; [
|
||||
acpi
|
||||
tlp
|
||||
looking-glass-client
|
||||
fprintd
|
||||
];
|
||||
|
||||
@ -38,6 +65,22 @@
|
||||
#power management
|
||||
powerManagement.enable = true;
|
||||
powerManagement.cpuFreqGovernor = "powersave";
|
||||
|
||||
services.asusd = {
|
||||
enable = true;
|
||||
enableUserService = true;
|
||||
};
|
||||
services.supergfxd.enable = true;
|
||||
services.supergfxd.settings = {
|
||||
mode = "Integrated";
|
||||
vfio_enable = true;
|
||||
vfio_save = true;
|
||||
always_reboot = false;
|
||||
no_logind = true;
|
||||
logout_timeout_s = 180;
|
||||
hotplug_type = "None";
|
||||
};
|
||||
|
||||
services.auto-cpufreq.enable = true;
|
||||
services.auto-cpufreq.settings = {
|
||||
battery = {
|
||||
|
@ -12,6 +12,7 @@
|
||||
|
||||
networking.hostName = "server";
|
||||
services.openssh.enable = true;
|
||||
services.openssh.settings.PasswordAuthentication = false;
|
||||
services.openssh.ports = [ 1880 ];
|
||||
|
||||
services.xserver.videoDrivers = [ "nvidia" ];
|
||||
@ -73,7 +74,7 @@
|
||||
virtualisation.docker = {
|
||||
liveRestore = false;
|
||||
enableOnBoot = true;
|
||||
package = inputs.pkgs-docker-2750.legacyPackages."x86_64-linux".docker;
|
||||
# package = inputs.pkgs-docker-2750.legacyPackages."x86_64-linux".docker;
|
||||
# daemon.settings = {
|
||||
# runtimes.nvidia.path = "${pkgs.nvidia-docker}/bin/nvidia-container-runtime";
|
||||
# exec-opts = ["native.cgroupdriver=cgroupfs"];
|
||||
@ -87,6 +88,7 @@
|
||||
hardware.nvidia-container-toolkit.enable = true;
|
||||
|
||||
hardware.nvidia = {
|
||||
package = config.boot.kernelPackages.nvidiaPackages.beta;
|
||||
open = true;
|
||||
|
||||
# prime.nvidiaBusId = "PCI:1:0:0";
|
||||
|
@ -1,6 +1,9 @@
|
||||
{ config, lib, inputs, pkgs, ... }:
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
virtualisation.virtualbox.guest.enable = true;
|
||||
mods.nvidia-graphics.enable = false;
|
||||
mods.virtualManager.enable = false;
|
||||
mods.gayming.enable = false;
|
||||
}
|
||||
|
||||
|
24
osConfigs/modules/displayManager.nix
Normal file
24
osConfigs/modules/displayManager.nix
Normal file
@ -0,0 +1,24 @@
|
||||
{config, lib, ... }:
|
||||
|
||||
{
|
||||
options.mods.displayManager.enable = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = "enable the display manager";
|
||||
};
|
||||
|
||||
config = lib.mkIf config.mods.displayManager.enable {
|
||||
services.displayManager.enable = true;
|
||||
services.displayManager.ly.enable = true;
|
||||
services.displayManager.ly.settings =
|
||||
{
|
||||
animation = "doom";
|
||||
min_refresh_delta = 50;
|
||||
bigclock = "en";
|
||||
sleep_cmd = "systemctl sleep";
|
||||
asterisk = "A";
|
||||
auth_fails= 3;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
@ -1,14 +1,19 @@
|
||||
{ config, lib, inputs, pkgs, ... }:
|
||||
|
||||
{
|
||||
options.mods.virtualbox.enable = lib.mkOption {
|
||||
options.mods.virtualManager.enable = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = true;
|
||||
description = "enable virtualbox as host";
|
||||
description = "enable virtual manager as host";
|
||||
};
|
||||
|
||||
config = lib.mkIf config.mods.virtualbox.enable {
|
||||
virtualisation.virtualbox.host.enable = true;
|
||||
users.users.tom.extraGroups = [ "vboxusers" ];
|
||||
config = lib.mkIf config.mods.virtualManager.enable {
|
||||
programs.virt-manager.enable = true;
|
||||
virtualisation.libvirtd.enable = true;
|
||||
virtualisation.libvirtd.qemu.runAsRoot = true;
|
||||
virtualisation.libvirtd.qemu.vhostUserPackages = [ pkgs.virtiofsd ];
|
||||
virtualisation.spiceUSBRedirection.enable = true;
|
||||
|
||||
environment.systemPackages = with pkgs; [ spice-gtk ];
|
||||
};
|
||||
}
|
||||
|
@ -5,25 +5,10 @@
|
||||
home-manager
|
||||
vim
|
||||
pciutils
|
||||
pigz
|
||||
htop
|
||||
gnumake
|
||||
git
|
||||
neofetch
|
||||
neovim
|
||||
ntfs3g
|
||||
clang
|
||||
ninja
|
||||
gdb
|
||||
valgrind
|
||||
wget
|
||||
cmake
|
||||
usbutils
|
||||
man-pages
|
||||
stress
|
||||
ffmpeg
|
||||
ntfs3g
|
||||
cryptsetup
|
||||
acpi
|
||||
dconf
|
||||
yubico-pam
|
||||
];
|
||||
}
|
||||
|
Reference in New Issue
Block a user