Compare commits
3 commits
444f4df7d8
...
9defb280e1
Author | SHA1 | Date | |
---|---|---|---|
9defb280e1 | |||
712a66f7f6 | |||
d0d10112c3 |
9 changed files with 90 additions and 72 deletions
24
flake.lock
generated
24
flake.lock
generated
|
@ -51,11 +51,11 @@
|
||||||
"fromYaml": "fromYaml"
|
"fromYaml": "fromYaml"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1708890466,
|
"lastModified": 1732200724,
|
||||||
"narHash": "sha256-LlrC09LoPi8OPYOGPXegD72v+//VapgAqhbOFS3i8sc=",
|
"narHash": "sha256-+R1BH5wHhfnycySb7Sy5KbYEaTJZWm1h+LW1OtyhiTs=",
|
||||||
"owner": "SenchoPens",
|
"owner": "SenchoPens",
|
||||||
"repo": "base16.nix",
|
"repo": "base16.nix",
|
||||||
"rev": "665b3c6748534eb766c777298721cece9453fdae",
|
"rev": "153d52373b0fb2d343592871009a286ec8837aec",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -360,11 +360,11 @@
|
||||||
"fromYaml": {
|
"fromYaml": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1689549921,
|
"lastModified": 1731966426,
|
||||||
"narHash": "sha256-iX0pk/uB019TdBGlaJEWvBCfydT6sRq+eDcGPifVsCM=",
|
"narHash": "sha256-lq95WydhbUTWig/JpqiB7oViTcHFP8Lv41IGtayokA8=",
|
||||||
"owner": "SenchoPens",
|
"owner": "SenchoPens",
|
||||||
"repo": "fromYaml",
|
"repo": "fromYaml",
|
||||||
"rev": "11fbbbfb32e3289d3c631e0134a23854e7865c84",
|
"rev": "106af9e2f715e2d828df706c386a685698f3223b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -440,11 +440,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1724435763,
|
"lastModified": 1730837930,
|
||||||
"narHash": "sha256-UNky3lJNGQtUEXT2OY8gMxejakSWPTfWKvpFkpFlAfM=",
|
"narHash": "sha256-0kZL4m+bKBJUBQse0HanewWO0g8hDdCvBhudzxgehqc=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "c2cd2a52e02f1dfa1c88f95abeb89298d46023be",
|
"rev": "2f607e07f3ac7e53541120536708e824acccfaa8",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -1075,11 +1075,11 @@
|
||||||
"tinted-tmux": "tinted-tmux"
|
"tinted-tmux": "tinted-tmux"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731657386,
|
"lastModified": 1732261424,
|
||||||
"narHash": "sha256-Mm/JL8tFUS1SOmmZDPcswExUxzw0VpHcEyZI1h58CGA=",
|
"narHash": "sha256-8uTKUHkaU980J5kRnLYrdwmjZYB88eBGUk1oVgIUHFE=",
|
||||||
"owner": "danth",
|
"owner": "danth",
|
||||||
"repo": "stylix",
|
"repo": "stylix",
|
||||||
"rev": "5ab1207b2fdeb5a022f2dd7cccf6be760f1b150f",
|
"rev": "b667a340730dd3d0596083aa7c949eef01367c62",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
@ -122,6 +122,7 @@
|
||||||
./nixos/configs/stylix
|
./nixos/configs/stylix
|
||||||
./nixos/configs/lix.nix
|
./nixos/configs/lix.nix
|
||||||
./nixos/configs/nix.nix
|
./nixos/configs/nix.nix
|
||||||
|
./nixos/configs/ccache.nix
|
||||||
./nixos/configs/calendar.nix
|
./nixos/configs/calendar.nix
|
||||||
./nixos/configs/syncthing.nix
|
./nixos/configs/syncthing.nix
|
||||||
./nixos/configs/include-conf.nix
|
./nixos/configs/include-conf.nix
|
||||||
|
|
|
@ -3,7 +3,10 @@
|
||||||
#
|
#
|
||||||
{ config, ... }:
|
{ config, ... }:
|
||||||
{
|
{
|
||||||
programs.ccache.enable = true;
|
programs.ccache = {
|
||||||
|
enable = true;
|
||||||
|
cacheDir = "/nix/var/cache/ccache";
|
||||||
|
};
|
||||||
nix.settings.extra-sandbox-paths = [ config.programs.ccache.cacheDir ];
|
nix.settings.extra-sandbox-paths = [ config.programs.ccache.cacheDir ];
|
||||||
|
|
||||||
nixpkgs.overlays = [
|
nixpkgs.overlays = [
|
||||||
|
@ -13,6 +16,12 @@
|
||||||
export CCACHE_COMPRESS=1
|
export CCACHE_COMPRESS=1
|
||||||
export CCACHE_DIR="${config.programs.ccache.cacheDir}"
|
export CCACHE_DIR="${config.programs.ccache.cacheDir}"
|
||||||
export CCACHE_UMASK=007
|
export CCACHE_UMASK=007
|
||||||
|
|
||||||
|
ls -lah /tmp
|
||||||
|
ls -lah /nix
|
||||||
|
ls -lah /nix/var
|
||||||
|
ls -lah /nix/var/cache
|
||||||
|
|
||||||
if [ ! -d "$CCACHE_DIR" ]; then
|
if [ ! -d "$CCACHE_DIR" ]; then
|
||||||
echo "====="
|
echo "====="
|
||||||
echo "Directory '$CCACHE_DIR' does not exist"
|
echo "Directory '$CCACHE_DIR' does not exist"
|
||||||
|
@ -32,7 +41,5 @@
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
|
||||||
# Use this for kernel packages.
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,13 +35,6 @@
|
||||||
)
|
)
|
||||||
];
|
];
|
||||||
|
|
||||||
# Also provide an xserver and plasma, for when we need accessibility.
|
|
||||||
services.xserver.enable = true;
|
|
||||||
services.desktopManager.plasma6.enable = true;
|
|
||||||
|
|
||||||
# Don't let Plasma override TLP with PPD.
|
|
||||||
services.power-profiles-daemon.enable = lib.mkForce false;
|
|
||||||
|
|
||||||
# Enable espanso, when possible.
|
# Enable espanso, when possible.
|
||||||
services.espanso.enable = true;
|
services.espanso.enable = true;
|
||||||
|
|
||||||
|
@ -143,14 +136,18 @@
|
||||||
sddm = {
|
sddm = {
|
||||||
enable = true;
|
enable = true;
|
||||||
autoNumlock = true;
|
autoNumlock = true;
|
||||||
#wayland.enable = true;
|
wayland.enable = true;
|
||||||
#theme = "chili";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Use KDE connect.
|
# Use KDE connect.
|
||||||
programs.kdeconnect.enable = true;
|
programs.kdeconnect.enable = true;
|
||||||
|
|
||||||
|
# Also enable plasma, for when we need to use X11 for e.g. Talon.
|
||||||
|
services.xserver.enable = true;
|
||||||
|
services.desktopManager.plasma6.enable = true;
|
||||||
|
services.power-profiles-daemon.enable = lib.mkForce false;
|
||||||
|
|
||||||
# Enable sound with pipewire.
|
# Enable sound with pipewire.
|
||||||
hardware.pulseaudio.enable = false;
|
hardware.pulseaudio.enable = false;
|
||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
|
|
|
@ -179,6 +179,11 @@ in
|
||||||
default-column-width = { };
|
default-column-width = { };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Talon windows should show over other ones.
|
||||||
|
{
|
||||||
|
matches = [ { app-id = "talon"; } ];
|
||||||
|
}
|
||||||
|
|
||||||
# Bitwig needs to set its own width.
|
# Bitwig needs to set its own width.
|
||||||
{
|
{
|
||||||
matches = [ { app-id = "^com.bitwig.BitwigStudio$"; } ];
|
matches = [ { app-id = "^com.bitwig.BitwigStudio$"; } ];
|
||||||
|
|
|
@ -193,7 +193,7 @@ in
|
||||||
#
|
#
|
||||||
programs.waybar = {
|
programs.waybar = {
|
||||||
enable = true;
|
enable = true;
|
||||||
systemd.enable = true;
|
#systemd.enable = true;
|
||||||
|
|
||||||
# Replace the package with a patched one.
|
# Replace the package with a patched one.
|
||||||
package = pkgs.waybar.overrideAttrs (prev: {
|
package = pkgs.waybar.overrideAttrs (prev: {
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
{
|
{
|
||||||
# talon configuration
|
# talon configuration
|
||||||
|
# note: this *must* be recursive instead of one big link,
|
||||||
|
# since talon wants to stick files in here, too
|
||||||
home.file.".talon/user" = {
|
home.file.".talon/user" = {
|
||||||
source = ../../talon;
|
source = ../../talon;
|
||||||
recursive = true;
|
recursive = true;
|
||||||
|
@ -28,6 +30,9 @@
|
||||||
base=/home/deprekated/.talon/core
|
base=/home/deprekated/.talon/core
|
||||||
unset QT_AUTO_SCREEN_SCALE_FACTOR QT_SCALE_FACTOR
|
unset QT_AUTO_SCREEN_SCALE_FACTOR QT_SCALE_FACTOR
|
||||||
|
|
||||||
|
# Make sure this knows how to access our display.
|
||||||
|
DISPLAY=:0
|
||||||
|
|
||||||
${pkgs.steam-run}/bin/steam-run env LC_NUMERIC=C QT_PLUGIN_PATH="$base/lib/plugins" LD_LIBRARY_PATH="$base/lib:$base/resources/python/lib:$base/resources/pypy/lib" "$base/talon" "$@"
|
${pkgs.steam-run}/bin/steam-run env LC_NUMERIC=C QT_PLUGIN_PATH="$base/lib/plugins" LD_LIBRARY_PATH="$base/lib:$base/resources/python/lib:$base/resources/pypy/lib" "$base/talon" "$@"
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
|
@ -49,12 +49,18 @@
|
||||||
#
|
#
|
||||||
# Intel+NVIDIA / prime setup.
|
# Intel+NVIDIA / prime setup.
|
||||||
#
|
#
|
||||||
|
# Provide a configuration that uses the full GPU power of the system.
|
||||||
|
system.nixos.tags = [ "Intel" ];
|
||||||
|
|
||||||
services.xserver.videoDrivers = ["nvidia"];
|
# Disable the NVIDIA GPU unless we explicitly request it.
|
||||||
|
hardware.nvidiaOptimus.disable = true;
|
||||||
|
|
||||||
|
specialisation.optimus.configuration = {
|
||||||
|
system.nixos.tags = [ "NVIDIA" ];
|
||||||
|
services.xserver.videoDrivers = [ "nvidia" ];
|
||||||
|
|
||||||
# Set up the NVIDIA half of the GPU setup.
|
# Set up the NVIDIA half of the GPU setup.
|
||||||
# These are used only in the "enabled" configuration.
|
# These are used only in the "enabled" configuration.
|
||||||
system.nixos.tags = ["Intel"];
|
|
||||||
hardware.nvidia = {
|
hardware.nvidia = {
|
||||||
modesetting.enable = true;
|
modesetting.enable = true;
|
||||||
|
|
||||||
|
@ -75,12 +81,8 @@
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# Disable the NVIDIA GPU unless we explicitly request it.
|
# Include the NVIDIA X11.
|
||||||
hardware.nvidiaOptimus.disable = true;
|
boot.extraModulePackages = [ config.boot.kernelPackages.nvidia_x11 ];
|
||||||
|
|
||||||
# Provide a configuration that uses the full GPU power of the system.
|
|
||||||
specialisation.optimus.configuration = {
|
|
||||||
system.nixos.tags = lib.mkForce ["NVIDIA"];
|
|
||||||
|
|
||||||
# Don't disable optimus on this config.
|
# Don't disable optimus on this config.
|
||||||
hardware.nvidiaOptimus.disable = lib.mkForce false;
|
hardware.nvidiaOptimus.disable = lib.mkForce false;
|
||||||
|
@ -93,10 +95,22 @@
|
||||||
# Hardware config.
|
# Hardware config.
|
||||||
#
|
#
|
||||||
|
|
||||||
# Use the latest kernel, until the Dell stuff makes it into
|
# Use the latest kernel, and our patches, until the Dell+Alienware stuff makes it into
|
||||||
# more mainline kernels.~
|
# more mainline kernels. We'll include ccache so we can iterate sanely.
|
||||||
boot.kernelPackages = pkgs.linuxPackages_latest;
|
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||||
|
|
||||||
|
# Support the Dell Privacy Driver.
|
||||||
|
boot.kernelPatches = [
|
||||||
|
{
|
||||||
|
name = "enable-dell-privacy";
|
||||||
|
patch = ./00-support-dell-smbios.patch;
|
||||||
|
|
||||||
|
extraStructuredConfig = with lib.kernel; {
|
||||||
|
DELL_WMI_PRIVACY = yes;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = [
|
boot.initrd.availableKernelModules = [
|
||||||
"xhci_pci"
|
"xhci_pci"
|
||||||
"thunderbolt"
|
"thunderbolt"
|
||||||
|
@ -115,17 +129,6 @@
|
||||||
];
|
];
|
||||||
boot.extraModulePackages = [ config.boot.kernelPackages.acpi_call ];
|
boot.extraModulePackages = [ config.boot.kernelPackages.acpi_call ];
|
||||||
|
|
||||||
# Support the Dell Privacy Driver.
|
|
||||||
boot.kernelPatches = [ {
|
|
||||||
name = "enable-dell-privacy";
|
|
||||||
patch = ./00-support-dell-smbios.patch;
|
|
||||||
|
|
||||||
extraStructuredConfig = with lib.kernel; {
|
|
||||||
DELL_WMI_PRIVACY = yes;
|
|
||||||
};
|
|
||||||
|
|
||||||
} ];
|
|
||||||
|
|
||||||
# Support thunderbolt.
|
# Support thunderbolt.
|
||||||
services.hardware.bolt.enable = true;
|
services.hardware.bolt.enable = true;
|
||||||
|
|
||||||
|
|
|
@ -208,7 +208,7 @@ config = {
|
||||||
font_overrides = {
|
font_overrides = {
|
||||||
miko = 10,
|
miko = 10,
|
||||||
hinata = 16,
|
hinata = 16,
|
||||||
valere = 12,
|
valere = 10,
|
||||||
utol = 13,
|
utol = 13,
|
||||||
trailblazer = 12,
|
trailblazer = 12,
|
||||||
kanbaru = 12,
|
kanbaru = 12,
|
||||||
|
|
Loading…
Add table
Reference in a new issue