Added: Container Switch
This commit is contained in:
13
flake.nix
13
flake.nix
@@ -109,13 +109,14 @@
|
|||||||
username,
|
username,
|
||||||
system ? "x86_64-linux",
|
system ? "x86_64-linux",
|
||||||
monitorSetup ? "single",
|
monitorSetup ? "single",
|
||||||
|
containerization ? "none",
|
||||||
extraModules ? [ ],
|
extraModules ? [ ],
|
||||||
}:
|
}:
|
||||||
nixpkgs.lib.nixosSystem {
|
nixpkgs.lib.nixosSystem {
|
||||||
inherit system;
|
inherit system;
|
||||||
specialArgs = {
|
specialArgs = {
|
||||||
inherit inputs;
|
inherit inputs;
|
||||||
inherit username monitorSetup;
|
inherit username monitorSetup containerization;
|
||||||
};
|
};
|
||||||
modules =
|
modules =
|
||||||
commonModules
|
commonModules
|
||||||
@@ -124,6 +125,7 @@
|
|||||||
./users/${username}/nixos.nix
|
./users/${username}/nixos.nix
|
||||||
home-manager.nixosModules.home-manager
|
home-manager.nixosModules.home-manager
|
||||||
(commonHomeManagerConfig { inherit username monitorSetup; })
|
(commonHomeManagerConfig { inherit username monitorSetup; })
|
||||||
|
./modules/containerization
|
||||||
]
|
]
|
||||||
++ extraModules;
|
++ extraModules;
|
||||||
|
|
||||||
@@ -163,20 +165,29 @@
|
|||||||
hostname = "qemu";
|
hostname = "qemu";
|
||||||
username = "phil";
|
username = "phil";
|
||||||
monitorSetup = "single";
|
monitorSetup = "single";
|
||||||
|
containerization = "none";
|
||||||
};
|
};
|
||||||
|
|
||||||
m920q = mkSystem {
|
m920q = mkSystem {
|
||||||
hostname = "m920q";
|
hostname = "m920q";
|
||||||
username = "phil";
|
username = "phil";
|
||||||
monitorSetup = "dual";
|
monitorSetup = "dual";
|
||||||
|
containerization = "podman";
|
||||||
};
|
};
|
||||||
|
|
||||||
hp15-n028sg = mkSystem {
|
hp15-n028sg = mkSystem {
|
||||||
hostname = "hp15-n028sg";
|
hostname = "hp15-n028sg";
|
||||||
username = "phil";
|
username = "phil";
|
||||||
monitorSetup = "single";
|
monitorSetup = "single";
|
||||||
|
containerization = "docker";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
cloud = mkSystem {
|
||||||
|
hostname = "cluster.cyperpunk.de";
|
||||||
|
username = "phil";
|
||||||
|
monitorSetup = "none";
|
||||||
|
containerization = "podman";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@@ -9,9 +9,9 @@
|
|||||||
#./wpaperd.nix
|
#./wpaperd.nix
|
||||||
./swww.nix
|
./swww.nix
|
||||||
./rofi # App Launcher
|
./rofi # App Launcher
|
||||||
#./mako.nix # Notifyer
|
./mako.nix # Notifyer
|
||||||
./cava.nix # Music Visualizer
|
./cava.nix # Music Visualizer
|
||||||
./swaync.nix
|
#./swaync.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
programs.waybar =
|
programs.waybar =
|
||||||
|
@@ -88,6 +88,7 @@ in
|
|||||||
|
|
||||||
input = {
|
input = {
|
||||||
kb_layout = "de";
|
kb_layout = "de";
|
||||||
|
kb_variant = "mac";
|
||||||
repeat_rate = 50;
|
repeat_rate = 50;
|
||||||
repeat_delay = 300;
|
repeat_delay = 300;
|
||||||
|
|
||||||
@@ -216,6 +217,9 @@ in
|
|||||||
# Lock Screen
|
# Lock Screen
|
||||||
"${super}, M, exit, "
|
"${super}, M, exit, "
|
||||||
|
|
||||||
|
# swaync
|
||||||
|
"${super}, Y, exec, swaync-client -t -sw"
|
||||||
|
|
||||||
# Rofi bindings
|
# Rofi bindings
|
||||||
"${super}, F, exec, ${filebrowser}"
|
"${super}, F, exec, ${filebrowser}"
|
||||||
"${super}, A, exec, ${apps}"
|
"${super}, A, exec, ${apps}"
|
||||||
|
@@ -27,8 +27,8 @@
|
|||||||
background = [
|
background = [
|
||||||
{
|
{
|
||||||
path = "~/Pictures/Wallpapers/lucy_with_cat.png";
|
path = "~/Pictures/Wallpapers/lucy_with_cat.png";
|
||||||
blur_passes = 0;
|
blur_passes = 1;
|
||||||
blur_size = 0;
|
blur_size = 5;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -37,11 +37,11 @@
|
|||||||
{
|
{
|
||||||
monitor = "";
|
monitor = "";
|
||||||
text = "$TIME";
|
text = "$TIME";
|
||||||
color = "$text";
|
color = "$peach";
|
||||||
font_size = 90;
|
font_size = 90;
|
||||||
font_family = "$font";
|
font_family = "$font";
|
||||||
position = "-30, 0";
|
position = "0, -100";
|
||||||
halign = "right";
|
halign = "center";
|
||||||
valign = "top";
|
valign = "top";
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -49,12 +49,36 @@
|
|||||||
{
|
{
|
||||||
monitor = "";
|
monitor = "";
|
||||||
text = ''cmd[update:43200000] date +"%A, %d %B %Y"'';
|
text = ''cmd[update:43200000] date +"%A, %d %B %Y"'';
|
||||||
color = "$text";
|
color = "$peach";
|
||||||
font_size = 25;
|
font_size = 25;
|
||||||
font_family = "$font";
|
font_family = "$font";
|
||||||
position = "-30, -150";
|
position = "0, 100";
|
||||||
halign = "right";
|
halign = "center";
|
||||||
valign = "top";
|
valign = "bottom";
|
||||||
|
}
|
||||||
|
|
||||||
|
# Message
|
||||||
|
{
|
||||||
|
monitor = "";
|
||||||
|
text = "Waiting for you...";
|
||||||
|
color = "$peach";
|
||||||
|
font_size = 20;
|
||||||
|
font_family = "$font";
|
||||||
|
position = "0, 200";
|
||||||
|
halign = "center";
|
||||||
|
valign = "bottom";
|
||||||
|
}
|
||||||
|
|
||||||
|
# Weather
|
||||||
|
{
|
||||||
|
monitor = "";
|
||||||
|
text = ''cmd[update:60000] curl -s "wttr.in/52.281311,10.527029?format=1"'';
|
||||||
|
color = "$peach";
|
||||||
|
font_size = 20;
|
||||||
|
font_family = "$font";
|
||||||
|
position = "0, 50";
|
||||||
|
halign = "center";
|
||||||
|
valign = "bottom";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@@ -42,4 +42,71 @@
|
|||||||
(builtins.concatStringsSep "," mappings) + " Symbols Nerd Font";
|
(builtins.concatStringsSep "," mappings) + " Symbols Nerd Font";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
programs.starship = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
add_newline = true;
|
||||||
|
command_timeout = 500;
|
||||||
|
|
||||||
|
format = "$username$hostname $directory $git_branch$git_status\n$character ";
|
||||||
|
right_format = "$cmd_duration";
|
||||||
|
|
||||||
|
username = {
|
||||||
|
style_user = "bold #cba6f7";
|
||||||
|
style_root = "bold #f38ba8";
|
||||||
|
format = "[┌](bold #a6e3a1)[$user]($style)";
|
||||||
|
show_always = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
hostname = {
|
||||||
|
style = "bold #74c7ec";
|
||||||
|
format = "[@](bold #fab387)[$hostname]($style)";
|
||||||
|
ssh_only = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
directory = {
|
||||||
|
style = "bold #a6e3a1";
|
||||||
|
truncation_length = 0;
|
||||||
|
truncation_symbol = "";
|
||||||
|
format = "[⤇ ](bold #f38ba8)[《$path》]($style)";
|
||||||
|
};
|
||||||
|
|
||||||
|
git_branch = {
|
||||||
|
format = "[⟦$branch⟧]($style)";
|
||||||
|
style = "bold #f9e2af";
|
||||||
|
};
|
||||||
|
|
||||||
|
# Git status module settings
|
||||||
|
git_status = {
|
||||||
|
format = "[[(*$conflicted$untracked$modified$staged$renamed$deleted)](red) ($ahead_behind$stashed)]($style)";
|
||||||
|
style = "bold #a6e3a1";
|
||||||
|
conflicted = "";
|
||||||
|
untracked = "";
|
||||||
|
modified = "";
|
||||||
|
staged = "";
|
||||||
|
renamed = "";
|
||||||
|
deleted = "";
|
||||||
|
};
|
||||||
|
|
||||||
|
# Command duration module
|
||||||
|
cmd_duration = {
|
||||||
|
format = "[$duration]($style)";
|
||||||
|
style = "bold #cdd6f4";
|
||||||
|
min_time = 5000; # Only show if command takes longer than 5 seconds
|
||||||
|
};
|
||||||
|
|
||||||
|
# Character module (prompt symbol)
|
||||||
|
character = {
|
||||||
|
success_symbol = "[└──────⇴ ](bold #a6e3a1)";
|
||||||
|
error_symbol = "[└──────⇴ ](bold #f38ba8)";
|
||||||
|
};
|
||||||
|
|
||||||
|
nix_shell = {
|
||||||
|
format = "[$symbol$state( \($name\))]($style)";
|
||||||
|
symbol = "U+02744";
|
||||||
|
style = "bold #89dceb";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
{ pkgs, ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
services.mako = {
|
services.mako = {
|
||||||
enable = true;
|
enable = true;
|
||||||
@@ -10,6 +10,9 @@
|
|||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
[app-name=Spotify]
|
[app-name=Spotify]
|
||||||
border-color=#a6e3a1
|
border-color=#a6e3a1
|
||||||
|
|
||||||
|
[app-name=Thunderbird]
|
||||||
|
border-color=#94e2d5
|
||||||
'';
|
'';
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@@ -28,7 +28,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
configuration {
|
configuration {
|
||||||
font: "Icomoon-Feather 12";
|
font: "Fira Code Bold 20px";
|
||||||
show-icons: true;
|
show-icons: true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -89,7 +89,7 @@ textbox-prompt-colon {
|
|||||||
padding: 15px;
|
padding: 15px;
|
||||||
border: 0px 0px 0px 10px;
|
border: 0px 0px 0px 10px;
|
||||||
border-radius: 100% 100% 0px 100%;
|
border-radius: 100% 100% 0px 100%;
|
||||||
border-color: @peach;
|
border-color: @blue;
|
||||||
background-color: @crust;
|
background-color: @crust;
|
||||||
text-color: @text;
|
text-color: @text;
|
||||||
}
|
}
|
||||||
@@ -117,7 +117,7 @@ listview {
|
|||||||
fixed-columns: true;
|
fixed-columns: true;
|
||||||
|
|
||||||
spacing: 30px;
|
spacing: 30px;
|
||||||
margin: 30px;
|
margin: 10px;
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
cursor: "default";
|
cursor: "default";
|
||||||
}
|
}
|
||||||
@@ -125,11 +125,12 @@ listview {
|
|||||||
/*****----- Elements -----*****/
|
/*****----- Elements -----*****/
|
||||||
element {
|
element {
|
||||||
enabled: true;
|
enabled: true;
|
||||||
padding: 35px 10px;
|
padding: 10px;
|
||||||
border-radius: 5%;
|
border-radius: 1%;
|
||||||
background-color: @crust;
|
background-color: @crust;
|
||||||
text-color: @text;
|
text-color: @text;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
children: [ element-text ];
|
||||||
}
|
}
|
||||||
element-text {
|
element-text {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
@@ -140,7 +141,7 @@ element-text {
|
|||||||
}
|
}
|
||||||
element selected.normal {
|
element selected.normal {
|
||||||
background-color: @crust;
|
background-color: @crust;
|
||||||
text-color: @sapphire;
|
text-color: @yellow;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****----- Message -----*****/
|
/*****----- Message -----*****/
|
||||||
|
@@ -1,4 +1,110 @@
|
|||||||
{ pkgs, ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
home.packages = [ pkgs.swaynotificationcenter ];
|
services.swaync = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
positionX = "center";
|
||||||
|
positionY = "center";
|
||||||
|
layer = "overlay";
|
||||||
|
control-center-layer = "top";
|
||||||
|
layer-shell = true;
|
||||||
|
cssPriority = "user";
|
||||||
|
control-center-margin-top = 100;
|
||||||
|
control-center-margin-bottom = 200;
|
||||||
|
control-center-margin-right = 0;
|
||||||
|
control-center-margin-left = 0;
|
||||||
|
notification-2fa-action = true;
|
||||||
|
notification-inline-replies = false;
|
||||||
|
notification-icon-size = 64;
|
||||||
|
notification-body-image-height = 100;
|
||||||
|
notification-body-image-width = 200;
|
||||||
|
widgets = [
|
||||||
|
"mpris"
|
||||||
|
"volume"
|
||||||
|
"inhibitors"
|
||||||
|
"title"
|
||||||
|
"dnd"
|
||||||
|
"notifications"
|
||||||
|
];
|
||||||
|
widget-config = {
|
||||||
|
|
||||||
|
mpris = {
|
||||||
|
blacklist = [ ];
|
||||||
|
autohide = false;
|
||||||
|
show-album-art = "always";
|
||||||
|
loop-carousel = false;
|
||||||
|
image-size = 96;
|
||||||
|
image-radius = 12;
|
||||||
|
};
|
||||||
|
|
||||||
|
volume = {
|
||||||
|
label = "gain";
|
||||||
|
show-per-app = false;
|
||||||
|
empty-list-label = "Nothin' is playin'";
|
||||||
|
expand-button-label = "⤢";
|
||||||
|
collaps-button-label = "⤡";
|
||||||
|
};
|
||||||
|
|
||||||
|
title = {
|
||||||
|
text = "Hollerin'";
|
||||||
|
clear-all-button = true;
|
||||||
|
button-text = "Sheriff's Pardon";
|
||||||
|
};
|
||||||
|
|
||||||
|
dnd = {
|
||||||
|
text = "Let'er rest";
|
||||||
|
};
|
||||||
|
|
||||||
|
menubar = {
|
||||||
|
"menu#power" = {
|
||||||
|
label = "Power";
|
||||||
|
position = "right";
|
||||||
|
animation-type = "slide_down";
|
||||||
|
animation-duration = 250;
|
||||||
|
actions = [
|
||||||
|
{
|
||||||
|
label = "Bolt It";
|
||||||
|
command = "hyprlock";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
label = "Ride Out";
|
||||||
|
command = "hyprctl dispatch exit";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
label = "Circle Back";
|
||||||
|
command = "systemctl reboot";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
label = "Bet Down the Horses";
|
||||||
|
command = "systemctl poweroff";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
"buttons#media" = {
|
||||||
|
position = "left";
|
||||||
|
actions = [
|
||||||
|
{
|
||||||
|
label = "Play/Pause";
|
||||||
|
command = "playerctl play-pause";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
label = "Next";
|
||||||
|
command = "playerctl next";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
label = "Previous";
|
||||||
|
command = "playerctl previous";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
notifications = {
|
||||||
|
vexpand = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@@ -159,6 +159,27 @@
|
|||||||
interval = 60;
|
interval = 60;
|
||||||
tooltip = false;
|
tooltip = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
"custom/notification" = {
|
||||||
|
tooltip = false;
|
||||||
|
format = "{icon}";
|
||||||
|
format-icons = {
|
||||||
|
notification = "<span foreground='red'><sup></sup></span>";
|
||||||
|
none = " ";
|
||||||
|
dnd-notification = "<span foreground='red'><sup></sup></span>";
|
||||||
|
dnd-none = " ";
|
||||||
|
inhibited-notification = "<span foreground='red'><sup></sup></span>";
|
||||||
|
inhibited-none = " ";
|
||||||
|
dnd-inhibited-notification = "<span foreground='red'><sup></sup></span>";
|
||||||
|
dnd-inhibited-none = " ";
|
||||||
|
};
|
||||||
|
return-type = "json";
|
||||||
|
exec-if = "which swaync-client";
|
||||||
|
exec = "swaync-client -swb";
|
||||||
|
on-click = "swaync-client -t -sw";
|
||||||
|
on-click-right = "swaync-client -d -sw";
|
||||||
|
escape = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -149,3 +149,12 @@ window#waybar.hidden {
|
|||||||
margin: 5px 20px;
|
margin: 5px 20px;
|
||||||
padding: 0px 10px;
|
padding: 0px 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* SwayNC */
|
||||||
|
#custom-notification {
|
||||||
|
font-family: "NotoSansMono Nerd Font";
|
||||||
|
background: @green;
|
||||||
|
border-radius: 10px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 5px;
|
||||||
|
}
|
||||||
|
@@ -18,6 +18,7 @@ in
|
|||||||
modules-center = [
|
modules-center = [
|
||||||
"hyprland/workspaces"
|
"hyprland/workspaces"
|
||||||
"niri/workspaces"
|
"niri/workspaces"
|
||||||
|
"custom/notification"
|
||||||
];
|
];
|
||||||
modules-right = [
|
modules-right = [
|
||||||
"group/hardware"
|
"group/hardware"
|
||||||
|
@@ -7,5 +7,6 @@
|
|||||||
./sqllite_browser.nix
|
./sqllite_browser.nix
|
||||||
./compilers.nix
|
./compilers.nix
|
||||||
./beekeeper-studio.nix
|
./beekeeper-studio.nix
|
||||||
|
#./newelle.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
8
home/programs/dev/newelle.nix
Normal file
8
home/programs/dev/newelle.nix
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
# Install fstl
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
newelle
|
||||||
|
];
|
||||||
|
}
|
@@ -14,11 +14,9 @@
|
|||||||
../../modules/localisation.nix
|
../../modules/localisation.nix
|
||||||
../../modules/openssh.nix
|
../../modules/openssh.nix
|
||||||
../../modules/pipewire.nix
|
../../modules/pipewire.nix
|
||||||
../../modules/podman.nix
|
|
||||||
../../modules/services.nix
|
../../modules/services.nix
|
||||||
../../modules/regreet/regreet.nix
|
../../modules/regreet/regreet.nix
|
||||||
../../modules/plymouth.nix
|
../../modules/plymouth.nix
|
||||||
../../modules/file_managers/spacefm.nix
|
|
||||||
# Include the results of the hardware scan.
|
# Include the results of the hardware scan.
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
];
|
];
|
||||||
|
@@ -16,8 +16,6 @@
|
|||||||
../../modules/localisation.nix
|
../../modules/localisation.nix
|
||||||
../../modules/openssh.nix
|
../../modules/openssh.nix
|
||||||
../../modules/pipewire.nix
|
../../modules/pipewire.nix
|
||||||
#../../modules/podman.nix
|
|
||||||
../../modules/docker.nix
|
|
||||||
../../modules/services.nix
|
../../modules/services.nix
|
||||||
../../modules/regreet/regreet.nix
|
../../modules/regreet/regreet.nix
|
||||||
../../modules/plymouth.nix
|
../../modules/plymouth.nix
|
||||||
|
@@ -4,7 +4,6 @@
|
|||||||
{
|
{
|
||||||
config,
|
config,
|
||||||
lib,
|
lib,
|
||||||
pkgs,
|
|
||||||
modulesPath,
|
modulesPath,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
|
@@ -14,11 +14,9 @@
|
|||||||
../../modules/localisation.nix
|
../../modules/localisation.nix
|
||||||
../../modules/openssh.nix
|
../../modules/openssh.nix
|
||||||
../../modules/pipewire.nix
|
../../modules/pipewire.nix
|
||||||
../../modules/podman.nix
|
|
||||||
../../modules/services.nix
|
../../modules/services.nix
|
||||||
../../modules/regreet/regreet.nix
|
../../modules/regreet/regreet.nix
|
||||||
../../modules/plymouth.nix
|
../../modules/plymouth.nix
|
||||||
../../modules/file_managers/spacefm.nix
|
|
||||||
|
|
||||||
# Include the results of the hardware scan.
|
# Include the results of the hardware scan.
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
|
41
modules/containerization/default.nix
Normal file
41
modules/containerization/default.nix
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
containerization ? "none",
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
# Import the appropriate containerization module based on the parameter
|
||||||
|
containerModule =
|
||||||
|
if containerization == "podman" then
|
||||||
|
import ./podman.nix
|
||||||
|
else if containerization == "docker" then
|
||||||
|
import ./docker.nix
|
||||||
|
else if containerization == "none" then
|
||||||
|
{ }
|
||||||
|
else
|
||||||
|
throw "Unknown containerization type: ${containerization}. Valid options are: podman, docker, none";
|
||||||
|
in
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [ containerModule ];
|
||||||
|
|
||||||
|
# Common packages and configuration for all systems
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
# Remove the curly braces {}
|
||||||
|
dive # docker layer viewer
|
||||||
|
tailscale # VPN
|
||||||
|
];
|
||||||
|
|
||||||
|
virtualisation.containers.enable = true;
|
||||||
|
virtualisation.oci-containers.containers = {
|
||||||
|
/*
|
||||||
|
container-name = {
|
||||||
|
image = "image";
|
||||||
|
autoStart = true;
|
||||||
|
ports = [ "127.0.0.1:1234:1234" ];
|
||||||
|
};
|
||||||
|
*/
|
||||||
|
};
|
||||||
|
}
|
18
modules/containerization/docker.nix
Normal file
18
modules/containerization/docker.nix
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
docker-compose
|
||||||
|
lazydocker
|
||||||
|
];
|
||||||
|
|
||||||
|
virtualisation.docker = {
|
||||||
|
enable = true;
|
||||||
|
rootless = {
|
||||||
|
enable = true;
|
||||||
|
setSocketVariable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
virtualisation.oci-containers.backend = "docker";
|
||||||
|
}
|
17
modules/containerization/podman.nix
Normal file
17
modules/containerization/podman.nix
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
{ pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
podman-compose # docker-compose alternative
|
||||||
|
podman-tui # status of containers in terminal
|
||||||
|
podman-desktop # Desktop client
|
||||||
|
];
|
||||||
|
|
||||||
|
virtualisation.podman = {
|
||||||
|
enable = true;
|
||||||
|
dockerCompat = true;
|
||||||
|
defaultNetwork.settings.dns_enabled = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
virtualisation.oci-containers.backend = "podman";
|
||||||
|
}
|
@@ -1,36 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
# Virtualisation
|
|
||||||
docker-compose # docker-compose alternative
|
|
||||||
dive # docker layer viewer
|
|
||||||
tailscale # Vpn
|
|
||||||
];
|
|
||||||
# Virtualisation
|
|
||||||
virtualisation = {
|
|
||||||
containers.enable = true;
|
|
||||||
|
|
||||||
docker = {
|
|
||||||
enable = true;
|
|
||||||
rootless = {
|
|
||||||
enable = true;
|
|
||||||
setSocketVariable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
oci-containers = {
|
|
||||||
backend = "docker";
|
|
||||||
containers = {
|
|
||||||
/*
|
|
||||||
container-name = {
|
|
||||||
image = "image";
|
|
||||||
autoStart = true;
|
|
||||||
ports = [ "127.0.0.1:1234:1234" ];
|
|
||||||
};
|
|
||||||
*/
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
@@ -4,7 +4,7 @@
|
|||||||
time.timeZone = "Europe/Berlin";
|
time.timeZone = "Europe/Berlin";
|
||||||
|
|
||||||
# Select internationalisation properties.
|
# Select internationalisation properties.
|
||||||
i18n.defaultLocale = "en_US.UTF-8";
|
i18n.defaultLocale = "de_DE.UTF-8";
|
||||||
|
|
||||||
i18n.extraLocaleSettings = {
|
i18n.extraLocaleSettings = {
|
||||||
LC_ADDRESS = "de_DE.UTF-8";
|
LC_ADDRESS = "de_DE.UTF-8";
|
||||||
|
@@ -1,36 +0,0 @@
|
|||||||
{ pkgs, ... }:
|
|
||||||
{
|
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
# Virtualisation
|
|
||||||
podman-compose # docker-compose alternative
|
|
||||||
dive # docker layer viewer
|
|
||||||
podman-tui # status of containers in terminal
|
|
||||||
podman-desktop # Desktop client
|
|
||||||
tailscale # Vpn
|
|
||||||
];
|
|
||||||
# Virtualisation
|
|
||||||
virtualisation = {
|
|
||||||
containers.enable = true;
|
|
||||||
|
|
||||||
podman = {
|
|
||||||
enable = true;
|
|
||||||
dockerCompat = true;
|
|
||||||
defaultNetwork.settings.dns_enabled = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
oci-containers = {
|
|
||||||
backend = "podman";
|
|
||||||
containers = {
|
|
||||||
/*
|
|
||||||
container-name = {
|
|
||||||
image = "image";
|
|
||||||
autoStart = true;
|
|
||||||
ports = [ "127.0.0.1:1234:1234" ];
|
|
||||||
};
|
|
||||||
*/
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
}
|
|
@@ -31,6 +31,7 @@
|
|||||||
enable = true;
|
enable = true;
|
||||||
interactiveShellInit = ''
|
interactiveShellInit = ''
|
||||||
fish_config prompt choose disco
|
fish_config prompt choose disco
|
||||||
|
starship init fish | source
|
||||||
function fish_greeting
|
function fish_greeting
|
||||||
fastfetch
|
fastfetch
|
||||||
end
|
end
|
||||||
|
Reference in New Issue
Block a user