collate recent changes back to master
This commit is contained in:
commit
92ed39cb83
258 changed files with 5169 additions and 16379 deletions
213
system/configuration.nix
Executable file → Normal file
213
system/configuration.nix
Executable file → Normal file
|
@ -1,178 +1,85 @@
|
|||
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
# let
|
||||
# lemurs = callPackage ./system/syspkgs/lemurs.nix {};
|
||||
# ly = callPackage ./system/syspkgs/ly.nix {};
|
||||
# in
|
||||
{
|
||||
inputs,
|
||||
lib,
|
||||
pkgs,
|
||||
mainUser,
|
||||
...
|
||||
}:
|
||||
{
|
||||
|
||||
imports = [
|
||||
# where are we ?
|
||||
#./wollomi.nix
|
||||
./adrift.nix
|
||||
# ./quiver.nix
|
||||
|
||||
# home manager should exist for users
|
||||
<home-manager/nixos>
|
||||
|
||||
./cachix.nix
|
||||
|
||||
# declarative cachix
|
||||
(import (builtins.fetchTarball "https://github.com/jonascarpay/declarative-cachix/archive/master.tar.gz"))
|
||||
|
||||
./modules/network.nix
|
||||
./modules/term.nix
|
||||
./modules/bootloader.nix
|
||||
./modules/sound.nix
|
||||
./modules/sydney.nix
|
||||
./modules/docs.nix
|
||||
./modules/nix-meta.nix
|
||||
./modules/anal-retentive.nix
|
||||
./modules/wm.nix
|
||||
./modules/culr.nix
|
||||
];
|
||||
|
||||
cachix = [
|
||||
"nix-community"
|
||||
];
|
||||
|
||||
nix.extraOptions = ''
|
||||
experimental-features = nix-command flakes
|
||||
keep-outputs = true
|
||||
keep-derivations = true
|
||||
'';
|
||||
|
||||
hardware.enableRedistributableFirmware = true;
|
||||
hardware.enableAllFirmware = true;
|
||||
|
||||
environment.pathsToLink = [ "/share/zsh" ];
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.systemd-boot.consoleMode = "max";
|
||||
boot.loader.timeout = 3;
|
||||
|
||||
boot.tmpOnTmpfs = true;
|
||||
boot.tmp.useTmpfs = true;
|
||||
|
||||
networking.networkmanager.enable = true; # Easiest to use and most distros use this by default.
|
||||
# services.udev.extraHwdb = ''
|
||||
# evdev:atkbd:*
|
||||
# KEYBOARD_KEY_3a=esc
|
||||
# '';
|
||||
services.xserver.xkb.options = "caps:swapescape";
|
||||
# services.xserver.xkb.extraLayouts."swap" = {
|
||||
# description = "caps swap";
|
||||
# languages = [ "eng" ];
|
||||
# symbolsFile = pkgs.writeText "keyboard" ''
|
||||
# xkb_symbols
|
||||
# {
|
||||
# include "us(basic)"
|
||||
|
||||
time.timeZone = "Australia/Sydney";
|
||||
time.hardwareClockInLocalTime = true;
|
||||
# key <CAPS> {[ Escape ]};
|
||||
# }
|
||||
# '';
|
||||
# };
|
||||
console.useXkbConfig = true;
|
||||
services.libinput.enable = true;
|
||||
|
||||
# Select internationalisation properties.
|
||||
i18n.defaultLocale = "en_AU.UTF-8";
|
||||
i18n.supportedLocales = [ "en_AU.UTF-8/UTF-8" ];
|
||||
console = {
|
||||
font = "Lat2-Terminus16";
|
||||
useXkbConfig = true; # use xkbOptions in tty.
|
||||
};
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
hardware.opengl.enable = true;
|
||||
hardware.opengl.driSupport32Bit = true;
|
||||
hardware.graphics.enable = true;
|
||||
hardware.graphics.enable32Bit = true;
|
||||
|
||||
#input stuff
|
||||
services.xserver.enable = true;
|
||||
services.xserver.xkbOptions = "caps:escape";
|
||||
services.xserver.layout = "us";
|
||||
services.xserver.libinput.enable = true;
|
||||
services.xserver.displayManager.lightdm.enable = false; # gets installed by default..
|
||||
services.udisks2.enable = true;
|
||||
|
||||
services.greetd = {
|
||||
enable = true;
|
||||
settings = {
|
||||
default_session = {
|
||||
command = "${pkgs.greetd.tuigreet}/bin/tuigreet -r -g \"what's good\" --time --sessions ${config.services.xserver.displayManager.sessionData.desktops}/share/wayland-sessions";
|
||||
user = "greeter";
|
||||
};
|
||||
};
|
||||
};
|
||||
# services.flatpak.enable = true;
|
||||
|
||||
security.polkit.enable = true;
|
||||
|
||||
programs.dconf.enable = true;
|
||||
|
||||
xdg.autostart.enable = true;
|
||||
xdg.portal.enable = true;
|
||||
|
||||
services.resolved = {
|
||||
enable = true;
|
||||
fallbackDns = [ "103.1.206.179" "168.138.8.38" "168.138.12.137" ];
|
||||
dnssec = "false";
|
||||
};
|
||||
|
||||
# services.tailscale.enable = true;
|
||||
|
||||
# Enable sound.
|
||||
security.rtkit.enable = true;
|
||||
services.pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
pulse.enable = true;
|
||||
# jack.enable = true;
|
||||
# TODO - move these to more appropriate places
|
||||
environment.systemPackages = builtins.attrValues {
|
||||
inherit (pkgs)
|
||||
curl
|
||||
eza
|
||||
git
|
||||
;
|
||||
};
|
||||
|
||||
qt.enable = true;
|
||||
qt.style = "kvantum";
|
||||
qt.platformTheme = "qt5ct";
|
||||
programs.nix-index-database.comma.enable = true;
|
||||
programs.nix-index.enableZshIntegration = false;
|
||||
programs.nix-index.enableBashIntegration = false;
|
||||
|
||||
programs.zsh.enable = true;
|
||||
users.defaultUserShell = pkgs.zsh;
|
||||
|
||||
services.tailscale.enable = true;
|
||||
# gnome/freedesktop compat stuff
|
||||
programs.dconf.enable = true;
|
||||
services.gvfs.enable = true;
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
|
||||
rnix-lsp
|
||||
# give cpuset to user
|
||||
systemd.services."user@".serviceConfig.Delegate = "memory pids cpu cpuset";
|
||||
|
||||
tailscale
|
||||
|
||||
home-manager
|
||||
cachix
|
||||
|
||||
helix
|
||||
ark
|
||||
|
||||
curl
|
||||
|
||||
git
|
||||
|
||||
zsh
|
||||
|
||||
nix-index
|
||||
comma
|
||||
|
||||
];
|
||||
|
||||
networking.wg-quick.interfaces = {
|
||||
mullvad = {
|
||||
address = [ "10.66.224.186/32" ];
|
||||
dns = [ "10.64.0.1" ];
|
||||
privateKey = "WD0CNYazB8D19SJvwz/TdPqoWgWCGfTwA7mim16q7UM=";
|
||||
peers = [
|
||||
{
|
||||
publicKey = "QhE7I5TnUuc3gLqSeF9KhOr0oew5v03bpj0EHrEOR2M=";
|
||||
allowedIPs = [ "0.0.0.0/0" ];
|
||||
endpoint = "89.44.10.66:51820";
|
||||
persistentKeepalive = 25;
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
networking.firewall.enable = true;
|
||||
networking.firewall = {
|
||||
trustedInterfaces = [ "tailscale0" ];
|
||||
checkReversePath = "loose";
|
||||
};
|
||||
|
||||
systemd.services.fixNetworkingForTailscale = {
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
after = [ "network.target" "wg-quick-mullvad.service" ];
|
||||
description = "fix the damn routing table";
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
User = "root";
|
||||
ExecStart = ''${pkgs.bash}/bin/bash -c 'if [[ "$( ${pkgs.iproute2}/bin/ip rule | grep -e "62:.*52" | wc -l)" -eq 0 ]]; then ${pkgs.iproute2}/bin/ip rule add pref 62 table 52; fi'''';
|
||||
# ExecStop = ''${pkgs.iproute2}/bin/ip rule del pref 62 table 52'';
|
||||
};
|
||||
};
|
||||
|
||||
security.pam.services.waylock = {
|
||||
text =''
|
||||
auth include login
|
||||
'';
|
||||
};
|
||||
|
||||
|
||||
system.stateVersion = "22.05"; # Did you read the comment?
|
||||
systemd.user.extraConfig = "LogLevel=debug";
|
||||
|
||||
system.nixos.tags = [ "fatcock-xxl" ];
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue