reformat according to rfc standard

This commit is contained in:
Thilo Billerbeck 2024-05-28 14:38:22 +02:00
parent 5da37d8133
commit 3bceb198a8
34 changed files with 480 additions and 306 deletions

View file

@ -1,8 +1,15 @@
{ pkgs, config, lib, inputs, ... }:
{
pkgs,
config,
lib,
inputs,
...
}:
let
nixGL = import ./../../home-manager/utils/nixGLWrap.nix { inherit pkgs config; };
in {
in
{
imports = [ ./../../home-manager/modules/machine.nix ];
machine = {

View file

@ -1,11 +1,21 @@
{ config, lib, modulesPath, ... }:
{
config,
lib,
modulesPath,
...
}:
{
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
boot = {
initrd = {
availableKernelModules = [ "nvme" "xhci_pci" "usb_storage" "sd_mod" ];
availableKernelModules = [
"nvme"
"xhci_pci"
"usb_storage"
"sd_mod"
];
kernelModules = [ ];
};
kernelModules = [ "kvm-amd" ];
@ -17,8 +27,7 @@
fsType = "ext4";
};
boot.initrd.luks.devices."luks-6f077715-c436-4254-acb2-66d8be0a0c55".device =
"/dev/disk/by-uuid/6f077715-c436-4254-acb2-66d8be0a0c55";
boot.initrd.luks.devices."luks-6f077715-c436-4254-acb2-66d8be0a0c55".device = "/dev/disk/by-uuid/6f077715-c436-4254-acb2-66d8be0a0c55";
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/877C-C918";
@ -36,6 +45,5 @@
# networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode =
lib.mkDefault config.hardware.enableRedistributableFirmware;
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View file

@ -4,7 +4,9 @@
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
extraSpecialArgs = { inherit inputs; };
extraSpecialArgs = {
inherit inputs;
};
users.thilo = {
imports = [ ./../../home-manager/modules/machine.nix ];
@ -16,7 +18,9 @@
isGraphical = true;
};
home.sessionVariables = { LD_LIBRARY_PATH = "${pkgs.libGL}/lib"; };
home.sessionVariables = {
LD_LIBRARY_PATH = "${pkgs.libGL}/lib";
};
};
};
}

View file

@ -1,7 +1,8 @@
{ pkgs, ... }:
{
imports = [ # Include the results of the hardware scan.
imports = [
# Include the results of the hardware scan.
./hardware-configuration.nix
./../../nixos/common.nix
./../../nixos/builders.nix
@ -15,14 +16,19 @@
boot.plymouth.enable = true;
# Setup keyfile
boot.initrd.secrets = { "/crypto_keyfile.bin" = null; };
boot.initrd.secrets = {
"/crypto_keyfile.bin" = null;
};
networking.hostName = "thilo-laptop"; # Define your hostname.
# Configure console keymap
console.keyMap = "de";
environment.gnome.excludePackages = with pkgs; [ tracker tracker-miners ];
environment.gnome.excludePackages = with pkgs; [
tracker
tracker-miners
];
hardware.bluetooth.enable = true;
@ -66,18 +72,16 @@
];
};
environment.systemPackages = with pkgs; [ brlaser brgenml1lpr ];
nixpkgs.config.permittedInsecurePackages = [
"nix-2.16.2"
environment.systemPackages = with pkgs; [
brlaser
brgenml1lpr
];
nixpkgs.config.permittedInsecurePackages = [ "nix-2.16.2" ];
xdg.portal = {
enable = true;
extraPortals = [
pkgs.kdePackages.xdg-desktop-portal-kde
];
extraPortals = [ pkgs.kdePackages.xdg-desktop-portal-kde ];
};
system.stateVersion = "23.05";

View file

@ -1,15 +1,27 @@
# 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, modulesPath, ... }:
{
config,
lib,
modulesPath,
...
}:
{
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
boot = {
initrd = {
availableKernelModules =
[ "nvme" "xhci_pci" "ahci" "usbhid" "uas" "usb_storage" "sd_mod" ];
availableKernelModules = [
"nvme"
"xhci_pci"
"ahci"
"usbhid"
"uas"
"usb_storage"
"sd_mod"
];
kernelModules = [ ];
};
kernelModules = [ "kvm-amd" ];
@ -44,6 +56,5 @@
# networking.interfaces.enp8s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode =
lib.mkDefault config.hardware.enableRedistributableFirmware;
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View file

@ -4,7 +4,9 @@
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
extraSpecialArgs = { inherit inputs; };
extraSpecialArgs = {
inherit inputs;
};
users.thilo = {
imports = [ ./../../home-manager/modules/machine.nix ];
@ -16,13 +18,17 @@
isGraphical = true;
};
/* xsession.pointerCursor = {
name = "Bibata-Modern-Classic";
package = pkgs.bibata-cursors;
size = 128;
}; */
/*
xsession.pointerCursor = {
name = "Bibata-Modern-Classic";
package = pkgs.bibata-cursors;
size = 128;
};
*/
home.sessionVariables = { LD_LIBRARY_PATH = "${pkgs.libGL}/lib"; };
home.sessionVariables = {
LD_LIBRARY_PATH = "${pkgs.libGL}/lib";
};
home.packages = with pkgs; [ libsForQt5.discover ];
};

View file

@ -58,7 +58,10 @@
programs.nix-ld.enable = true;
hardware.opengl = {
extraPackages = with pkgs; [ vaapiVdpau libvdpau-va-gl ];
extraPackages = with pkgs; [
vaapiVdpau
libvdpau-va-gl
];
};
hardware.bluetooth.enable = true;
@ -86,9 +89,7 @@
];
};
nixpkgs.config.permittedInsecurePackages = [
"nix-2.16.2"
];
nixpkgs.config.permittedInsecurePackages = [ "nix-2.16.2" ];
system.stateVersion = "23.05";
}

View file

@ -2,8 +2,12 @@
description = "Nixos config";
inputs = {
nixpkgs = { url = "github:NixOS/nixpkgs/nixos-unstable"; };
nixpkgs-update = { url = "github:ryantm/nixpkgs-update"; };
nixpkgs = {
url = "github:NixOS/nixpkgs/nixos-unstable";
};
nixpkgs-update = {
url = "github:ryantm/nixpkgs-update";
};
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
@ -31,21 +35,28 @@
};
nixConfig = {
substituters = [
"https://cache.nixos.org"
"https://nix-community.cachix.org"
"https://nixpkgs-update.cachix.org"
"https://devenv.cachix.org"
];
trusted-public-keys = [
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
"nixpkgs-update.cachix.org-1:6y6Z2JdoL3APdu6/+Iy8eZX2ajf09e4EE9SnxSML1W8="
"devenv.cachix.org-1:w1cLUi8dv3hnoSPGAuibQv+f9TZLr6cv/Hm9XgU50cw="
];
substituters = [
"https://cache.nixos.org"
"https://nix-community.cachix.org"
"https://nixpkgs-update.cachix.org"
"https://devenv.cachix.org"
];
trusted-public-keys = [
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
"nixpkgs-update.cachix.org-1:6y6Z2JdoL3APdu6/+Iy8eZX2ajf09e4EE9SnxSML1W8="
"devenv.cachix.org-1:w1cLUi8dv3hnoSPGAuibQv+f9TZLr6cv/Hm9XgU50cw="
];
};
outputs = { nixpkgs, home-manager, nixgl, w17, ... }@inputs:
outputs =
{
nixpkgs,
home-manager,
nixgl,
w17,
...
}@inputs:
let
system = "x86_64-linux";
pkgs = import nixpkgs {
@ -53,7 +64,8 @@
overlays = [ nixgl.overlay ];
allowUnfree = true;
};
in {
in
{
nixosConfigurations.thilo-pc = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
@ -61,7 +73,9 @@
./configs/thilo-pc/nixos.nix
./configs/thilo-pc/home.nix
];
specialArgs = { inherit inputs; };
specialArgs = {
inherit inputs;
};
};
nixosConfigurations.thilo-laptop = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
@ -70,28 +84,33 @@
./configs/thilo-laptop/nixos.nix
./configs/thilo-laptop/home.nix
];
specialArgs = { inherit inputs; };
specialArgs = {
inherit inputs;
};
};
homeConfigurations."thilo@thilo-pc" =
home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [
inputs.nix-index-database.hmModules.nix-index
./configs/fedora/home.nix
];
extraSpecialArgs = { inherit inputs nixgl; };
homeConfigurations."thilo@thilo-pc" = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [
inputs.nix-index-database.hmModules.nix-index
./configs/fedora/home.nix
];
extraSpecialArgs = {
inherit inputs nixgl;
};
homeConfigurations."thilo@thilo-laptop" =
home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [ ./configs/fedora/home.nix ];
extraSpecialArgs = { inherit inputs nixgl; };
};
homeConfigurations."thilo@thilo-laptop" = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [ ./configs/fedora/home.nix ];
extraSpecialArgs = {
inherit inputs nixgl;
};
homeConfigurations."thilo@thilo-pc-win" =
home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [ ./configs/wsl/home.nix ];
extraSpecialArgs = { inherit inputs nixgl; };
};
homeConfigurations."thilo@thilo-pc-win" = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [ ./configs/wsl/home.nix ];
extraSpecialArgs = {
inherit inputs nixgl;
};
};
};
}

View file

@ -1,5 +1,11 @@
{ lib, pkgs, config, ... }:
with lib; {
{
lib,
pkgs,
config,
...
}:
with lib;
{
imports = [
./../programs/atuin.nix
./../programs/alacritty.nix
@ -80,8 +86,7 @@ with lib; {
'';
".ssh/config_source" = {
source = ./../dotfiles/ssh-config;
onChange =
"cat ~/.ssh/config_source > ~/.ssh/config && chmod 600 ~/.ssh/config";
onChange = "cat ~/.ssh/config_source > ~/.ssh/config && chmod 600 ~/.ssh/config";
};
".gitignore".source = ./../dotfiles/.gitignore;
".config/pipewire/pipewire.conf.d/99-noise-suppression.conf".text = ''
@ -131,4 +136,3 @@ with lib; {
};
};
}

View file

@ -1,10 +1,15 @@
{ config, pkgs, lib, inputs, ... }:
{
config,
pkgs,
lib,
inputs,
...
}:
with lib;
let
nixGL = import ./../../home-manager/utils/nixGLWrap.nix { inherit pkgs config; };
electronFlags =
"--enable-features=UseOzonePlatform --ozone-platform=wayland --enable-wayland-ime --disable-gpu-shader-disk-cache -n";
electronFlags = "--enable-features=UseOzonePlatform --ozone-platform=wayland --enable-wayland-ime --disable-gpu-shader-disk-cache -n";
in
{
config = {
@ -16,14 +21,15 @@ in
})
];
home.packages = with pkgs;
home.packages =
with pkgs;
[
pkgs.nixVersions.latest # because remotely invoked updates are fun ;)
up
htop
rustc
cargo
nixfmt
nixfmt-rfc-style
nodejs
bun
deno
@ -40,12 +46,11 @@ in
hub
httpie
manix
(pkgs.writeShellScriptBin "ssh-fix-permissions"
(builtins.readFile ./../scripts/ssh-fix-permissions.sh))
(pkgs.writeShellScriptBin "yt-dlp-audio"
(builtins.readFile ./../scripts/yt-dlp-audio.sh))
(pkgs.writeShellScriptBin "nix-shell-init"
(builtins.readFile ./../scripts/nix-shell-init.sh))
(pkgs.writeShellScriptBin "ssh-fix-permissions" (
builtins.readFile ./../scripts/ssh-fix-permissions.sh
))
(pkgs.writeShellScriptBin "yt-dlp-audio" (builtins.readFile ./../scripts/yt-dlp-audio.sh))
(pkgs.writeShellScriptBin "nix-shell-init" (builtins.readFile ./../scripts/nix-shell-init.sh))
(pkgs.writeShellScriptBin "http-server" ''
${pkgs.caddy}/bin/caddy file-server --listen :2345
'')
@ -72,84 +77,94 @@ in
inputs.w17.packages.x86_64-linux.default
aichat
(pkgs.nerdfonts.override {
fonts = [ "JetBrainsMono" "FiraCode" "FiraMono" ];
fonts = [
"JetBrainsMono"
"FiraCode"
"FiraMono"
];
})
nix-output-monitor
nodePackages.pnpm
npm-check-updates
] ++ (
if (
!config.machine.isGeneric
) then [
toolbox
distrobox
] else
]
++ (
if (!config.machine.isGeneric) then
[
toolbox
distrobox
]
else
[ ]
) ++ (
if (
config.machine.isGraphical
) then [
(nixGL insomnia)
(nixGL comma)
] else
)
++ (
if (config.machine.isGraphical) then
[
(nixGL insomnia)
(nixGL comma)
]
else
[ ]
) ++ (
if (
config.machine.isGraphical && !config.machine.isGeneric
) then [
corefonts
vistafonts
jetbrains.webstorm
jetbrains.phpstorm
jetbrains.rust-rover
jetbrains.goland
element-desktop
ludusavi
dbeaver
onlyoffice-bin
spotify
vesktop
(lutris.override {
extraLibraries = _: [ gnome3.adwaita-icon-theme ];
extraPkgs = _: [
wineWowPackages.full
winetricks
gnome3.adwaita-icon-theme
];
})
bottles
protontricks
heroic
(vscode.override { commandLineArgs = electronFlags; })
quickemu
quickgui
trilium-desktop
anki
# inputs.muse-sounds-manager.packages.x86_64-linux.muse-sounds-manager
jetbrains-toolbox
mumble
prusa-slicer
trayscale
gnome.gnome-disk-utility
inkscape
musescore
obsidian
syncthingtray
reaper
yabridge
inputs.suyu.packages.x86_64-linux.suyu
inputs.nix-alien.packages.x86_64-linux.nix-alien
kdePackages.kdenlive
audacity
] else
)
++ (
if (config.machine.isGraphical && !config.machine.isGeneric) then
[
jetbrains.webstorm
jetbrains.phpstorm
jetbrains.rust-rover
jetbrains.goland
element-desktop
ludusavi
dbeaver
onlyoffice-bin
spotify
vesktop
(lutris.override {
extraLibraries = _: [ gnome3.adwaita-icon-theme ];
extraPkgs = _: [
wineWowPackages.full
winetricks
gnome3.adwaita-icon-theme
];
})
bottles
protontricks
heroic
(vscode.override { commandLineArgs = electronFlags; })
quickemu
quickgui
trilium-desktop
anki
# inputs.muse-sounds-manager.packages.x86_64-linux.muse-sounds-manager
jetbrains-toolbox
mumble
prusa-slicer
trayscale
gnome.gnome-disk-utility
inkscape
musescore
obsidian
syncthingtray
reaper
yabridge
inputs.suyu.packages.x86_64-linux.suyu
inputs.nix-alien.packages.x86_64-linux.nix-alien
kdePackages.kdenlive
audacity
]
else
[ ]
) ++ (if config.machine.isGnome then [
gnomeExtensions.blur-my-shell
gnomeExtensions.dash-to-panel
gnomeExtensions.user-themes
gnomeExtensions.vitals
gnomeExtensions.custom-accent-colors
] else
[ ]);
)
++ (
if config.machine.isGnome then
[
gnomeExtensions.blur-my-shell
gnomeExtensions.dash-to-panel
gnomeExtensions.user-themes
gnomeExtensions.vitals
gnomeExtensions.custom-accent-colors
]
else
[ ]
);
};
}

View file

@ -1,4 +1,8 @@
{ lib, stdenv, fetchFromGitHub }:
{
lib,
stdenv,
fetchFromGitHub,
}:
stdenv.mkDerivation rec {
pname = "docker-craft-cms-dev-env";
@ -17,8 +21,7 @@ stdenv.mkDerivation rec {
'';
meta = with lib; {
description =
"Docker image for local development of sites based on Craft CMS";
description = "Docker image for local development of sites based on Craft CMS";
homepage = "https://github.com/codemonauts/docker-craft-cms-dev-env";
license = licenses.mit;
maintainers = with maintainers; [ ];

View file

@ -1,24 +1,24 @@
{ pkgs }:
/* SOURCE: https://ostechnix.com/a-bash-function-to-extract-file-archives-of-various-types/ */
# SOURCE: https://ostechnix.com/a-bash-function-to-extract-file-archives-of-various-types/
pkgs.writeShellScriptBin "extract" ''
if [ -f $1 ] ; then
case $1 in
*.tar.bz2) ${pkgs.gnutar}/bin/tar xjf $1 ;;
*.tar.gz) ${pkgs.gnutar}/bin/tar $1 ;;
*.bz2) ${pkgs.bzip2}/bin/bunzip2 $1 ;;
*.rar) ${pkgs.rar}/bin/rar x $1 ;;
*.gz) ${pkgs.gzip}/bin/gunzip $1 ;;
*.tar) ${pkgs.gnutar}/bin/tar xf $1 ;;
*.tbz2) ${pkgs.gnutar}/bin/tar xjf $1 ;;
*.tgz) ${pkgs.gnutar}/bin/tar xzf $1 ;;
*.zip) ${pkgs.unzip}/bin/unzip $1 ;;
*.Z) ${pkgs.gzip}/bin/uncompress $1 ;;
*.7z) ${pkgs._7zz}/bin/7z x $1 ;;
*) echo "'$1' cannot be extracted via extract()" ;;
esac
else
echo "'$1' is not a valid file"
fi
''
if [ -f $1 ] ; then
case $1 in
*.tar.bz2) ${pkgs.gnutar}/bin/tar xjf $1 ;;
*.tar.gz) ${pkgs.gnutar}/bin/tar $1 ;;
*.bz2) ${pkgs.bzip2}/bin/bunzip2 $1 ;;
*.rar) ${pkgs.rar}/bin/rar x $1 ;;
*.gz) ${pkgs.gzip}/bin/gunzip $1 ;;
*.tar) ${pkgs.gnutar}/bin/tar xf $1 ;;
*.tbz2) ${pkgs.gnutar}/bin/tar xjf $1 ;;
*.tgz) ${pkgs.gnutar}/bin/tar xzf $1 ;;
*.zip) ${pkgs.unzip}/bin/unzip $1 ;;
*.Z) ${pkgs.gzip}/bin/uncompress $1 ;;
*.7z) ${pkgs._7zz}/bin/7z x $1 ;;
*) echo "'$1' cannot be extracted via extract()" ;;
esac
else
echo "'$1' is not a valid file"
fi
''

View file

@ -1,4 +1,8 @@
{ lib, buildNpmPackage, fetchFromGitHub }:
{
lib,
buildNpmPackage,
fetchFromGitHub,
}:
buildNpmPackage rec {
pname = "spx-gc";
@ -21,8 +25,7 @@ buildNpmPackage rec {
'';
meta = with lib; {
description =
"SPX is a graphics control client for live video productions and live streams using CasparCG, OBS, vMix, or similar software";
description = "SPX is a graphics control client for live video productions and live streams using CasparCG, OBS, vMix, or similar software";
homepage = "https://github.com/TuomoKu/SPX-GC#npminstall";
license = licenses.mit;
maintainers = with maintainers; [ ];

View file

@ -1,8 +1,14 @@
{ config, pkgs, lib, ... }:
{
config,
pkgs,
lib,
...
}:
let
nixGL = import ./../../home-manager/utils/nixGLWrap.nix { inherit pkgs config; };
in {
in
{
programs.alacritty = {
enable = if config.machine.isGraphical then true else false;
package = (nixGL pkgs.alacritty);

View file

@ -1,3 +1,5 @@
{
programs.atuin = { enable = true; };
programs.atuin = {
enable = true;
};
}

View file

@ -1 +1,5 @@
{ programs.bat = { enable = true; }; }
{
programs.bat = {
enable = true;
};
}

View file

@ -12,7 +12,9 @@
duplicate_action = "ask";
default_action = "apply";
};
badfiles = { check_on_import = "yes"; };
badfiles = {
check_on_import = "yes";
};
match = {
max_rec = {
track_length = "strong";

View file

@ -20,7 +20,10 @@ let
"kbfnbcaeplbcioakkpcpgfkobkghlhen" # Grammarly
];
isEnabled = if (config.machine.isGraphical && !config.machine.isGeneric) then true else false;
dictionaries = with pkgs.hunspellDictsChromium; [ en_US de_DE ];
dictionaries = with pkgs.hunspellDictsChromium; [
en_US
de_DE
];
commandLineArgs = [
"--enable-wayland-ime"
"--ignore-gpu-blocklist"
@ -30,7 +33,8 @@ let
"--enable-features=WaylandWindowDecorations,VaapiVideoDecoder,VaapiVideoEncoder,VaapiVideoDecodeLinuxGL,WebRTCPipeWireCapturer"
];
extensions = map (eid: { id = eid; }) chromium_extension;
in {
in
{
programs.chromium = {
inherit dictionaries commandLineArgs extensions;
enable = isEnabled;

View file

@ -1 +1,5 @@
{ programs.command-not-found = { enable = false; }; }
{
programs.command-not-found = {
enable = false;
};
}

View file

@ -15,18 +15,28 @@
ui = true;
pager = true;
};
log = { date = "short"; };
rerere = { enabled = "1"; };
log = {
date = "short";
};
rerere = {
enabled = "1";
};
core = {
whitespace = "fix,-indent-with-non-tab,trailing-space,cr-at-eol";
excludesfile = "~/.gitignore";
autocrlf = "input";
};
apply = { whitespace = "nowarn"; };
branch = { autosetuprebase = "always"; };
apply = {
whitespace = "nowarn";
};
branch = {
autosetuprebase = "always";
};
};
};
programs.git-credential-oauth = { enable = true; };
programs.git-credential-oauth = {
enable = true;
};
programs.gh.enable = true;
programs.gh-dash.enable = true;
programs.lazygit.enable = true;

View file

@ -1 +1,5 @@
{ programs.go = { enable = true; }; }
{
programs.go = {
enable = true;
};
}

View file

@ -1 +1,5 @@
{ programs.hstr = { enable = true; }; }
{
programs.hstr = {
enable = true;
};
}

View file

@ -3,6 +3,10 @@
{
programs.mpv = {
enable = if (config.machine.isGraphical && !config.machine.isGeneric) then true else false;
scripts = with pkgs.mpvScripts; [ autoload mpris sponsorblock ];
scripts = with pkgs.mpvScripts; [
autoload
mpris
sponsorblock
];
};
}

View file

@ -7,7 +7,9 @@
viAlias = true;
vimAlias = true;
vimdiffAlias = true;
coc = { enable = true; };
coc = {
enable = true;
};
extraConfig = ''
set title
set ignorecase

View file

@ -3,8 +3,12 @@
enable = true;
settings = {
add_newline = false;
character = { success_symbol = "[](bold white)"; };
package = { disabled = true; };
character = {
success_symbol = "[](bold white)";
};
package = {
disabled = true;
};
};
};
}

View file

@ -1 +1,5 @@
{ services.syncthing = { enable = true; }; }
{
services.syncthing = {
enable = true;
};
}

View file

@ -1,3 +1,5 @@
{
programs.thefuck = { enable = false; };
programs.thefuck = {
enable = false;
};
}

View file

@ -1,11 +1,13 @@
{ config, pkgs, ... }:
{ config, pkgs, ... }:
let
configPath = if config.machine.isGeneric then
"${config.home.homeDirectory}/.config/home-manager"
else
"${config.home.homeDirectory}/.nixos-config";
in {
configPath =
if config.machine.isGeneric then
"${config.home.homeDirectory}/.config/home-manager"
else
"${config.home.homeDirectory}/.nixos-config";
in
{
programs.topgrade = {
enable = true;
settings = {
@ -16,13 +18,18 @@ in {
pre_sudo = false;
cleanup = true;
skip_notify = true;
disable = [ "bun" "tldr" "flutter" ];
disable = [
"bun"
"tldr"
"flutter"
];
};
git.repos = [ configPath ];
firmware = { upgrade = true; };
firmware = {
upgrade = true;
};
pre_commands = {
flakeUpgrade =
"cd ${configPath} && ${pkgs.nixVersions.latest}/bin/nix flake update --commit-lock-file --verbose --repair";
flakeUpgrade = "cd ${configPath} && ${pkgs.nixVersions.latest}/bin/nix flake update --commit-lock-file --verbose --repair";
};
};
};

View file

@ -1,2 +1,5 @@
{ programs.yt-dlp = { enable = true; }; }
{
programs.yt-dlp = {
enable = true;
};
}

View file

@ -1,12 +1,9 @@
# Call once on import to load global context
{
pkgs,
config,
}:
{ pkgs, config }:
# Wrap a single package
pkg:
if config.nixGLPrefix == ""
then pkg
if config.nixGLPrefix == "" then
pkg
else
# Wrap the package's binaries with nixGL, while preserving the rest of
# the outputs and derivation attributes.
@ -17,12 +14,14 @@ else
${
# Heavily inspired by https://stackoverflow.com/a/68523368/6259505
pkgs.lib.concatStringsSep "\n" (map (outputName: ''
echo "Copying output ${outputName}"
set -x
cp -rs --no-preserve=mode "${pkg.${outputName}}" "''$${outputName}"
set +x
'') (old.outputs or ["out"]))
pkgs.lib.concatStringsSep "\n" (
map (outputName: ''
echo "Copying output ${outputName}"
set -x
cp -rs --no-preserve=mode "${pkg.${outputName}}" "''$${outputName}"
set +x
'') (old.outputs or [ "out" ])
)
}
rm -rf $out/bin/*
@ -34,4 +33,4 @@ else
done
shopt -u nullglob # Revert nullglob back to its normal default state
'';
}))
}))

View file

@ -24,7 +24,8 @@ let
chrome-stable-wrapper = pkgs.writeShellScriptBin "google-chrome-stable" ''
exec /usr/bin/google-chrome-stable ${chromeArgs} "$@"
'';
in {
in
{
home.packages = with pkgs; [
code-wrapper
chrome-wrapper

View file

@ -8,7 +8,10 @@
sandbox = relaxed
'';
settings = {
trusted-users = [ "root" "thilo" ];
trusted-users = [
"root"
"thilo"
];
substituters = [
"https://cache.nixos.org"
"https://nix-community.cachix.org"

View file

@ -8,71 +8,76 @@
nix = {
distributedBuilds = true;
buildMachines = [ {
hostName = "build1.darmstadt.ccc.de";
protocol = "ssh";
sshUser = "avocadoom";
sshKey = "/home/thilo/.ssh/id_darmstadt-ccc-de";
systems = [
"i686-linux"
"x86_64-linux"
];
maxJobs = 4;
speedFactor = 6;
supportedFeatures = [
"big-parallel"
"kvm"
"nixos-test"
];
} {
hostName = "build2.darmstadt.ccc.de";
protocol = "ssh";
sshUser = "avocadoom";
sshKey = "/home/thilo/.ssh/id_darmstadt-ccc-de";
systems = [
"i686-linux"
"x86_64-linux"
];
maxJobs = 4;
speedFactor = 6;
supportedFeatures = [
"big-parallel"
"kvm"
"nixos-test"
];
} {
hostName = "build3.darmstadt.ccc.de";
protocol = "ssh";
sshUser = "avocadoom";
sshKey = "/home/thilo/.ssh/id_darmstadt-ccc-de";
systems = [
"i686-linux"
"x86_64-linux"
];
maxJobs = 4;
speedFactor = 6;
supportedFeatures = [
"big-parallel"
"kvm"
"nixos-test"
];
} {
hostName = "build4.darmstadt.ccc.de";
protocol = "ssh";
sshUser = "avocadoom";
sshKey = "/home/thilo/.ssh/id_darmstadt-ccc-de";
systems = [
"i686-linux"
"x86_64-linux"
];
# this node has half the cpu of the others
maxJobs = 2;
speedFactor = 6;
supportedFeatures = [
"big-parallel"
"kvm"
"nixos-test"
];
} ];
buildMachines = [
{
hostName = "build1.darmstadt.ccc.de";
protocol = "ssh";
sshUser = "avocadoom";
sshKey = "/home/thilo/.ssh/id_darmstadt-ccc-de";
systems = [
"i686-linux"
"x86_64-linux"
];
maxJobs = 4;
speedFactor = 6;
supportedFeatures = [
"big-parallel"
"kvm"
"nixos-test"
];
}
{
hostName = "build2.darmstadt.ccc.de";
protocol = "ssh";
sshUser = "avocadoom";
sshKey = "/home/thilo/.ssh/id_darmstadt-ccc-de";
systems = [
"i686-linux"
"x86_64-linux"
];
maxJobs = 4;
speedFactor = 6;
supportedFeatures = [
"big-parallel"
"kvm"
"nixos-test"
];
}
{
hostName = "build3.darmstadt.ccc.de";
protocol = "ssh";
sshUser = "avocadoom";
sshKey = "/home/thilo/.ssh/id_darmstadt-ccc-de";
systems = [
"i686-linux"
"x86_64-linux"
];
maxJobs = 4;
speedFactor = 6;
supportedFeatures = [
"big-parallel"
"kvm"
"nixos-test"
];
}
{
hostName = "build4.darmstadt.ccc.de";
protocol = "ssh";
sshUser = "avocadoom";
sshKey = "/home/thilo/.ssh/id_darmstadt-ccc-de";
systems = [
"i686-linux"
"x86_64-linux"
];
# this node has half the cpu of the others
maxJobs = 2;
speedFactor = 6;
supportedFeatures = [
"big-parallel"
"kvm"
"nixos-test"
];
}
];
};
}

View file

@ -1,4 +1,10 @@
{ config, pkgs, lib, inputs, ... }:
{
config,
pkgs,
lib,
inputs,
...
}:
{
imports = [ ./../nix.nix ];
@ -10,13 +16,15 @@
# This will additionally add your inputs to the system's legacy channels
# Making legacy nix commands consistent as well, awesome!
nixPath = lib.mapAttrsToList (key: value: "${key}=${value.to.path}")
config.nix.registry;
nixPath = lib.mapAttrsToList (key: value: "${key}=${value.to.path}") config.nix.registry;
};
nixpkgs = {
config = {
permittedInsecurePackages = [ "electron-24.8.6" "electron-25.9.0" ];
permittedInsecurePackages = [
"electron-24.8.6"
"electron-25.9.0"
];
allowUnfree = true;
};
};
@ -78,7 +86,12 @@
};
};
environment.systemPackages = with pkgs; [ git zsh kitty steamtinkerlaunch ];
environment.systemPackages = with pkgs; [
git
zsh
kitty
steamtinkerlaunch
];
networking.networkmanager.enable = true;
@ -91,7 +104,9 @@
pulse.enable = true;
jack.enable = true;
};
tailscale = { enable = true; };
tailscale = {
enable = true;
};
flatpak.enable = true;
avahi = {
enable = true;