lots of stuff idk

This commit is contained in:
xunuwu 2024-04-04 19:43:43 +02:00
parent a18ceb4f2e
commit 4e5f0a6e0b
Signed by: xun
SSH key fingerprint: SHA256:Uot/1WoAjWAeqLOHA5vYy4phhVydsH7jCPmBjaPZfgI
39 changed files with 439 additions and 81 deletions

60
flake.lock generated
View file

@ -77,11 +77,11 @@
},
"locked": {
"dir": "pkgs/firefox-addons",
"lastModified": 1710821046,
"narHash": "sha256-MgXYQjFu21qc2LcB6EGaiLc6HeBNnVuzml2kese1A0o=",
"lastModified": 1711500952,
"narHash": "sha256-YEF6ycTwkcuZq1ocon+JahHgwuQLQtpH2js1j+gN8K8=",
"owner": "rycee",
"repo": "nur-expressions",
"rev": "319f4424a6e8e66e8776c06b9c75e564a351348b",
"rev": "d0df0c83bfe2e7ed6e26259a289d7056c4001ced",
"type": "gitlab"
},
"original": {
@ -280,11 +280,11 @@
},
"hardware": {
"locked": {
"lastModified": 1710783728,
"narHash": "sha256-eIsfu3c9JUBgm3cURSKTXLEI9Dlk1azo+MWKZVqrmkc=",
"lastModified": 1711352745,
"narHash": "sha256-luvqik+i3HTvCbXQZgB6uggvEcxI9uae0nmrgtXJ17U=",
"owner": "nixos",
"repo": "nixos-hardware",
"rev": "1e679b9a9970780cd5d4dfe755a74a8f96d33388",
"rev": "9a763a7acc4cfbb8603bb0231fec3eda864f81c0",
"type": "github"
},
"original": {
@ -382,11 +382,11 @@
]
},
"locked": {
"lastModified": 1710820906,
"narHash": "sha256-2bNMraoRB4pdw/HtxgYTFeMhEekBZeQ53/a8xkqpbZc=",
"lastModified": 1711625603,
"narHash": "sha256-W+9dfqA9bqUIBV5u7jaIARAzMe3kTq/Hp2SpSVXKRQw=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "022464438a85450abb23d93b91aa82e0addd71fb",
"rev": "c0ef0dab55611c676ad7539bf4e41b3ec6fa87d2",
"type": "github"
},
"original": {
@ -404,11 +404,11 @@
"utils": "utils"
},
"locked": {
"lastModified": 1710670771,
"narHash": "sha256-c81N1hjI8yYAjo9Lp3UimC0OLibwTk6FP/TFHmdfjo0=",
"lastModified": 1712089776,
"narHash": "sha256-OBCZeC++pKx5JjJ9ikpTW5vnDTcJAXXmzgybcsY/oQc=",
"owner": "xunuwu",
"repo": "neovim-config",
"rev": "13825e147cf1d2703bf54c32e559305cf66e4e84",
"rev": "a1e6bd192ec5be356f12fee40d904ab6ee062491",
"type": "github"
},
"original": {
@ -471,11 +471,11 @@
]
},
"locked": {
"lastModified": 1710644923,
"narHash": "sha256-0fjbN5GYYDKPyPay0l8gYoH+tFfNqPPwP5sxxBreeA4=",
"lastModified": 1711249705,
"narHash": "sha256-h/NQECj6mIzF4XR6AQoSpkCnwqAM+ol4+qOdYi2ykmQ=",
"owner": "Mic92",
"repo": "nix-index-database",
"rev": "e25efda85e39fcdc845e371971ac4384989c4295",
"rev": "34519f3bb678a5abbddf7b200ac5347263ee781b",
"type": "github"
},
"original": {
@ -491,11 +491,11 @@
"nixpkgs": "nixpkgs_2"
},
"locked": {
"lastModified": 1710811024,
"narHash": "sha256-A2s6Mx1oXZFFjZGrPIJpOGfZnQpKlBEEADIjLe1dPqY=",
"lastModified": 1711761168,
"narHash": "sha256-w7GgKhBcrg1B72Ymb24rDeAoHsNwZdF8OghR4VxGYHk=",
"owner": "nix-community",
"repo": "nix-vscode-extensions",
"rev": "ebf9b6e2c3252dfcd375a06b69723e0065091568",
"rev": "5fae7231f16bd5467660c50e7d6a3732559443a0",
"type": "github"
},
"original": {
@ -540,11 +540,11 @@
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1710628718,
"narHash": "sha256-y+l3eH53UlENaYa1lmnCBHusZb1kxBEFd2/c7lDsGpw=",
"lastModified": 1711233294,
"narHash": "sha256-eEu5y4J145BYDw9o/YEmeJyqh8blgnZwuz9k234zuWc=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "6dc11d9859d6a18ab0c5e5829a5b8e4810658de3",
"rev": "ac6bdf6181666ebb4f90dd20f31e2fa66ede6b68",
"type": "github"
},
"original": {
@ -572,11 +572,11 @@
},
"nixpkgs_3": {
"locked": {
"lastModified": 1710806803,
"narHash": "sha256-qrxvLS888pNJFwJdK+hf1wpRCSQcqA6W5+Ox202NDa0=",
"lastModified": 1711703276,
"narHash": "sha256-iMUFArF0WCatKK6RzfUJknjem0H9m4KgorO/p3Dopkk=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "b06025f1533a1e07b6db3e75151caa155d1c7eb3",
"rev": "d8fe5e6c92d0d190646fb9f1056741a229980089",
"type": "github"
},
"original": {
@ -588,11 +588,11 @@
},
"nixpkgs_4": {
"locked": {
"lastModified": 1710534455,
"narHash": "sha256-huQT4Xs0y4EeFKn2BTBVYgEwJSv8SDlm82uWgMnCMmI=",
"lastModified": 1711200738,
"narHash": "sha256-dkJmk/ET/tRV4007O6kU101UEg1svUwiyk/zEEX9Tdg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "9af9c1c87ed3e3ed271934cb896e0cdd33dae212",
"rev": "20bc93ca7b2158ebc99b8cef987a2173a81cde35",
"type": "github"
},
"original": {
@ -623,11 +623,11 @@
"nixpkgs-stable": "nixpkgs-stable"
},
"locked": {
"lastModified": 1710644594,
"narHash": "sha256-RquCuzxfy4Nr8DPbdp3D/AsbYep21JgQzG8aMH9jJ4A=",
"lastModified": 1711249319,
"narHash": "sha256-N+Pp3/8H+rd7cO71VNV/ovV/Kwt+XNeUHNhsmyTabdM=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "83b68a0e8c94b72cdd0a6e547a14ca7eb1c03616",
"rev": "405987a66cce9a4a82f321f11b205982a7127c88",
"type": "github"
},
"original": {

View file

@ -14,13 +14,13 @@ in {
package = pkgs.vscodium;
mutableExtensionsDir = true;
extensions = [
ovsx.vadimcn.vscode-lldb
ovsx.mkhl.direnv
ovsx.editorconfig.editorconfig
ovsx.pkief.material-icon-theme
ovsx.eamodio.gitlens
vsce.hediet.debug-visualizer
extensions = with vsce; [
vadimcn.vscode-lldb
mkhl.direnv
editorconfig.editorconfig
pkief.material-icon-theme
eamodio.gitlens
hediet.debug-visualizer
];
};
}

View file

@ -6,6 +6,7 @@
../../programs/browsers/firefox.nix
../../programs/desktop
../../programs/desktop/awesome
../../programs/media

View file

@ -1,5 +1,6 @@
{...}: {
imports = [
./kanshi.nix
../../terminal
../../editors/nvim.nix
../../editors/emacs.nix
@ -8,7 +9,9 @@
../../terminal/emulator/wezterm.nix
# desktop
../../programs/desktop
../../programs/desktop/awesome
../../programs/desktop/hyprland
# development
../../develop
@ -16,6 +19,7 @@
# programs
../../programs/misc/keepassxc.nix
../../programs/misc/discord.nix
../../programs/misc/obsidian.nix
../../programs/misc/thunderbird.nix
../../programs/music
../../programs/music/yams.nix
@ -24,6 +28,7 @@
../../programs/media/jellyfin.nix
# gaming
../../programs/games
../../programs/games/ludusavi.nix
# media services
../../services/media/playerctl.nix

View file

@ -0,0 +1,20 @@
{
services.kanshi = {
enable = true;
systemdTarget = "hyprland-session.target";
profiles."default" = {
outputs = [
{
# criteria = "AOC 27G2G3";
criteria = "DP-3";
mode = "1920x1080@165Hz";
}
{
# criteria = "AOC 24B1W";
criteria = "HDMI-A-1";
position = "1920,0";
}
];
};
};
}

View file

@ -14,12 +14,16 @@
sponsorblock
tridactyl
translate-web-pages
cookie-quick-manager
istilldontcareaboutcookies
(lib.mkIf (builtins.elem pkgs.keepassxc config.home.packages) keepassxc-browser)
];
bookmarks = {};
settings = {
"browser.tabs.inTitleBar" = "0"; # use system title bar (if you have one :))
"browser.newtabpage.enabled" = false;
"browser.newtab.url" = "about:blank";
"general.autoScroll" = "true"; # mmb scroll mode
"browser.newtabpage.enhanced" = false;
"browser.newtabpage.introShown" = true;

View file

@ -144,7 +144,7 @@ awful.screen.connect_for_each_screen(function(s)
set_wallpaper(s)
-- Each screen has its own tag table.
awful.tag({ "1", "2", "3", "4", "5" }, s, awful.layout.layouts[1])
awful.tag({ "1", "2", "3", "4", "5", "6", "7", "8", "9" }, s, awful.layout.layouts[1])
-- Create a promptbox for each screen
s.mypromptbox = awful.widget.prompt()

View file

@ -1,4 +1,9 @@
{pkgs, ...}: {
services.picom = {
enable = true;
vSync = true;
};
xsession.windowManager.awesome = {
enable = true;
noArgb = true;

View file

@ -0,0 +1,48 @@
{pkgs, ...}: {
home.pointerCursor = {
gtk.enable = true;
x11.enable = true;
package = pkgs.apple-cursor;
name = "macOS-BigSur";
size = 16;
};
gtk = {
enable = true;
theme = {
package = pkgs.flat-remix-gtk;
name = "Flat-Remix-GTK-Grey-Darkest";
};
iconTheme = {
package = pkgs.gnome.adwaita-icon-theme;
name = "Adwaita";
};
font = {
name = "Sans";
size = 11;
};
};
qt = {
enable = true;
platformTheme = "gtk3";
style = {
name = "adwaita-dark";
package = pkgs.adwaita-qt;
};
};
xdg.portal = {
enable = true;
extraPortals = with pkgs; [
xdg-desktop-portal-hyprland
xdg-desktop-portal-kde
];
config = {
preferred = {
default = "hyprland;gtk";
"org.freedesktop.impl.portal.FileChooser" = "kde";
};
};
};
}

View file

@ -0,0 +1,111 @@
{
pkgs,
lib,
inputs,
config,
...
}: {
wayland.windowManager.hyprland = {
enable = true;
settings = {
exec-once = [
"${lib.getExe pkgs.waybar}"
"${lib.getExe pkgs.xwaylandvideobridge}"
"${lib.getExe pkgs.swaybg} -i ${config.xdg.userDirs.pictures}/wallpaper.png"
];
input = {
kb_layout = "eu";
};
env = [
"NIXOS_OZONE_WL,1" # for any ozone-based browser & electron apps to run on wayland
"MOZ_ENABLE_WAYLAND,1" # for firefox to run on wayland
"MOZ_WEBRENDER,1"
# misc
"_JAVA_AWT_WM_NONREPARENTING,1"
"QT_WAYLAND_DISABLE_WINDOWDECORATION,1"
"QT_QPA_PLATFORM,wayland"
"SDL_VIDEODRIVER,wayland"
"GDK_BACKEND,wayland"
];
"$mainMod" = "SUPER";
bind = [
"$mainMod, RETURN, exec, ${lib.getExe pkgs.foot}"
"$mainMod, Q, killactive"
"$mainMod, SPACE, togglefloating"
"$mainMod, F, fullscreen"
"$mainMod, M, fullscreen, 1"
"$mainMod SHIFT, F, fakefullscreen"
"$mainMod, P, exec, ${pkgs.bemenu}/bin/bemenu-run"
"$mainMod SHIFT, E, exec, ${lib.getExe pkgs.wlogout}"
# focus with vim keys
"$mainMod, h, movefocus, l"
"$mainMod, j, movefocus, d"
"$mainMod, k, movefocus, u"
"$mainMod, l, movefocus, r"
# window move with vim keys
"$mainMod SHIFT, h, movewindow, l"
"$mainMod SHIFT, j, movewindow, d"
"$mainMod SHIFT, k, movewindow, u"
"$mainMod SHIFT, l, movewindow, r"
# switch workspace with mod+[0-9]
"$mainMod, 1, workspace, 1"
"$mainMod, 2, workspace, 2"
"$mainMod, 3, workspace, 3"
"$mainMod, 4, workspace, 4"
"$mainMod, 5, workspace, 5"
"$mainMod, 6, workspace, 6"
"$mainMod, 7, workspace, 7"
"$mainMod, 8, workspace, 8"
"$mainMod, 9, workspace, 9"
"$mainMod, 0, workspace, 10"
# move window to workspace with mod+shift+[0-9]
"$mainMod SHIFT, 1, movetoworkspace, 1"
"$mainMod SHIFT, 2, movetoworkspace, 2"
"$mainMod SHIFT, 3, movetoworkspace, 3"
"$mainMod SHIFT, 4, movetoworkspace, 4"
"$mainMod SHIFT, 5, movetoworkspace, 5"
"$mainMod SHIFT, 6, movetoworkspace, 6"
"$mainMod SHIFT, 7, movetoworkspace, 7"
"$mainMod SHIFT, 8, movetoworkspace, 8"
"$mainMod SHIFT, 9, movetoworkspace, 9"
"$mainMod SHIFT, 0, movetoworkspace, 10"
# scroll through workspaces with mod+scroll
"$mainMod, mouse_down, workspace, e+1"
"$mainMod, mouse_up, workspace, e-1"
", XF86AudioPlay, exec, ${lib.getExe pkgs.playerctl} play-pause"
", XF86AudioStop, exec, ${lib.getExe pkgs.playerctl} stop"
", XF86AudioNext, exec, ${lib.getExe pkgs.playerctl} next"
", XF86AudioPrev, exec, ${lib.getExe pkgs.playerctl} previous"
];
bindm = [
# mod+lbm/rmb for move/resize
"$mainMod, mouse:272, movewindow"
"$mainMod, mouse:273, resizewindow"
];
binde = [
", XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 3%+"
", XF86AudioLowerVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 3%-"
];
windowrulev2 = [
# Allow hiding xwaylandvideobridge window correctly
"opacity 0.0 override 0.0 override,class:^(xwaylandvideobridge)$"
"noanim,class:^(xwaylandvideobridge)$"
"noinitialfocus,class:^(xwaylandvideobridge)$"
"maxsize 1 1,class:^(xwaylandvideobridge)$"
"noblur,class:^(xwaylandvideobridge)$"
#"stayfocused,title:^(XtMapper)$"
"noanim,title:^(XtMapper)$"
"noblur,title:^(XtMapper)$"
"float,title:^(XtMapper)$"
"move 0% 0%,title:^(XtMapper)$"
"size 100%,title:^(XtMapper)$"
];
};
};
}

View file

@ -0,0 +1,6 @@
{pkgs, ...}: {
home.packages = with pkgs; [
ludusavi
rclone
];
}

View file

@ -0,0 +1,3 @@
{pkgs, ...}: {
home.packages = with pkgs; [obsidian];
}

View file

@ -21,16 +21,6 @@
-- Keys
c.leader = { key = 'j', mods = 'CTRL', timeout_milliseconds = 1000 }
c.keys = {
{
key = 'v',
mods = 'LEADER',
action = wezterm.action.SplitHorizontal { domain = 'CurrentPaneDomain' },
},
{
key = 's',
mods = 'LEADER',
action = wezterm.action.SplitVertical { domain = 'CurrentPaneDomain' },
},
{
key = 'q',
mods = 'LEADER',
@ -41,6 +31,60 @@
mods = 'LEADER',
action = wezterm.action.TogglePaneZoomState,
},
{
key = 'h',
mods = 'LEADER',
action = wezterm.action.ActivatePaneDirection('Left'),
},
{
key = 'j',
mods = 'LEADER',
action = wezterm.action.ActivatePaneDirection('Down'),
},
{
key = 'k',
mods = 'LEADER',
action = wezterm.action.ActivatePaneDirection('Up'),
},
{
key = 'l',
mods = 'LEADER',
action = wezterm.action.ActivatePaneDirection('Right'),
},
{
key = 'H',
mods = 'LEADER',
action = wezterm.action.SplitPane { direction = 'Left' },
},
{
key = 'J',
mods = 'LEADER',
action = wezterm.action.SplitPane { direction = 'Down' },
},
{
key = 'K',
mods = 'LEADER',
action = wezterm.action.SplitPane { direction = 'Up' },
},
{
key = 'L',
mods = 'LEADER',
action = wezterm.action.SplitPane { direction = 'Right' },
},
{
key = 's',
mods = 'LEADER',
action = wezterm.action.PaneSelect {
mode = "Activate"
},
},
{
key = ';',
mods = 'LEADER',
action = wezterm.action.PaneSelect {
mode = "SwapWithActive"
},
},
}
return c

View file

@ -1,6 +1,7 @@
{
imports = [
./git.nix
./github.nix
./direnv.nix
./xdg.nix
./comma.nix

View file

@ -0,0 +1,4 @@
{
programs.gh.enable = true;
programs.gh-dash.enable = true;
}

View file

@ -5,5 +5,10 @@
clock24 = true;
mouse = true;
escapeTime = 0;
extraConfig = ''
bind '"' split-window -c "#{pane_current_path}"
bind % split-window -h -c "#{pane_current_path}"
bind c new-window -c "#{pane_current_path}";
'';
};
}

View file

@ -5,7 +5,7 @@
enable = true;
autocd = true;
enableCompletion = true;
enableAutosuggestions = true;
autosuggestion.enable = true;
dotDir = ".config/zsh";
defaultKeymap = "emacs";

View file

@ -34,6 +34,10 @@ in {
"${self}/secrets/nixdesk"
"${mod}/services/syncthing.nix"
"${mod}/services/virt/podman.nix"
"${mod}/services/virt/waydroid.nix"
"${mod}/services/virt/distrobox.nix"
"${mod}/services/ollama.nix"
"${mod}/desktop/x11/nosleep.nix"
"${mod}/programs/gamemode.nix"

View file

@ -1,9 +1,13 @@
{...}: {
{pkgs, ...}: {
imports = [
./tools.nix
./sway.nix
];
environment.systemPackages = with pkgs; [
firefox
];
isoImage.edition = "sway-custom";
networking.hostName = "liveiso";

View file

@ -2,5 +2,6 @@
environment.systemPackages = with pkgs; [
neovim
parted
gparted
];
}

View file

@ -18,7 +18,6 @@
swapDevices = [
{
device = "/var/lib/swapfile";
randomEncryption.enable = true;
size = 16 * 1024;
}
];

View file

@ -29,11 +29,22 @@
fileSystems = {
"/" = {
device = "/dev/disk/by-uuid/0c080ce8-26f0-454b-a100-1ca9d5308931";
fsType = "ext4";
device = "/dev/disk/by-uuid/d87276c0-ef9c-422e-b2de-effc1b47c654";
fsType = "btrfs";
options = ["subvol=root" "compress=zstd"];
};
"/home" = {
device = "/dev/disk/by-uuid/d87276c0-ef9c-422e-b2de-effc1b47c654";
fsType = "btrfs";
options = ["subvol=home" "compress=zstd"];
};
"/nix" = {
device = "/dev/disk/by-uuid/d87276c0-ef9c-422e-b2de-effc1b47c654";
fsType = "btrfs";
options = ["subvol=nix" "compress=zstd" "noatime"];
};
"/boot" = {
device = "/dev/disk/by-uuid/D23A-89BF";
device = "/dev/disk/by-uuid/588B-CB97";
fsType = "vfat";
};
};

View file

@ -43,7 +43,6 @@ in
preFixup = ''
qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
# You can manually patch scripts using: wrapQtApp "$out/bin/myapp". TODO: check when it's required.
'';
meta = with lib; {

View file

@ -1,5 +1,5 @@
{pkgs, ...}: {
environment.systemPackages = [pkgs.steam-run];
#environment.systemPackages = [pkgs.steam-run];
programs.nix-ld.enable = true;
programs.nix-ld.libraries = with pkgs; [
@ -55,6 +55,4 @@
xorg.libxshmfence
zlib
];
# symlinks binaries to /bin, fixes hard coded shebangs
services.envfs.enable = true;
}

3
system/core/gvfs.nix Normal file
View file

@ -0,0 +1,3 @@
{
services.gvfs.enable = true;
}

View file

@ -5,7 +5,10 @@
shell = pkgs.zsh;
extraGroups = [
"wheel"
"input"
"video"
"render"
"audio"
];
};
}

View file

@ -2,9 +2,12 @@ let
desktop = [
./core
./core/boot.nix
./core/gvfs.nix
./hardware/opengl.nix
./hardware/steam-hardware.nix
./hardware/bluetooth.nix
./hardware/qmk.nix
./network/networkd.nix
./network/avahi.nix
@ -12,6 +15,8 @@ let
./desktop
./desktop/awesome.nix
./desktop/sway.nix
./desktop/hyprland.nix
./programs

View file

@ -1,14 +1 @@
{pkgs, ...}: {
xdg = {
portal = {
enable = true;
config = {
common.default = ["gtk"];
};
extraPortals = with pkgs; [
xdg-desktop-portal-wlr
xdg-desktop-portal-gtk
];
};
};
}
{}

View file

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

9
system/desktop/sway.nix Normal file
View file

@ -0,0 +1,9 @@
{
programs.sway = {
enable = true;
wrapperFeatures = {
base = true;
gtk = true;
};
};
}

View file

@ -8,5 +8,6 @@
domain = true;
userServices = true;
};
openFirewall = true;
};
}

View file

@ -6,7 +6,22 @@
extraCompatPackages = with pkgs; [
proton-ge-bin
];
extest.enable = true;
gamescopeSession.enable = true;
## Fixes gamescope
package = pkgs.steam.override {
extraPkgs = pkgs:
with pkgs; [
xorg.libXcursor
xorg.libXi
xorg.libXinerama
xorg.libXScrnSaver
libpng
libpulseaudio
libvorbis
stdenv.cc.cc.lib
libkrb5
keyutils
];
};
};
}

View file

@ -6,6 +6,34 @@
imports = [
#./statistics
];
services.samba = {
enable = true;
package = pkgs.samba4Full;
openFirewall = true;
shares."torrent-downloads" = {
path = "/media/downloads/complete";
browseable = "yes";
"read only" = "yes";
"guest ok" = "no";
};
#shares."decky-cloud-save" = {
# path = "/media/gamesaves";
# browseable = "yes";
# "read only" = "no";
# "guest ok" = "no";
#};
extraConfig = ''
server smb encrypt = required
server min protocol = SMB3_00
'';
};
services.samba-wsdd = {
# This enables autodiscovery on windows since SMB1 (and thus netbios) support was discontinued
enable = true;
openFirewall = true;
};
#virtualisation.docker = {
# enable = true;
# enableOnBoot = true;

View file

@ -0,0 +1,10 @@
{
services.ollama = {
enable = true;
environmentVariables = {
HSA_OVERRIDE_GFX_VERSION = "10.3.0";
};
acceleration = "rocm";
listenAddress = "127.0.0.1:11434";
};
}

View file

@ -1,4 +1,4 @@
{
{config, ...}: {
services.syncthing = {
enable = true;
openDefaultPorts = true;
@ -11,11 +11,11 @@
settings = {
devices = {
"nixdesk" = {
id = "2WCEQPF-2J4U7IK-XRT25FV-NFT2JEM-AVOMDEK-FIJNZ24-7WCBZC2-57CX2AP";
id = "DZEIXRH-WBIEUUW-FFP2SLJ-BTIUPBE-YURLPN7-MUFOR6L-HS27D6G-I25XHQ3";
autoAcceptFolders = true;
};
"redmi-note-10-pro" = {
id = "U6YYTHR-2ZXIEXQ-RNDERSF-CTVSP67-W24VK4Y-5EQRIV5-T7JJW2N-33L7XQV";
id = "MRAHIKH-TNHAKEG-OHMEFXI-BO54SXR-6IL2Y3B-3HVOWZF-ZGTS2OX-YSWTPQF";
autoAcceptFolders = true;
};
"hopper" = {
@ -25,13 +25,13 @@
};
folders = {
"~/secrets" = {
devices = [
"nixdesk"
"redmi-note-10-pro"
"hopper"
];
devices = builtins.attrNames config.services.syncthing.settings.devices;
id = "sfw9y-yusup";
};
"~/docs/xun-megavault" = {
devices = builtins.attrNames config.services.syncthing.settings.devices;
id = "1zkf-wf5r";
};
};
};

View file

@ -0,0 +1,3 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [distrobox];
}

View file

@ -0,0 +1,6 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [docker-compose];
virtualisation.docker = {
enable = true;
};
}

View file

@ -0,0 +1,7 @@
{
virtualisation.podman = {
enable = true;
autoPrune.enable = true;
dockerSocket.enable = true;
};
}

View file

@ -0,0 +1,3 @@
{
virtualisation.waydroid.enable = true;
}