Compare commits
No commits in common. "4fad38afdbcfaa34cbfb9c224bc8a11f12def2a2" and "06ec1df09a1f313ce543380feeab3d8651e63a8f" have entirely different histories.
4fad38afdb
...
06ec1df09a
6
.github/README.md
vendored
|
|
@ -9,8 +9,8 @@
|
||||||
# \~SwarselSystems\~
|
# \~SwarselSystems\~
|
||||||
|
|
||||||
<p align="center">
|
<p align="center">
|
||||||
<img width="49%" title="Tiling" alt="swarselsystems_preview1" src="https://github.com/user-attachments/assets/f6021ab9-6289-497d-8747-28f5d526b75a" />
|
<img src="https://i.imgur.com/bmgLNcu.png" width="49%" title="Tiling">
|
||||||
<img width="49%" title="Waybar" alt="swarselsystems_preview2" src="https://github.com/user-attachments/assets/1160d9f7-710c-4046-8fcf-476bb4a0be84" />
|
<img src="https://i.imgur.com/0G7Be6e.png" width="49%" title="Waybar">
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
@ -104,8 +104,6 @@
|
||||||
<details>
|
<details>
|
||||||
<summary>Click here for a summary of my infrastructure</summary>
|
<summary>Click here for a summary of my infrastructure</summary>
|
||||||
|
|
||||||
<img width="2202" height="2947" alt="topology" src="https://github.com/user-attachments/assets/0eb37288-47a8-40e3-9211-648eee0ed408" />
|
|
||||||
|
|
||||||
### Programs
|
### Programs
|
||||||
|
|
||||||
| Topic | Program |
|
| Topic | Program |
|
||||||
|
|
|
||||||
BIN
.github/swarselsystems_preview.png
vendored
Normal file
|
After Width: | Height: | Size: 7.9 MiB |
|
|
@ -967,7 +967,6 @@ Another note concerning [[https://flake.parts/][flake-parts]]:
|
||||||
(mkConnection "moonside" "wan")
|
(mkConnection "moonside" "wan")
|
||||||
(mkConnection "pfsense" "wan")
|
(mkConnection "pfsense" "wan")
|
||||||
(mkConnection "milkywell" "wan")
|
(mkConnection "milkywell" "wan")
|
||||||
(mkConnection "magicant" "wifi")
|
|
||||||
(mkConnection "toto" "bootstrapper")
|
(mkConnection "toto" "bootstrapper")
|
||||||
(mkConnection "chaostheatre" "demo host")
|
(mkConnection "chaostheatre" "demo host")
|
||||||
];
|
];
|
||||||
|
|
@ -1026,10 +1025,6 @@ Another note concerning [[https://flake.parts/][flake-parts]]:
|
||||||
};
|
};
|
||||||
|
|
||||||
winters.interfaces."eth1" = { };
|
winters.interfaces."eth1" = { };
|
||||||
bakery.interfaces = {
|
|
||||||
"eth1" = { };
|
|
||||||
"wifi" = { };
|
|
||||||
};
|
|
||||||
|
|
||||||
wifi-ap = mkSwitch "Wi-Fi AP" {
|
wifi-ap = mkSwitch "Wi-Fi AP" {
|
||||||
info = "Huawei";
|
info = "Huawei";
|
||||||
|
|
@ -1040,9 +1035,6 @@ Another note concerning [[https://flake.parts/][flake-parts]]:
|
||||||
"wifi"
|
"wifi"
|
||||||
]
|
]
|
||||||
];
|
];
|
||||||
connections = {
|
|
||||||
wifi = mkConnection "bakery" "wifi";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
switch-livingroom = mkSwitch "Switch Livingroom" {
|
switch-livingroom = mkSwitch "Switch Livingroom" {
|
||||||
|
|
@ -1073,19 +1065,6 @@ Another note concerning [[https://flake.parts/][flake-parts]]:
|
||||||
interfaces.eth1 = { };
|
interfaces.eth1 = { };
|
||||||
};
|
};
|
||||||
|
|
||||||
magicant = mkDevice "magicant" {
|
|
||||||
icon = "${self}/files/topology-images/phone.png";
|
|
||||||
info = "Samsung Z Flip 6";
|
|
||||||
image = "${self}/files/topology-images/zflip6.png";
|
|
||||||
interfaces.wifi = { };
|
|
||||||
};
|
|
||||||
|
|
||||||
machpizza = mkDevice "machpizza" {
|
|
||||||
info = "MacBook Pro 2016";
|
|
||||||
icon = "${self}/files/topology-images/mac.png";
|
|
||||||
interfaces."eth1" = { };
|
|
||||||
};
|
|
||||||
|
|
||||||
pc = mkDevice "Windows Gaming Server" {
|
pc = mkDevice "Windows Gaming Server" {
|
||||||
info = "i7-4790k, GTX970, 32GB RAM";
|
info = "i7-4790k, GTX970, 32GB RAM";
|
||||||
image = "${self}/files/topology-images/pc.png";
|
image = "${self}/files/topology-images/pc.png";
|
||||||
|
|
@ -1107,7 +1086,6 @@ Another note concerning [[https://flake.parts/][flake-parts]]:
|
||||||
]
|
]
|
||||||
];
|
];
|
||||||
connections.eth2 = mkConnection "printer" "eth1";
|
connections.eth2 = mkConnection "printer" "eth1";
|
||||||
connections.eth3 = mkConnection "machpizza" "eth1";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
printer = mkDevice "Printer" {
|
printer = mkDevice "Printer" {
|
||||||
|
|
@ -2081,7 +2059,7 @@ My personal laptop.
|
||||||
lowResolution = "1280x800";
|
lowResolution = "1280x800";
|
||||||
highResolution = "1920x1080";
|
highResolution = "1920x1080";
|
||||||
sharescreen = "eDP-1";
|
sharescreen = "eDP-1";
|
||||||
info = "Lenovo Ideapad 720S-13IKB";
|
info = "Lenovo ThinkPad";
|
||||||
firewall = lib.mkForce true;
|
firewall = lib.mkForce true;
|
||||||
wallpaper = self + /files/wallpaper/lenovowp.png;
|
wallpaper = self + /files/wallpaper/lenovowp.png;
|
||||||
hasBluetooth = true;
|
hasBluetooth = true;
|
||||||
|
|
@ -2518,10 +2496,6 @@ This machine mainly acts as an external sync helper. It manages the following th
|
||||||
domain = "subnet03112148.vcn03112148.oraclevcn.com";
|
domain = "subnet03112148.vcn03112148.oraclevcn.com";
|
||||||
};
|
};
|
||||||
|
|
||||||
topology.self = {
|
|
||||||
icon = "devices.cloud-server";
|
|
||||||
};
|
|
||||||
|
|
||||||
hardware = {
|
hardware = {
|
||||||
enableAllFirmware = lib.mkForce false;
|
enableAllFirmware = lib.mkForce false;
|
||||||
};
|
};
|
||||||
|
|
@ -2720,15 +2694,12 @@ This machine mainly acts as an external sync helper. It manages the following th
|
||||||
etc."issue".text = "\4";
|
etc."issue".text = "\4";
|
||||||
};
|
};
|
||||||
|
|
||||||
topology.self = {
|
topology.self.interfaces.wg = {
|
||||||
icon = "devices.cloud-server";
|
|
||||||
interfaces.wg = {
|
|
||||||
addresses = [ "192.168.3.4" ];
|
addresses = [ "192.168.3.4" ];
|
||||||
renderer.hidePhysicalConnections = true;
|
renderer.hidePhysicalConnections = true;
|
||||||
virtual = true;
|
virtual = true;
|
||||||
type = "wireguard";
|
type = "wireguard";
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
networking = {
|
networking = {
|
||||||
nftables.enable = lib.mkForce false;
|
nftables.enable = lib.mkForce false;
|
||||||
|
|
@ -11133,17 +11104,16 @@ Sets environment variables. Here I am only setting the EDITOR variable, most var
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.swarselmodules.env = lib.mkEnableOption "env settings";
|
options.swarselmodules.env = lib.mkEnableOption "env settings";
|
||||||
config =z lib.mkIf config.swarselmodules.env {
|
config = lib.mkIf config.swarselmodules.env {
|
||||||
home.sessionVariables = {
|
home.sessionVariables = {
|
||||||
EDITOR = "e -w";
|
EDITOR = "e -w";
|
||||||
DISPLAY = ":0";
|
DISPLAY = ":0";
|
||||||
SWARSEL_LO_RES = config.swarselsystems.lowResolution;
|
SWARSEL_LO_RES = config.swarselsystems.lowResolution;
|
||||||
SWARSEL_HI_RES = config.swarselsystems.highResolution;
|
SWARSEL_HI_RES = config.swarselsystems.highResolution;
|
||||||
} // (lib.optionalAttrs (!isPublic) {
|
CROC_RELAY = lib.mkIf (!isPublic) crocDomain;
|
||||||
CROC_RELAY = crocDomain;
|
};
|
||||||
GITHUB_NOTIFICATION_TOKEN_PATH = nixosConfig.sops.secrets.github-notifications-token.path;
|
|
||||||
});
|
|
||||||
systemd.user.sessionVariables = lib.mkIf (!isPublic) {
|
systemd.user.sessionVariables = lib.mkIf (!isPublic) {
|
||||||
|
GITHUB_NOTIFICATION_TOKEN_PATH = nixosConfig.sops.secrets.github-notifications-token.path;
|
||||||
SWARSEL_MAIL1 = address1;
|
SWARSEL_MAIL1 = address1;
|
||||||
SWARSEL_MAIL2 = address2;
|
SWARSEL_MAIL2 = address2;
|
||||||
SWARSEL_MAIL3 = address3;
|
SWARSEL_MAIL3 = address3;
|
||||||
|
|
@ -11661,8 +11631,6 @@ Currently I only use it as before with =initExtra= though.
|
||||||
boot-diff = "nix store diff-closures /run/*-system";
|
boot-diff = "nix store diff-closures /run/*-system";
|
||||||
gen-diff = "nix profile diff-closures --profile /nix/var/nix/profiles/system";
|
gen-diff = "nix profile diff-closures --profile /nix/var/nix/profiles/system";
|
||||||
cc = "wl-copy";
|
cc = "wl-copy";
|
||||||
topology = "nix build .#topology.x86_64-linux.config.output";
|
|
||||||
iso = "nix build --print-out-paths .#live-iso";
|
|
||||||
}
|
}
|
||||||
config.swarselsystems.shellAliases;
|
config.swarselsystems.shellAliases;
|
||||||
autosuggestion.enable = true;
|
autosuggestion.enable = true;
|
||||||
|
|
@ -22639,8 +22607,8 @@ Here lies defined the readme for GitHub and Forgejo:
|
||||||
# \~SwarselSystems\~
|
# \~SwarselSystems\~
|
||||||
|
|
||||||
<p align="center">
|
<p align="center">
|
||||||
<img width="49%" title="Tiling" alt="swarselsystems_preview1" src="https://github.com/user-attachments/assets/f6021ab9-6289-497d-8747-28f5d526b75a" />
|
<img src="https://i.imgur.com/bmgLNcu.png" width="49%" title="Tiling">
|
||||||
<img width="49%" title="Waybar" alt="swarselsystems_preview2" src="https://github.com/user-attachments/assets/1160d9f7-710c-4046-8fcf-476bb4a0be84" />
|
<img src="https://i.imgur.com/0G7Be6e.png" width="49%" title="Waybar">
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
@ -22734,8 +22702,6 @@ Here lies defined the readme for GitHub and Forgejo:
|
||||||
<details>
|
<details>
|
||||||
<summary>Click here for a summary of my infrastructure</summary>
|
<summary>Click here for a summary of my infrastructure</summary>
|
||||||
|
|
||||||
<img width="2202" height="2947" alt="topology" src="https://github.com/user-attachments/assets/0eb37288-47a8-40e3-9211-648eee0ed408" />
|
|
||||||
|
|
||||||
### Programs
|
### Programs
|
||||||
|
|
||||||
<<programs>>
|
<<programs>>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 209 KiB After Width: | Height: | Size: 205 KiB |
|
Before Width: | Height: | Size: 329 KiB |
|
Before Width: | Height: | Size: 92 KiB After Width: | Height: | Size: 107 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 94 KiB |
|
|
@ -27,7 +27,7 @@ in
|
||||||
lowResolution = "1280x800";
|
lowResolution = "1280x800";
|
||||||
highResolution = "1920x1080";
|
highResolution = "1920x1080";
|
||||||
sharescreen = "eDP-1";
|
sharescreen = "eDP-1";
|
||||||
info = "Lenovo Ideapad 720S-13IKB";
|
info = "Lenovo ThinkPad";
|
||||||
firewall = lib.mkForce true;
|
firewall = lib.mkForce true;
|
||||||
wallpaper = self + /files/wallpaper/lenovowp.png;
|
wallpaper = self + /files/wallpaper/lenovowp.png;
|
||||||
hasBluetooth = true;
|
hasBluetooth = true;
|
||||||
|
|
|
||||||
|
|
@ -17,10 +17,6 @@
|
||||||
domain = "subnet03112148.vcn03112148.oraclevcn.com";
|
domain = "subnet03112148.vcn03112148.oraclevcn.com";
|
||||||
};
|
};
|
||||||
|
|
||||||
topology.self = {
|
|
||||||
icon = "devices.cloud-server";
|
|
||||||
};
|
|
||||||
|
|
||||||
hardware = {
|
hardware = {
|
||||||
enableAllFirmware = lib.mkForce false;
|
enableAllFirmware = lib.mkForce false;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -26,15 +26,12 @@ in
|
||||||
etc."issue".text = "\4";
|
etc."issue".text = "\4";
|
||||||
};
|
};
|
||||||
|
|
||||||
topology.self = {
|
topology.self.interfaces.wg = {
|
||||||
icon = "devices.cloud-server";
|
|
||||||
interfaces.wg = {
|
|
||||||
addresses = [ "192.168.3.4" ];
|
addresses = [ "192.168.3.4" ];
|
||||||
renderer.hidePhysicalConnections = true;
|
renderer.hidePhysicalConnections = true;
|
||||||
virtual = true;
|
virtual = true;
|
||||||
type = "wireguard";
|
type = "wireguard";
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
networking = {
|
networking = {
|
||||||
nftables.enable = lib.mkForce false;
|
nftables.enable = lib.mkForce false;
|
||||||
|
|
|
||||||
|
|
@ -8,17 +8,16 @@ let
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.swarselmodules.env = lib.mkEnableOption "env settings";
|
options.swarselmodules.env = lib.mkEnableOption "env settings";
|
||||||
config = z lib.mkIf config.swarselmodules.env {
|
config = lib.mkIf config.swarselmodules.env {
|
||||||
home.sessionVariables = {
|
home.sessionVariables = {
|
||||||
EDITOR = "e -w";
|
EDITOR = "e -w";
|
||||||
DISPLAY = ":0";
|
DISPLAY = ":0";
|
||||||
SWARSEL_LO_RES = config.swarselsystems.lowResolution;
|
SWARSEL_LO_RES = config.swarselsystems.lowResolution;
|
||||||
SWARSEL_HI_RES = config.swarselsystems.highResolution;
|
SWARSEL_HI_RES = config.swarselsystems.highResolution;
|
||||||
} // (lib.optionalAttrs (!isPublic) {
|
CROC_RELAY = lib.mkIf (!isPublic) crocDomain;
|
||||||
CROC_RELAY = crocDomain;
|
};
|
||||||
GITHUB_NOTIFICATION_TOKEN_PATH = nixosConfig.sops.secrets.github-notifications-token.path;
|
|
||||||
});
|
|
||||||
systemd.user.sessionVariables = lib.mkIf (!isPublic) {
|
systemd.user.sessionVariables = lib.mkIf (!isPublic) {
|
||||||
|
GITHUB_NOTIFICATION_TOKEN_PATH = nixosConfig.sops.secrets.github-notifications-token.path;
|
||||||
SWARSEL_MAIL1 = address1;
|
SWARSEL_MAIL1 = address1;
|
||||||
SWARSEL_MAIL2 = address2;
|
SWARSEL_MAIL2 = address2;
|
||||||
SWARSEL_MAIL3 = address3;
|
SWARSEL_MAIL3 = address3;
|
||||||
|
|
|
||||||
|
|
@ -49,8 +49,6 @@ in
|
||||||
boot-diff = "nix store diff-closures /run/*-system";
|
boot-diff = "nix store diff-closures /run/*-system";
|
||||||
gen-diff = "nix profile diff-closures --profile /nix/var/nix/profiles/system";
|
gen-diff = "nix profile diff-closures --profile /nix/var/nix/profiles/system";
|
||||||
cc = "wl-copy";
|
cc = "wl-copy";
|
||||||
topology = "nix build .#topology.x86_64-linux.config.output";
|
|
||||||
iso = "nix build --print-out-paths .#live-iso";
|
|
||||||
}
|
}
|
||||||
config.swarselsystems.shellAliases;
|
config.swarselsystems.shellAliases;
|
||||||
autosuggestion.enable = true;
|
autosuggestion.enable = true;
|
||||||
|
|
|
||||||
|
|
@ -35,7 +35,6 @@
|
||||||
(mkConnection "moonside" "wan")
|
(mkConnection "moonside" "wan")
|
||||||
(mkConnection "pfsense" "wan")
|
(mkConnection "pfsense" "wan")
|
||||||
(mkConnection "milkywell" "wan")
|
(mkConnection "milkywell" "wan")
|
||||||
(mkConnection "magicant" "wifi")
|
|
||||||
(mkConnection "toto" "bootstrapper")
|
(mkConnection "toto" "bootstrapper")
|
||||||
(mkConnection "chaostheatre" "demo host")
|
(mkConnection "chaostheatre" "demo host")
|
||||||
];
|
];
|
||||||
|
|
@ -94,10 +93,6 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
winters.interfaces."eth1" = { };
|
winters.interfaces."eth1" = { };
|
||||||
bakery.interfaces = {
|
|
||||||
"eth1" = { };
|
|
||||||
"wifi" = { };
|
|
||||||
};
|
|
||||||
|
|
||||||
wifi-ap = mkSwitch "Wi-Fi AP" {
|
wifi-ap = mkSwitch "Wi-Fi AP" {
|
||||||
info = "Huawei";
|
info = "Huawei";
|
||||||
|
|
@ -108,9 +103,6 @@
|
||||||
"wifi"
|
"wifi"
|
||||||
]
|
]
|
||||||
];
|
];
|
||||||
connections = {
|
|
||||||
wifi = mkConnection "bakery" "wifi";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
switch-livingroom = mkSwitch "Switch Livingroom" {
|
switch-livingroom = mkSwitch "Switch Livingroom" {
|
||||||
|
|
@ -141,19 +133,6 @@
|
||||||
interfaces.eth1 = { };
|
interfaces.eth1 = { };
|
||||||
};
|
};
|
||||||
|
|
||||||
magicant = mkDevice "magicant" {
|
|
||||||
icon = "${self}/files/topology-images/phone.png";
|
|
||||||
info = "Samsung Z Flip 6";
|
|
||||||
image = "${self}/files/topology-images/zflip6.png";
|
|
||||||
interfaces.wifi = { };
|
|
||||||
};
|
|
||||||
|
|
||||||
machpizza = mkDevice "machpizza" {
|
|
||||||
info = "MacBook Pro 2016";
|
|
||||||
icon = "${self}/files/topology-images/mac.png";
|
|
||||||
interfaces."eth1" = { };
|
|
||||||
};
|
|
||||||
|
|
||||||
pc = mkDevice "Windows Gaming Server" {
|
pc = mkDevice "Windows Gaming Server" {
|
||||||
info = "i7-4790k, GTX970, 32GB RAM";
|
info = "i7-4790k, GTX970, 32GB RAM";
|
||||||
image = "${self}/files/topology-images/pc.png";
|
image = "${self}/files/topology-images/pc.png";
|
||||||
|
|
@ -175,7 +154,6 @@
|
||||||
]
|
]
|
||||||
];
|
];
|
||||||
connections.eth2 = mkConnection "printer" "eth1";
|
connections.eth2 = mkConnection "printer" "eth1";
|
||||||
connections.eth3 = mkConnection "machpizza" "eth1";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
printer = mkDevice "Printer" {
|
printer = mkDevice "Printer" {
|
||||||
|
|
|
||||||