20 Commits

Author SHA1 Message Date
adriangl b40c6e13ee sway and desktop updates 2024-09-23 12:54:23 +02:00
adriangl 622a6afcb0 wallpaper 2024-09-17 18:14:26 +02:00
adriangl 8df49e4231 kinda cursed mod randomly swapped 2024-09-13 00:32:00 +02:00
adriangl a34f88aa05 colors base 2024-09-11 18:34:20 +02:00
adriangl 2d193c1f98 nix colors apathy kinda working 2024-09-11 15:34:19 +02:00
adriangl 7ae6520740 colors test 2024-09-11 14:57:36 +02:00
adriangl 8a2ddf5534 ha 2024-09-11 12:03:23 +02:00
Adrian G L b0248a8881 Update sound.nix, and ozai 2024-09-08 00:48:15 +02:00
Adrian G L 2aa4242d34 Update sound.nix 2024-08-30 01:58:26 +02:00
Adrian G L 7112636080 Update video.nix 2024-08-30 01:53:40 +02:00
Adrian G L 79aa5facad Update office.nix 2024-08-30 01:51:48 +02:00
Adrian G L 70ca4972bb Update configuration.nix 2024-08-30 01:49:07 +02:00
adriangl 94a1dc2b54 dm fixes 2024-06-25 23:27:00 +02:00
adriangl 4e3cbae0d7 sddm update 2024-06-25 20:53:02 +02:00
Adrian Lauterer 2d66279421 updated mysql 2024-06-24 12:21:02 +02:00
adriangl e5af2ed5d5 some zswap by default 2024-06-20 20:15:07 +02:00
Adrian Lauterer 0500370bae boromir: cuda 2024-06-20 17:17:44 +02:00
Adrian Lauterer 3b167273ee sql db 2024-06-19 16:57:15 +02:00
Adrian Lauterer 1c389114a1 disabled stylix 2024-06-18 16:32:23 +02:00
Adrian Lauterer c038d0baf6 boromir updater 2024-06-18 16:31:11 +02:00
32 changed files with 1203 additions and 228 deletions
Generated
+214
View File
@@ -1,5 +1,119 @@
{
"nodes": {
"base16": {
"inputs": {
"fromYaml": "fromYaml"
},
"locked": {
"lastModified": 1708890466,
"narHash": "sha256-LlrC09LoPi8OPYOGPXegD72v+//VapgAqhbOFS3i8sc=",
"owner": "SenchoPens",
"repo": "base16.nix",
"rev": "665b3c6748534eb766c777298721cece9453fdae",
"type": "github"
},
"original": {
"owner": "SenchoPens",
"repo": "base16.nix",
"type": "github"
}
},
"base16-fish": {
"flake": false,
"locked": {
"lastModified": 1622559957,
"narHash": "sha256-PebymhVYbL8trDVVXxCvZgc0S5VxI7I1Hv4RMSquTpA=",
"owner": "tomyun",
"repo": "base16-fish",
"rev": "2f6dd973a9075dabccd26f1cded09508180bf5fe",
"type": "github"
},
"original": {
"owner": "tomyun",
"repo": "base16-fish",
"type": "github"
}
},
"base16-foot": {
"flake": false,
"locked": {
"lastModified": 1696725948,
"narHash": "sha256-65bz2bUL/yzZ1c8/GQASnoiGwaF8DczlxJtzik1c0AU=",
"owner": "tinted-theming",
"repo": "base16-foot",
"rev": "eedbcfa30de0a4baa03e99f5e3ceb5535c2755ce",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-foot",
"type": "github"
}
},
"base16-helix": {
"flake": false,
"locked": {
"lastModified": 1696727917,
"narHash": "sha256-FVrbPk+NtMra0jtlC5oxyNchbm8FosmvXIatkRbYy1g=",
"owner": "tinted-theming",
"repo": "base16-helix",
"rev": "dbe1480d99fe80f08df7970e471fac24c05f2ddb",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-helix",
"type": "github"
}
},
"base16-kitty": {
"flake": false,
"locked": {
"lastModified": 1665001328,
"narHash": "sha256-aRaizTYPpuWEcvoYE9U+YRX+Wsc8+iG0guQJbvxEdJY=",
"owner": "kdrag0n",
"repo": "base16-kitty",
"rev": "06bb401fa9a0ffb84365905ffbb959ae5bf40805",
"type": "github"
},
"original": {
"owner": "kdrag0n",
"repo": "base16-kitty",
"type": "github"
}
},
"base16-tmux": {
"flake": false,
"locked": {
"lastModified": 1696725902,
"narHash": "sha256-wDPg5elZPcQpu7Df0lI5O8Jv4A3T6jUQIVg63KDU+3Q=",
"owner": "tinted-theming",
"repo": "base16-tmux",
"rev": "c02050bebb60dbb20cb433cd4d8ce668ecc11ba7",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-tmux",
"type": "github"
}
},
"base16-vim": {
"flake": false,
"locked": {
"lastModified": 1663659192,
"narHash": "sha256-uJvaYYDMXvoo0fhBZUhN8WBXeJ87SRgof6GEK2efFT0=",
"owner": "chriskempson",
"repo": "base16-vim",
"rev": "3be3cd82cd31acfcab9a41bad853d9c68d30478d",
"type": "github"
},
"original": {
"owner": "chriskempson",
"repo": "base16-vim",
"type": "github"
}
},
"devenv": {
"inputs": {
"flake-compat": "flake-compat_2",
@@ -75,6 +189,22 @@
"type": "github"
}
},
"flake-compat_3": {
"flake": false,
"locked": {
"lastModified": 1673956053,
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-utils": {
"inputs": {
"systems": "systems"
@@ -111,6 +241,22 @@
"type": "github"
}
},
"fromYaml": {
"flake": false,
"locked": {
"lastModified": 1689549921,
"narHash": "sha256-iX0pk/uB019TdBGlaJEWvBCfydT6sRq+eDcGPifVsCM=",
"owner": "SenchoPens",
"repo": "fromYaml",
"rev": "11fbbbfb32e3289d3c631e0134a23854e7865c84",
"type": "github"
},
"original": {
"owner": "SenchoPens",
"repo": "fromYaml",
"type": "github"
}
},
"gitignore": {
"inputs": {
"nixpkgs": [
@@ -134,6 +280,23 @@
"type": "github"
}
},
"gnome-shell": {
"flake": false,
"locked": {
"lastModified": 1698794309,
"narHash": "sha256-/TIkZ8y5Wv3QHLFp79Poao9fINurKs5pa4z0CRe+F8s=",
"owner": "GNOME",
"repo": "gnome-shell",
"rev": "a7c169c6c29cf02a4c392fa0acbbc5f5072823e7",
"type": "github"
},
"original": {
"owner": "GNOME",
"ref": "45.1",
"repo": "gnome-shell",
"type": "github"
}
},
"home-manager": {
"inputs": {
"nixpkgs": [
@@ -234,6 +397,22 @@
"type": "github"
}
},
"nixos-hardware": {
"locked": {
"lastModified": 1725885300,
"narHash": "sha256-5RLEnou1/GJQl+Wd+Bxaj7QY7FFQ9wjnFq1VNEaxTmc=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "166dee4f88a7e3ba1b7a243edb1aca822f00680e",
"type": "github"
},
"original": {
"owner": "NixOS",
"ref": "master",
"repo": "nixos-hardware",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1706098335,
@@ -422,10 +601,12 @@
"home-manager": "home-manager",
"matrix-synapse-next": "matrix-synapse-next",
"nix-minecraft": "nix-minecraft",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs_3",
"ozai": "ozai",
"ozai-webui": "ozai-webui",
"sops-nix": "sops-nix",
"stylix": "stylix",
"unstable": "unstable"
}
},
@@ -467,6 +648,39 @@
"type": "github"
}
},
"stylix": {
"inputs": {
"base16": "base16",
"base16-fish": "base16-fish",
"base16-foot": "base16-foot",
"base16-helix": "base16-helix",
"base16-kitty": "base16-kitty",
"base16-tmux": "base16-tmux",
"base16-vim": "base16-vim",
"flake-compat": "flake-compat_3",
"gnome-shell": "gnome-shell",
"home-manager": [
"home-manager"
],
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1713897030,
"narHash": "sha256-ZPr1R0d9MVmyRX/+XpYsBdLBEBqYMtuyaAjYgWHMloU=",
"owner": "bluskript",
"repo": "stylix",
"rev": "6bc871ab352c9f18d1179daab9e392a4d46393af",
"type": "github"
},
"original": {
"owner": "bluskript",
"repo": "stylix",
"rev": "6bc871ab352c9f18d1179daab9e392a4d46393af",
"type": "github"
}
},
"systems": {
"locked": {
"lastModified": 1681028828,
+11 -26
View File
@@ -8,10 +8,11 @@
home-manager.url = "github:nix-community/home-manager/release-24.05";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
stylix.url = "github:bluskript/stylix/6bc871ab352c9f18d1179daab9e392a4d46393af";
stylix.inputs.nixpkgs.follows = "nixpkgs";
stylix.inputs.home-manager.follows = "home-manager";
nix-colors.url = "github:misterio77/nix-colors";
# stylix.url = "github:bluskript/stylix/6bc871ab352c9f18d1179daab9e392a4d46393af";
# stylix.inputs.nixpkgs.follows = "nixpkgs";
# stylix.inputs.home-manager.follows = "home-manager";
ozai.url = "git+https://git.pvv.ntnu.no/Projects/ozai.git";
@@ -34,7 +35,7 @@
outputs = {
self
, home-manager
, stylix
, nix-colors
, matrix-synapse-next
, ozai
, ozai-webui
@@ -51,26 +52,6 @@
in
{
nixosConfigurations = {
boromir = nixpkgs.lib.nixosSystem {
system = "x84_64-linux";
specialArgs = {
inherit inputs;
};
modules = [
# Overlays-module makes "pkgs.unstable" available in configuration.nix
({ config, pkgs, ... }: { nixpkgs.overlays = [ overlay-unstable ]; })
./machines/boromir/configuration.nix
sops-nix.nixosModules.sops
nixos-hardware.nixosModules.lenovo-thinkpad-p1
home-manager.nixosModules.home-manager {
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users."gunalx" = import ./home/full.nix;
}
];
};
eowyn = nixpkgs.lib.nixosSystem {
system = "x84_64-linux";
@@ -87,9 +68,11 @@
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users."gunalx" = import ./home/full.nix;
home-manager.backupFileExtension = "bac";
home-manager.extraSpecialArgs = {inherit nix-colors inputs;};
}
#need to choose one. The nixos one has bootloader and display manager in addition to the home manager one.
inputs.stylix.nixosModules.stylix
#inputs.stylix.nixosModules.stylix
#inputs.stylix.homeManagerModules.stylix
];
};
@@ -134,6 +117,8 @@
./machines/elrond/configuration.nix
({ config, pkgs, ... }: { nixpkgs.overlays = [ overlay-unstable ]; })
sops-nix.nixosModules.sops
inputs.ozai.nixosModules.ozai
inputs.ozai-webui.nixosModules.ozai-webui
];
};
};
+23
View File
@@ -0,0 +1,23 @@
{ lib, stdenv, pkgs }:
stdenv.mkDerivation rec {
pname = "wallpapers";
version = "1.0";
src = pkgs.fetchurl {
url = "file://./";
sha256 = lib.fakeSha256;
};
installPhase = ''
mkdir -p $out/share/wallpapers
cp -r * $out/share/wallpapers/
'';
meta = with lib; {
description = "My Collection of wallpapers";
license = licenses.unfree;
maintainers = with maintainers; [ adriangl ];
};
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Before

Width:  |  Height:  |  Size: 3.3 MiB

After

Width:  |  Height:  |  Size: 3.3 MiB

+9 -7
View File
@@ -1,6 +1,7 @@
{ pkgs, lib, ... }:
{
imports = [
./sshconfig.nix
];
programs.nix-index = {
@@ -15,23 +16,30 @@
};
programs.bash = {
enable = true;
shellAliases = {
"rebuild" = "sudo nixos-rebuild switch --update-input nixpkgs --update-input unstable --no-write-lock-file --refresh --flake git+https://github.com/adrlau/nix-dotfiles.git --upgrade";
"nixedit" = "vim /etc/nixos/nix-dotfiles/.";
"nixdir" = "cd /etc/nixos/nix-dotfiles";
"," = "comma ";
"gst" = "git status";
"gsw" = "git switch";
"gcm" = "git commit -m ";
"gca" = "git commit --amend";
"gaa" = "git add -A";
"gb" = "git branch";
"sl" = "eza";
"ls" = "eza";
"lls" = "ls";
"la" = "eza -la";
"tree" = "eza -T";
"neofetch" = "fastfetch";
};
historyControl = ["ignoreboth" "erasedups"];
historyControl = ["ignoredups" "ignorespace" "erasedups"];
historyIgnore = [ "ls" "cd" "exit" "cd .." ".." "la"];
};
@@ -69,12 +77,6 @@
];
};
home.stateVersion = "23.05";
}
+76
View File
@@ -0,0 +1,76 @@
{ pkgs, config, nix-colors, ... }:
let
nix-colors-lib = nix-colors.lib.contrib { inherit pkgs; };
background = "010C09";
foreground = "FFFFFF";
offWhite = "F0FFF8";
teal = "60C89A";
red = "E64553";
blue = "58B5E0";
green = "79E05B";
purple = "6B5BDC";
magenta = "80D1A0";
cyan = "5FE2C5";
yellow = "F5D24D";
orange = "FF8800";
pink = "FF4EC9";
grey = "888B8E";
lightGrey = "F3FCF7";
darkTeal = "154E44";
lighterTeal = "2C7A6A";
lightTeal = "B0E8DA";
in{
imports = [
nix-colors.homeManagerModules.default
];
# colorScheme = nix-colors-lib.colorSchemeFromPicture {
# path = ./assets/evergarden-telescope.jpg;
# variant = "dark";
# };
colorScheme = {
slug = "cyberpunk-apathy";
name = "Cyberpunk Apathy";
author = "Adrian G L (based on Apathy by Jannik Siebert)";
palette = {
# Base16 color values with context-specific usage comments
base00 = background; # Default background
base01 = darkTeal; # Lighter background (used for status bars)
base02 = lighterTeal; # Selection background
base03 = teal; # Comments, secondary content, line highlighting
base04 = lightTeal; # Darker foreground (used for status bars)
base05 = foreground; # Default text and foreground
base06 = lightGrey; # Lighter foreground (used for inactive text)
base07 = offWhite; # Lightest background (used for highlights)
base08 = teal; # Variables, constants, markup link text
base09 = blue; # Integers, booleans, constants, and XML attributes
base0A = magenta; # Classes, headings, keywords
base0B = cyan; # Strings, literals, escape sequences
base0C = green; # Support and error colors
base0D = cyan; # Functions, methods, function names
base0E = red; # Keywords, storage, selectors
base0F = yellow; # Deprecated or obsolete code
};
};
gtk = {
enable = true;
theme = {
name = "Adwaita-dark";
package = pkgs.gnome.gnome-themes-extra;
};
};
qt = {
enable = true;
platformTheme.name = "adwaita";
style.name = "adwaita-dark";
};
}
+36 -24
View File
@@ -1,4 +1,4 @@
{ pkgs, lib, ... }:
{ pkgs, lib, config, ... }:
{
home.packages = with pkgs; [
foot
@@ -6,28 +6,7 @@
programs.foot.enable = true;
programs.foot.settings = {
##lets stylix handle this instead.
#colors = {
# alpha="0.9";
# foreground="ffffff";
# background="000000";
# regular0="2e3436";
# regular1="cc0000";
# regular2="c4e9a0";
# regular3="cc4a00";
# regular4="c3465a";
# regular5="c75507";
# regular6="c06989";
# regular7="cd3d7c";
# bright0="555753";
# bright1="5ef292";
# bright2="58ae23";
# bright3="5fce94";
# bright4="5729fc";
# bright5="5ad7fa";
# bright6="534e2e";
# bright7="5eeeee";
#};
main = {
term = "xterm-256color";
font = "0xproto:size=12";
@@ -35,7 +14,40 @@
};
mouse = {
hide-when-typing = "yes";
};
};
colors = {
alpha = "0.7";
#set based on https://github.com/tinted-theming/base16-foot/blob/main/colors/base16-apathy.ini and https://github.com/tinted-theming/base16-schemes/blob/main/apathy.yaml
foreground = "${config.colorScheme.palette.base05}";
background = "${config.colorScheme.palette.base00}";
regular0 = "${config.colorScheme.palette.base00}";
regular1 = "${config.colorScheme.palette.base08}";
regular2 = "${config.colorScheme.palette.base0B}";
regular3 = "${config.colorScheme.palette.base0A}";
regular4 = "${config.colorScheme.palette.base0D}";
regular5 = "${config.colorScheme.palette.base0E}";
regular6 = "${config.colorScheme.palette.base0C}";
regular7 = "${config.colorScheme.palette.base05}";
bright0 = "${config.colorScheme.palette.base03}";
bright1 = "${config.colorScheme.palette.base08}";
bright2 = "${config.colorScheme.palette.base0B}";
bright3 = "${config.colorScheme.palette.base0A}";
bright4 = "${config.colorScheme.palette.base0D}";
bright5 = "${config.colorScheme.palette.base0E}";
bright6 = "${config.colorScheme.palette.base0C}";
bright7 = "${config.colorScheme.palette.base07}";
selection-foreground = "${config.colorScheme.palette.base00}";
selection-background = "${config.colorScheme.palette.base0A}";
};
};
+9 -1
View File
@@ -4,13 +4,21 @@
./base.nix
./code.nix
./sway.nix
./stylix.nix
./colors.nix
#./stylix.nix
#inputs.nix-colors.homeManagerModules.default
];
home.packages = with pkgs; [
firefox
gimp
dconf
feh
ripgrep
eza
bottom
killall
];
}
+20 -20
View File
@@ -6,26 +6,26 @@
services.kanshi = {
enable = true;
settings = [
{ profile.name = "undocked";
profile.outputs = [
{
criteria = "eDP-1";
}
];
profile.exec = [
"\${pkg.sway}/bin/swaymsg workspace 1, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 2, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 3, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 4, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 5, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 6, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 7, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 8, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 9, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 10, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 0, move workspace to eDP-1"
];
{
profile.name = "undocked";
profile.outputs = [
{
criteria = "eDP-1";
}
];
profile.exec = [
"\${pkg.sway}/bin/swaymsg workspace 1, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 2, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 3, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 4, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 5, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 6, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 7, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 8, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 9, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 10, move workspace to eDP-1"
"\${pkg.sway}/bin/swaymsg workspace 0, move workspace to eDP-1"
];
}
];
+56
View File
@@ -0,0 +1,56 @@
{ pkgs, lib, config, ... }:
{
imports = [
];
home.packages = with pkgs; [
openssh
sshfs
];
services.ssh-agent.enable = true;
programs.ssh = {
enable = true;
compression = true;
matchBlocks = {
"*.pvv.ntnu.no" = {
user="adriangl";
};
"*.ntnu.no !*.pvv.ntnu.no" = {
user="adriangl";
proxyJump="isvegg.pvv.ntnu.no";
};
"snotra" = {
user="adriangl";
proxyJump="adriangl@isvegg.pvv.ntnu.no";
hostname="snotra.idi.ntnu.no";
};
#pvv
"pvv" = {
user="adriangl";
hostname="login.pvv.ntnu.no";
};
"isvegg" = {
user="adriangl";
hostname="isvegg.pvv.ntnu.no";
};
#home
"aragon" = {
port = 6969;
user="gunalx";
hostname="100.74.34.149";
};
};
extraConfig = "";
};
}
+30 -35
View File
@@ -1,47 +1,42 @@
{ pkgs, }:
{ pkgs, lib, ... }:
{
stylix.enable = true;
stylix.image = pkgs.fetchurl {
url = "https://www.pixelstalk.net/wp-content/uploads/2016/05/Epic-Anime-Awesome-Wallpapers.jpg";
sha256 = "enQo3wqhgf0FEPHj2coOCvo7DuZv+x5rL/WIo4qPI50=";
stylix.image = ./assets/wallpaper.jpg;
stylix.base16Scheme = "${pkgs.base16-schemes}/share/themes/apathy.yaml";
stylix.fonts = {
monospace = {
package = pkgs.nerdfonts.override {fonts = [JetBrainsMono];};
name = JetBrainsMono Nerd Font Mono;
};
sansSerif = {
package = pkgs.dejavu_fonts;
name = DejaVu Sans;
};
serif = {
package = pkgs.dejavu_fonts;
name = DejaVu Serif;
};
};
stylix.base16Scheme = ${pkgs.base16-schemes}/share/themes/apathy.yaml;
# stylix.fonts = {
# monospace = {
# package = pkgs.nerdfonts.override {fonts = [“JetBrainsMono”];};
# name = “JetBrainsMono Nerd Font Mono”;
# };
# sansSerif = {
# package = pkgs.dejavu_fonts;
# name = “DejaVu Sans”;
# };
# serif = {
# package = pkgs.dejavu_fonts;
# name = “DejaVu Serif”;
# };
# };
# stylix.fonts.sizes = {
# applications = 16;
# terminal = 12;
# desktop = 12;
# popups = 12;
# };
stylix.fonts.sizes = {
applications = 16;
terminal = 12;
desktop = 12;
popups = 12;
};
stylix.opacity = {
applications = 1.0;
terminal = 0.8;
desktop = 1.0;
popups = 1.0;
applications = 0.9;
terminal = 0.7;
desktop = 0.9;
popups = 0.9;
};
stylix.polarity = dark # “light” or “either”
stylix.polarity = "dark"; # “light” or “either”
}
+88 -48
View File
@@ -1,47 +1,64 @@
{ pkgs, config, lib, ... }:
let
#wallpapers = import ./wallpapers { inherit lib pkgs; };
palette = config.colorScheme.palette;
idlelock = "brightnessctl -d intel_backlight s 10% && swaylock && brightnessctl -d intel_backlight s 50% ";
in
{
imports = [
./wofi.nix
./foot.nix
./fonts.nix
./kanshi.nix
./waybar.nix
./foot.nix
./fonts.nix
./kanshi.nix
./swaylock.nix
#./assets/wallpapers
];
#home.packages = [
# wallpapers
#];
home.packages = with pkgs; [
wl-clipboard
libsForQt5.qt5ct
qt6Packages.qt6ct
pass-wayland
pass-wayland
wev
#term
foot
## possible other options
#kitty
#alacrity
#disply and background
wdisplays
kanshi
wlr-randr
swaybg
#swaybg
swww
#bar applets and notifications
waybar
networkmanagerapplet
networkmanager
libsForQt5.networkmanager-qt
mako
mako
#lockscreen and related
wleave
wleave
swayidle
swaylock-effects
#swaylock-effects
#swaylock-fancy #migth change to this default may look prettier.
#ligth and sound
brightnessctl
brightnessctl
pavucontrol
#sway automation
@@ -49,11 +66,13 @@
swayest-workstyle
#launcher
wofi
wofi-emoji
bemoji
#wofi
#wofi-emoji
bemoji
fuzzel
#screenshots
#screenshots
grim
slurp
@@ -75,16 +94,13 @@
];
qt.enable = true;
qt.style.name = "breeze";
home.sessionVariables = {
MOZ_ENABLE_WAYLAND = "1";
MOZ_USE_XINPUT2 = "1";
XDG_SESSION_TYPE = "wayland";
XDG_CURRENT_DESKTOP = "sway";
XKB_DEFAULT_OPTIONS = "terminate:ctrl_alt_bksp,caps:escape,altwin:swap_alt_win";
XKB_DEFAULT_OPTIONS = "terminate:ctrl_alt_bksp,caps:escape";
SDL_VIDEODRIVER = "wayland";
# needs qt5.qtwayland in systemPackages
@@ -96,19 +112,29 @@
_JAVA_AWT_WM_NONREPARENTING = 1;
# gtk applications on wayland
# export GDK_BACKEND=wayland
GTK_BACKEND="wayland";
#WALLPAPER_DIR="${wallpapers}/share/wallpapers";
WALLPAPER_DIR="/home/gunalx/Pictures/wallpapers";
};
wayland.windowManager.sway = let
wayland.windowManager.sway = let
cfg = config.wayland.windowManager.sway;
in {
wrapperFeatures.gtk = true;
enable = true;
systemd.enable = true;
config = rec {
modifier = "Mod4";
terminal = "footclient";
menu = "wofi --show run";
terminal = "footclient";
menu = "fuzzel -b ${palette.base00}BB -t ${palette.base05}FF";
bars = [{
fonts.size = 16.0;
command = "waybar";
@@ -116,6 +142,19 @@ in {
}];
startup = [
{command = "foot --server";}
#wallpaper
{command = "swww-daemon";}
{command = "while true; do for wallpaper in $WALLPAPER_DIR/*; do swww img \"$wallpaper\"; sleep 15; done; done;";}
#idlelock
{command = ''swayidle \
timeout 120 ${idlelock} \
timeout 180 'swaymsg "output * dpms off"' \
resume 'swaymsg "output * dpms on"' \
before-sleep ${idlelock}
'';}
{command = "firefox";}
{command = "nm-applet";}
{command = "autotiling-rs";}
@@ -131,6 +170,10 @@ in {
"${cfg.config.down}" = "resize grow height 10 px or 10 ppt";
"${cfg.config.up}" = "resize shrink height 10 px or 10 ppt";
"${cfg.config.right}" = "resize grow width 10 px or 10 ppt";
"Left" = "resize shrink width 10 px or 10 ppt";
"Down" = "resize grow height 10 px or 10 ppt";
"Up" = "resize shrink height 10 px or 10 ppt";
"Right" = "resize grow width 10 px or 10 ppt";
};
keybindings = {
"${cfg.config.modifier}+Return" = "exec ${cfg.config.terminal}";
@@ -200,9 +243,7 @@ in {
"${cfg.config.modifier}+r" = "mode resize";
"XF86AudioRaiseVolume" = "exec pactl set-sink-volume @DEFAULT_SINK@ +5%";
"F3" = "exec pactl set-sink-volume @DEFAULT_SINK@ +5%";
"XF86AudioLowerVolume" = "exec pactl set-sink-volume @DEFAULT_SINK@ -5%";
"F2" = "exec pactl set-sink-volume @DEFAULT_SINK@ -5%";
"XF86AudioMute" = "exec pactl set-sink-mute @DEFAULT_SINK@ toggle";
"XF86AudioMicMute" = "exec pactl set-source-mute @DEFAULT_SOURCE@ toggle";
"XF86MonBrightnessDown" = "exec brightnessctl set 5%-";
@@ -216,32 +257,37 @@ in {
"${cfg.config.modifier}+Shift+c" = "exec code";
"${cfg.config.modifier}+f11" = "exec grim -g \"$(slurp)\" ~/Pictures/screenshots/\"screenshot-`date +%F-%T`\".png";
"${cfg.config.modifier}+Print" = "exec grim -g \"$(slurp)\" ~/Pictures/screenshots/\"screenshot-`date +%F-%T`\".png";
"Mod1+tab" = "workspace back_and_forth";
"${cfg.config.modifier}+m" = "exec ${idlelock}";
"ctrl+space" = "exec xkb_switch_layout next"; #TODO:verify
"${cfg.config.modifier}+tab" = "workspace next";
"Alt+tab" = "workspace back_and_forth";
};
};
extraConfig = ''
set $mod Mod4
input type:keyboard xkb_capslock disabled
input type:keyboard xkb_numlock enabled
input type:keyboard {
xkb_capslock disabled
xkb_numlock enabled
xkb_layout us,no
xkb_options :
}
xwayland enable
assign [class="autostart1"] workspace 1
assign [class="autostart2"] workspace 2
assign [class="autostart3"] workspace 3
assign [class="autostart4"] workspace 4
smart_borders no_gaps
smart_borders no_gaps
smart_gaps on
gaps inner 5
default_border pixel 1
default_floating_border pixel 2
titlebar_border_thickness 1
client.focused #80a0ff #303030 #c6c6c6 #80a0ff #80a0ff
client.focused_inactive #80a0ff #303030 #c6c6c6 #80a0ff #80a0ff
client.unfocused #80a0ff #080808 #c6c6c6 #80a0ff #303030
client.urgent #80a0ff #80a0ff #080808 #80a0ff
client.focused #${palette.base0D} #${palette.base00} #${palette.base05} #${palette.base0D} #${palette.base0D}
client.focused_inactive #${palette.base0D} #${palette.base00} #${palette.base05} #${palette.base0D} #${palette.base0D}
client.unfocused #${palette.base0D} #${palette.base03} #${palette.base05} #${palette.base0D} #${palette.base00}
client.urgent #${palette.base0D} #${palette.base0D} #${palette.base03} #${palette.base0D} #${palette.base00}
for_window [title="(?:Open|Save) (?:File|Folder|As)"] floating enable
for_window [title="(?:Open|Save) (?:File|Folder|As)"] resize set 1920 1080
@@ -257,12 +303,6 @@ in {
for_window [app_id="dolphin"] floating enable
for_window [app_id="file-manager"] floating enable
#client.focused $accent $accent #000000 #00ffcc $accent
#client.focused_inactive #000000 #000000 #ff9900 #000000 #000000
#client.unfocused #000000 #000000 #00ffcc #000000 #000000
#client.urgent #ff0000 #ff0000 #00ffcc #ff0000 #ff0000
#client.placeholder #000000 #000000 #00ffcc #000000 #000000
#client.background #000000
'';
};
}
+35
View File
@@ -0,0 +1,35 @@
{ pkgs, inputs, lib, config, nix-colors, ... }:
let
palette = config.colorScheme.palette;
in
{
imports = [
];
programs.swaylock = {
enable = true;
package = pkgs.swaylock-effects;
settings = {
color = palette.base00;
screenshots = true;
grace = 15;
clock = true;
submit-on-touch = true;
indicator-idle-visible = true;
indicator-radius = 100;
indicator-thickness = 7;
ring-color = palette.base05;
key-hl-color = palette.base03;
tect-color = palette.base00;
line-colot = palette.base00;
innside-color = palette.base04;
seperator-color = palette.base00;
fade-in = 0.1;
effect-scale = 0.6;
effect-blur = "7x3";
};
};
}
+376
View File
@@ -0,0 +1,376 @@
{ pkgs, inputs, lib, config, nix-colors, ... }:
{
imports = [
];
programs.waybar = let
inherit (inputs.nix-colors.lib.conversions) hexToRGBString;
inherit (config.colorscheme) colors;
inherit (config.colorscheme) palette;
toRGBA = color: opacity: "rgba(${hexToRGBString "," (lib.removePrefix "#" color)},${opacity})";
in {
enable = true;
style = ''
* {
/* `otf-font-awesome` is required to be installed for icons */
font-family: FontAwesome, Roboto, Helvetica, Arial, sans-serif;
font-size: 13px;
}
window#waybar {
background-color: #${palette.base00};
border-bottom: 3px solid #${palette.base03};
color: ${toRGBA palette.base05 "0.7"};
transition-property: background-color;
transition-duration: .5s;
}
window#waybar.hidden {
opacity: 0.2;
}
/*
window#waybar.empty {
background-color: transparent;
}
window#waybar.solo {
background-color: #${palette.base07};
}
*/
window#waybar.termite {
background-color: #${palette.base03};
}
window#waybar.chromium {
background-color: #${palette.base00};
border: none;
}
button {
/* Use box-shadow instead of border so the text isn't offset */
box-shadow: inset 0 -3px transparent;
/* Avoid rounded borders under each button name */
border: none;
border-radius: 0;
}
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
button:hover {
background: inherit;
box-shadow: inset 0 -3px #${palette.base05};
}
/* you can set a style on hover for any module like this */
#pulseaudio:hover {
background-color: #${palette.base0A};
}
#workspaces button {
padding: 0 5px;
background-color: transparent;
color: #${palette.base05};
}
#workspaces button:hover {
background: #${palette.base00};
}
#workspaces button.focused {
background-color: #${palette.base03};
box-shadow: inset 0 -3px #${palette.base05};
}
#workspaces button.urgent {
background-color: #${palette.base08};
}
#mode {
background-color: #${palette.base03};
box-shadow: inset 0 -3px #${palette.base05};
}
#clock,
#battery,
#cpu,
#memory,
#disk,
#temperature,
#backlight,
#network,
#pulseaudio,
#wireplumber,
#custom-media,
#tray,
#mode,
#idle_inhibitor,
#scratchpad,
#power-profiles-daemon,
#mpd {
padding: 0 10px;
color: #${palette.base05};
}
#window,
#workspaces {
margin: 0 4px;
}
/* If workspaces is the leftmost module, omit left margin */
.modules-left > widget:first-child > #workspaces {
margin-left: 0;
}
/* If workspaces is the rightmost module, omit right margin */
.modules-right > widget:last-child > #workspaces {
margin-right: 0;
}
#clock {
background-color: #${palette.base03};
}
#battery {
background-color: #${palette.base05};
color: #${palette.base00};
}
#battery.charging, #battery.plugged {
color: #${palette.base05};
background-color: #${palette.base0B};
}
@keyframes blink {
to {
background-color: #${palette.base05};
color: #${palette.base00};
}
}
/* Using steps() instead of linear as a timing function to limit cpu usage */
#battery.critical:not(.charging) {
background-color: #${palette.base08};
color: #${palette.base05};
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: steps(12);
animation-iteration-count: infinite;
animation-direction: alternate;
}
#power-profiles-daemon {
padding-right: 15px;
}
/*0b also looked good though. */
#power-profiles-daemon.performance {
background-color: #${palette.base04};
color: #${palette.base00};
}
#power-profiles-daemon.balanced {
background-color: #${palette.base04};
color: #${palette.base00};
}
#power-profiles-daemon.power-saver {
background-color: #${palette.base04};
color: #${palette.base00};
}
label:focus {
background-color: #${palette.base04};
color: #${palette.base00};
}
#cpu {
background-color: #${palette.base04};
color: #${palette.base00};
}
#memory {
background-color: #${palette.base04};
color: #${palette.base00};
}
#disk {
background-color: #${palette.base04};
color: #${palette.base00};
}
#backlight {
background-color: #${palette.base04};
color: #${palette.base00};
}
#network {
background-color: #${palette.base04};
color: #${palette.base00};
}
#network.disconnected {
background-color: #${palette.base0E};
color: #${palette.base00};
}
#pulseaudio {
background-color: #${palette.base0A};
color: #${palette.base00};
}
#pulseaudio.muted {
background-color: #${palette.base0E};
color: #${palette.base03};
}
#wireplumber {
background-color: #${palette.base07};
color: #${palette.base00};
}
#wireplumber.muted {
background-color: #${palette.base0E};
color: #${palette.base00};
}
#custom-media {
background-color: #${palette.base04};
color: #${palette.base00};
min-width: 100px;
}
#custom-media.custom-spotify {
background-color: #${palette.base04};
color: #${palette.base00};
}
#custom-media.custom-vlc {
background-color: #${palette.base04};
color: #${palette.base00};
}
#temperature {
background-color: #${palette.base04};
color: #${palette.base00};
}
#temperature.critical {
background-color: #${palette.base0E};
color: #${palette.base00};
}
#tray {
background-color: #${palette.base04};
color: #${palette.base00};
}
#tray > .passive {
-gtk-icon-effect: dim;
}
#tray > .needs-attention {
-gtk-icon-effect: highlight;
background-color: #${palette.base07};
color: #${palette.base00};
}
#idle_inhibitor {
background-color: #${palette.base04};
color: #${palette.base00};
}
#idle_inhibitor.activated {
background-color: #${palette.base06};
color: #${palette.base00};
}
#mpd {
background-color: #${palette.base04};
color: #${palette.base00};
}
#mpd.disconnected {
background-color: #${palette.base06};
color: #${palette.base00};
}
#mpd.stopped {
background-color: #${palette.base0C};
}
#mpd.paused {
background-color: #${palette.base0B};
}
#language {
background: #${palette.base04};
color: #${palette.base00};
padding: 0 5px;
margin: 0 5px;
min-width: 16px;
}
#keyboard-state {
background: #${palette.base04};
color: #${palette.base00};
padding: 0 0px;
margin: 0 5px;
min-width: 16px;
}
#keyboard-state > label {
padding: 0 5px;
}
#keyboard-state > label.locked {
background: #${palette.base04};
color: #${palette.base00};
}
#scratchpad {
background: #${palette.base00};
color: #${palette.base00};
}
#scratchpad.empty {
background-color: transparent;
}
#privacy {
padding: 0;
color: #${palette.base04};
}
#privacy-item {
color: #${palette.base00};
padding: 0 5px;
}
#privacy-item.screenshare {
background-color: #${palette.base00};
}
#privacy-item.audio-in {
background-color: #${palette.base0B};
}
#privacy-item.audio-out {
background-color: #${palette.base0D};
}
'';
};
}
+4
View File
@@ -44,6 +44,10 @@
# Enable networking
networking.networkmanager.enable = true;
nixpkgs.config.permittedInsecurePackages = [
"python3.11-youtube-dl-2021.12.17"
];
# Enable the X11 windowing system.
services.xserver.enable = true;
+9
View File
@@ -10,6 +10,10 @@
./hardware-configuration.nix
./nvidia.nix
../../profiles/desktop.nix
../../services/podman.nix
../../services/postgres.nix
../../services/mysql.nix
../../services/ollama.nix
];
# Use the systemd-boot EFI boot loader.
@@ -54,6 +58,11 @@
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
git
wget
poetry
python3
llama-cpp
ollama
];
# Some programs need SUID wrappers, can be configured further or are
+19 -4
View File
@@ -6,7 +6,11 @@
driSupport = true;
driSupport32Bit = true;
};
nixpkgs.config = {
allowUnfree = true;
cudaSupport = true;
};
# Load nvidia driver for Xorg and Wayland
services.xserver.videoDrivers = ["nvidia"];
#boot with nvidia kernel module
@@ -41,10 +45,21 @@
# Enable the CUDA toolkit
#install packages
environment.systemPackages = with pkgs; [
#cudaPackages.cudnn
#cudaPackages.cudatoolkit
cudaPackages.cudatoolkit
cudaPackages.cudnn
nvtopPackages.nvidia
gcc
cudaPackages.nccl
cmake
llama-cpp
python3Packages.pip
#cudaPackages.cuda_cudart
#xgboostWithCuda
#libxcrypt-legacy
#cudaPackages.setupCudaHook
#cudaPackages.markForCudatoolkitRootHook
#cudaPackages.cuda_cudart.static
#pkgs.cudaPackages.libcublas
#cudaPackages.tensorrt_8_6_0 #needs to be added manually, to the store and is a pain because of the license agreement and garbage collection
];
+1
View File
@@ -10,6 +10,7 @@
../../profiles/webhost.nix
../../profiles/base.nix
../../services/gate.nix
../../services/ozai.nix
./routes.nix
];
+13 -3
View File
@@ -77,18 +77,28 @@
proxyPass = "http://100.84.215.84:8081";
};
#basicAuthFile = config.sops.secrets."nginx/defaultpass".path;
};
};
#virtualHosts."azul.256.no" = {
# forceSSL = true;
# useACMEHost = config.networking.domain;
# locations."/" = {
# proxyWebsockets = true;
# proxyPass = "http://100.84.215.84:8085";
# };
# #basicAuthFile = config.sops.secrets."nginx/defaultpass".path;
#};
virtualHosts."azul.256.no" = {
forceSSL = true;
useACMEHost = config.networking.domain;
locations."/" = {
proxyWebsockets = true;
proxyPass = "http://100.84.215.84:8085";
proxyPass = "http://localhost:8085";
};
#basicAuthFile = config.sops.secrets."nginx/defaultpass".path;
};
#virtualHosts."shiori.lauterer.it" = config.services.nginx.virtualHosts."archive.lauterer.it";
#virtualHosts."pocket.lauterer.it" = config.services.nginx.virtualHosts."archive.lauterer.it";
+1 -1
View File
@@ -22,7 +22,7 @@
../../services/wordpress.nix
../../services/torrent.nix
../../services/mc.nix
../../services/ozai.nix
#../../services/ozai.nix
#../../services/stableDiffusion.nix
../../services/rss.nix
../../services/shiori.nix
+11 -1
View File
@@ -24,6 +24,11 @@ imports =
#just allow unfree, im fine with it.
nixpkgs.config.allowUnfree = true;
zramSwap = {
enable = true;
memoryPercent = 25;
};
# Set your time zone.
time.timeZone = "Europe/Oslo";
@@ -65,7 +70,12 @@ imports =
alias lls='ls'
'';
#TODO: ssh hosts.
#some insecure packages
nixpkgs.config.permittedInsecurePackages = [
"python3.11-youtube-dl-2021.12.17"
];
#nix stuff
nix.settings.experimental-features = [ "nix-command" "flakes" ];
+40 -10
View File
@@ -18,6 +18,8 @@ imports =
#libsForQt5.qt5ct
#qt6Packages.qt6ct
where-is-my-sddm-theme
];
fonts.packages = with pkgs; [
@@ -33,6 +35,8 @@ imports =
nerdfonts
ubuntu_font_family
];
# Enable CUPS to print documents.
@@ -40,23 +44,49 @@ imports =
security.polkit.enable = true;
services.displayManager.sddm.wayland.enable = true;
services.displayManager.sddm.enable = true;
security.pam.services.swaylock = {};
security.pam.services.swaylock-effects = {};
services.displayManager = {
enable = true;
sessionPackages = with pkgs; [ sway ];
sddm = {
enable = true;
theme = "${pkgs.where-is-my-sddm-theme}";
wayland.enable = true;
wayland.compositor = "kwin";
autoNumlock = true;
enableHidpi = true;
};
};
services.desktopManager.plasma6.enable = true;
services.desktopManager.plasma6.enableQt5Integration = true;
qt.platformTheme = "kde";
#bluetooth
services.blueman.enable = true;
hardware.bluetooth.powerOnBoot = true; # powers up the default Bluetooth controller on boot
hardware.bluetooth = {
enable = true; # enables support for Bluetooth
settings = {
General = {
Enable = "Source,Sink,Media,Socket";
Experimental = true;
};
};
};
#automount
services.udisks2.enable = true;
#qt.platformTheme = "kde";
# Configure keymap in X11
services.xserver.xkb = {
layout = "no";
variant = "";
layout = "us,no";
variant = ",";
};
#TODO: add sway with home manager to get proper dotfiles. Possibly in its own sway file.
#TODO: add hyperland.
}
+39
View File
@@ -0,0 +1,39 @@
{ config, pkgs, lib, ... }:
{
imports =
[
./base.nix
./ai.nix
];
environment.systemPackages = with pkgs; [
texliveFull
pandoc
pandoc-plantuml-filter
plantuml
haskellPackages.pandoc-plot
pandoc-imagine
pandoc-katex
haskellPackages.pandoc-cli
pandoc-include
markdownlint-cli
libsForQt5.kate
poetry
gcc
cargo
rustup
mpi
gnuplot
];
}
-8
View File
@@ -32,21 +32,13 @@ imports =
reveal-md
markdownlint-cli
markdown-anki-decks
pro-office-calculator
gnucash
wcalc
libsForQt5.kcalc
libsForQt5.kate
];
}
+4 -10
View File
@@ -8,10 +8,12 @@ imports =
# Enable sound with pipewire.
sound.enable = true;
hardware.pulseaudio.enable = false;
#hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
audio.enable = true;
systemWide = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
@@ -33,7 +35,7 @@ imports =
synthesia
vital
picoloop
bespokesynth-with-vst2
#bespokesynth-with-vst2 #always takes ages compiling
fmsynth
polyphone #soundfont editor
@@ -51,22 +53,15 @@ imports =
whistle
cozy
lollypop
deadbeef
deadbeef-with-plugins
libsForQt5.elisa
radiotray-ng
shortwave
radioboat
qradiolink
pithos
gnomeExtensions.internet-radio
gqrx
headset
nuclear
spotifyd
spotifywm
spotify-qt
spotify-tray
@@ -77,5 +72,4 @@ imports =
programs.dconf.enable = true; #needed for easyeffects for some reason
}
+1 -12
View File
@@ -66,19 +66,8 @@ imports =
];
services.xserver.displayManager.sddm.enable = true;
qt.platformTheme = "qt5ct";
# Configure keymap in X11
services.xserver = {
layout = "no";
xkbVariant = "";
};
#TODO: add sway config with home manager to get proper dotfiles.
#qt.platformTheme = "qt5ct";
}
+4 -9
View File
@@ -14,8 +14,9 @@ imports =
obs-studio
obs-cli
## constantly breaking, more hassle than useful.
#obs-studio-plugins.obs-3d-effect
obs-studio-plugins.wlrobs
#obs-studio-plugins.wlrobs
#obs-studio-plugins.obs-ndi
#obs-studio-plugins.waveform
#obs-studio-plugins.obs-vaapi
@@ -28,23 +29,17 @@ imports =
#obs-studio-plugins.obs-source-record
#obs-studio-plugins.obs-replay-source
#obs-studio-plugins.obs-source-switcher
obs-studio-plugins.obs-backgroundremoval
obs-studio-plugins.obs-pipewire-audio-capture
#obs-studio-plugins.obs-backgroundremoval
#obs-studio-plugins.obs-pipewire-audio-capture
shotcut
libsForQt5.kdenlive
olive-editor
subtitleedit
vlc
mpv
];
programs.dconf.enable = true; #needed for easyeffects for some reason
}
+43
View File
@@ -0,0 +1,43 @@
{ config, pkgs, ... }:
{
environment.systemPackages = with pkgs; [
mariadb
mysql-workbench
jetbrains.datagrip
];
services.mysql = {
enable = true;
package = pkgs.mariadb;
settings = {
mysql = {
local-infile = true;
default-character-set="utf8mb4";
};
mysqld = {
key_buffer_size = "6G";
table_cache = 1600;
log-error = "/var/log/mysql_err.log";
plugin-load-add = [ "server_audit" "ed25519=auth_ed25519" ];
collation-server = "utf8mb4_danish_ci";
local_infile = 1;
secure-file-priv = "";
sql_mode = "IGNORE_SPACE,STRICT_ALL_TABLES,NO_ENGINE_SUBSTITUTION";
init_connect = "SET NAMES 'utf8mb4' COLLATE 'utf8mb4_danish_ci'";
};
mysqldump = {
quick = true;
max_allowed_packet = "16M";
};
};
};
}
+2 -1
View File
@@ -14,6 +14,7 @@
hostname = config.networking.hostName;
in
if hostname == "galadriel" then "cuda"
else if hostname == "boromir" then "cuda"
else if hostname == "aragorn" then "rocm"
else null);
@@ -26,4 +27,4 @@
};
basicAuthFile = config.sops.secrets."nginx/defaultpass".path;
};
}
}
-8
View File
@@ -11,12 +11,4 @@
host = "0.0.0.0";
};
services.nginx.virtualHosts."ozai.${config.networking.hostName}.${config.networking.domain}" = {
forceSSL = true;
#useACMEHost = config.networking.domain; #not sure if this will work, unless
locations."/" = {
proxyWebsockets = true;
proxyPass = "http://${config.services.ozai.host}:${config.services.ozai.port}";
};
};
}
+29
View File
@@ -0,0 +1,29 @@
{ config, pkgs, ... }:
{
environment.systemPackages = with pkgs; [
postgresql
pgadmin4
pgadmin4-desktopmode
pgmanage
postgresql_16
];
services.postgresql = {
enable = true;
package = pkgs.postgresql_16;
ensureDatabases = [ "testing" ];
authentication = pkgs.lib.mkOverride 10 ''
#type database DBuser auth-method
local all all trust
'';
extraPlugins = with pkgs.postgresql16Packages; [postgis pg_repack pgvector];
};
}