Compare commits

..

41 commits

Author SHA1 Message Date
Christoph Hollizeck c3d019a46e
rp5: add ethernet 2025-01-26 15:40:34 +01:00
Christoph Hollizeck 01ad8403a1
adguardhome: increase statistic retention time 2025-01-26 15:40:33 +01:00
Christoph Hollizeck 2cdcb2b6e7
rp5: move things in separate configs, to be reused 2025-01-26 15:40:25 +01:00
Christoph Hollizeck 216812be22
nixberry: add hostplatform 2025-01-26 01:48:33 +01:00
Christoph Hollizeck fba1525ff6
tailscale: init 2025-01-26 00:26:29 +01:00
Christoph Hollizeck d28b38fc94
audio: accomodate changes in nixpkgs 2025-01-12 12:28:49 +01:00
Christoph Hollizeck 62a27d27af
cleanup
Some checks failed
/ test (push) Has been cancelled
one of the hydra tryouts was removed, updated zen flake to one that is maintained
2025-01-02 14:26:55 +01:00
Christoph Hollizeck 6a629c392a website: very crude first attempt
Some checks are pending
/ test (push) Waiting to run
2025-01-02 14:25:06 +01:00
Christoph Hollizeck 9e1d870b63
website: try if this works
Some checks failed
/ test (push) Has been cancelled
2024-12-31 14:02:57 +01:00
Christoph Hollizeck 1f4a3929d0
java: add minimalistic java shell 2024-12-30 16:49:41 +01:00
Christoph Hollizeck d57aa54233 hydra: wip init
Some checks failed
/ test (push) Has been cancelled
2024-12-30 10:57:21 +01:00
Christoph Hollizeck daa9b33754 hydra: wip init
Some checks are pending
/ test (push) Waiting to run
2024-12-29 18:43:30 +01:00
Christoph Hollizeck 1b21323d93
hydra: wip init
Some checks are pending
/ test (push) Waiting to run
2024-12-29 17:46:03 +01:00
Christoph Hollizeck e7066d45a4
hydra: wip init
Some checks failed
/ test (push) Has been cancelled
2024-12-28 12:48:12 +01:00
Christoph Hollizeck d02e25eb96
hydra: wip init
Some checks are pending
/ test (push) Waiting to run
2024-12-28 11:26:20 +01:00
Christoph Hollizeck 7ca6dd60b0
disable runner try out hydra
Some checks are pending
/ test (push) Waiting to run
2024-12-28 11:17:17 +01:00
Christoph Hollizeck 80a42a1570 Update .forgejo/workflows/demo.yaml
Some checks failed
/ test (push) Failing after 1s
2024-12-28 11:03:55 +01:00
Christoph Hollizeck 858f198c1a Update .forgejo/workflows/demo.yaml
Some checks failed
/ test (push) Failing after 1s
2024-12-28 11:02:20 +01:00
Christoph Hollizeck 274ca1c22c Update .forgejo/workflows/demo.yaml
Some checks failed
/ test (push) Failing after 1s
2024-12-28 11:00:44 +01:00
Christoph Hollizeck 593acfb94a Update .forgejo/workflows/demo.yaml
Some checks failed
/ test (push) Failing after 1s
2024-12-28 10:59:23 +01:00
Christoph Hollizeck 3dd0c6593c Update .forgejo/workflows/demo.yaml
Some checks failed
/ test (push) Failing after 6s
2024-12-28 10:58:22 +01:00
Christoph Hollizeck e6c57c65e2 Update .forgejo/workflows/demo.yaml
Some checks failed
/ test (push) Failing after 0s
2024-12-28 10:56:54 +01:00
Christoph Hollizeck 8ac70ea7a8 Update .forgejo/workflows/demo.yaml
Some checks failed
/ test (push) Failing after 0s
2024-12-28 10:54:39 +01:00
Christoph Hollizeck 71d7857c98 Update .forgejo/workflows/demo.yaml
Some checks failed
/ test (push) Failing after 0s
2024-12-28 10:53:05 +01:00
Christoph Hollizeck 3aa807f921 Update .forgejo/workflows/demo.yaml 2024-12-28 10:51:42 +01:00
Christoph Hollizeck 8f1782ec10 Update .forgejo/workflows/demo.yaml
Some checks failed
/ test (push) Failing after 0s
2024-12-28 10:46:31 +01:00
Christoph Hollizeck eb4af3e6bd Update .forgejo/workflows/demo.yaml
Some checks failed
/ test (push) Failing after 0s
2024-12-28 10:46:05 +01:00
Christoph Hollizeck 50feffb7f7 Update .forgejo/workflows/demo.yaml
All checks were successful
/ test (push) Successful in 1s
2024-12-28 10:36:50 +01:00
Christoph Hollizeck 64cad6d72b Update .forgejo/workflows/demo.yaml
Some checks failed
/ test (push) Failing after 1s
Signed-off-by: Daholli <christoph.hollizeck@hey.com>
2024-12-28 10:26:30 +01:00
Christoph Hollizeck bbb1e0dbdc Update .forgejo/workflows/demo.yaml
All checks were successful
/ test (push) Successful in 1s
2024-12-28 09:59:11 +01:00
Christoph Hollizeck 38fc128838 Update .forgejo/workflows/demo.yaml
All checks were successful
/ test (push) Successful in 0s
2024-12-28 09:56:30 +01:00
Christoph Hollizeck 5a6554ee6b forgejo-runner: init
Some checks are pending
/ test (push) Waiting to run
2024-12-28 09:54:34 +01:00
Christoph Hollizeck ed8ff6fe90 lfs: setup lockverify 2024-12-28 07:51:39 +01:00
Christoph Hollizeck 594863ab7d
flake: update 2024-12-28 07:49:25 +01:00
Christoph Hollizeck 8c3dbb4fe9
loptland: add forgejorunner 2024-12-28 07:46:50 +01:00
Christoph Hollizeck b91d90c2fe
cappucchin: global theme enable 2024-12-28 07:43:35 +01:00
Christoph Hollizeck cb76031ca7
devenv: init 2024-12-28 07:42:07 +01:00
Christoph Hollizeck 9be5147133
fonts: update to new style 2024-12-28 07:42:06 +01:00
Christoph Hollizeck c98426be42 forgejo: setup mailer 2024-12-03 16:07:59 +01:00
Christoph Hollizeck fd46cf4c10 forgejo: add mailer 2024-12-03 13:14:45 +01:00
Christoph Hollizeck e0b9c4e99f wsl: home stateversion mismatch 2024-12-03 13:09:27 +01:00
23 changed files with 959 additions and 314 deletions

View file

@ -0,0 +1,15 @@
on:
schedule:
- cron: 0 3 * * *
push:
jobs:
test:
runs-on: native
steps:
- uses: actions/checkout@v3
- run: nix build self#loptland

File diff suppressed because it is too large Load diff

View file

@ -30,7 +30,7 @@
###
# hyprland stuff
hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
hyprland.url = "github:hyprwm/Hyprland";
hyprlock.url = "github:hyprwm/hyprlock";
hyprland-plugins = {
url = "github:hyprwm/hyprland-plugins";
@ -56,12 +56,6 @@
inputs.nixpkgs.follows = "nixpkgs-unstable";
};
# still not sure if I like helix or nvim more, for now helix does mostly everything I need it to
kickstartnvim = {
url = "github:Daholli/kickstart-nix-nvim";
inputs.nixpkgs.follows = "nixpkgs";
};
helix = {
url = "github:helix-editor/helix";
inputs.nixpkgs.follows = "nixpkgs";
@ -76,13 +70,18 @@
sops-nix.url = "github:Mic92/sops-nix";
## temporary
zen-browser.url = "github:ch4og/zen-browser-flake";
zen-browser.url = "github:0xc000022070/zen-browser-flake";
raspberry-pi-nix = {
url = "github:nix-community/raspberry-pi-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
simple-nixos-mailserver.url = "gitlab:simple-nixos-mailserver/nixos-mailserver/nixos-24.05";
catppuccin.url = "github:catppuccin/nix";
nix-gaming.url = "github:fufexan/nix-gaming";
################
## inputs for dev shells
@ -119,14 +118,20 @@
overlays = with inputs; [
snowfall-flake.overlays.default
kickstartnvim.overlays.default
hyprpanel.overlay
];
homes.modules = with inputs; [
sops-nix.homeManagerModules.sops
catppuccin.homeManagerModules.catppuccin
];
systems.modules.nixos = with inputs; [
home-manager.nixosModules.home-manager
nix-ld.nixosModules.nix-ld
sops-nix.nixosModules.sops
catppuccin.nixosModules.catppuccin
];
systems.hosts.nixberry.modules = with inputs; [
@ -134,9 +139,19 @@
raspberry-pi-nix.nixosModules.sd-image
];
systems.hosts.loptland.modules = with inputs; [
simple-nixos-mailserver.nixosModules.default
];
systems.hosts.wsl.modules = with inputs; [ nixos-wsl.nixosModules.default ];
}
// {
// rec {
self = inputs.self;
hydraJobs = {
hosts = lib.mapAttrs (_: cfg: cfg.config.system.build.toplevel) (
lib.filterAttrs (name: cfg: name != "nixberry") self.outputs.nixosConfigurations
);
};
};
}

View file

@ -17,6 +17,4 @@ with lib.wyrdgard;
direnv = enabled;
};
};
home.stateVersion = "24.05";
}

View file

@ -18,6 +18,8 @@ in
};
config = mkIf cfg.enable {
catppuccin.fish.enable = true;
programs = {
fish = {
enable = true;
@ -37,7 +39,7 @@ in
'';
shellAliases = {
vim = "hx";
ls = "eza -lh --icons --git";
ls = "eza -lah --icons --git";
lss = "ls --total-size";
};
plugins = with pkgs.fishPlugins; [

View file

@ -16,6 +16,7 @@ in
};
config = mkIf cfg.enable {
catppuccin.starship.enable = true;
programs = {
fish.shellInit = "
starship init fish | source

View file

@ -19,6 +19,8 @@ in
home.sessionVariables.TERMINAL = "kitty";
catppuccin.kitty.enable = true;
# TODO: move this to a thunar specific module
home.file.".config/Thunar/uca.xml".text = ''
<?xml version="1.0" encoding="UTF-8"?>
@ -40,7 +42,7 @@ in
programs.kitty = {
enable = true;
themeFile = "tokyo_night_night";
# themeFile = "tokyo_night_night";
font = {
name = "Code New Roman";
size = 15;

View file

@ -52,6 +52,7 @@ in
];
strategy = "incremental";
};
lfs."https://git.christophhollizeck.dev/Daholli/nixos-config.git/info/lfs".locksverify = true;
};
};
};

View file

@ -41,12 +41,13 @@ in
!**/appsettings.json
'';
catppuccin.helix.enable = true;
programs.helix = {
enable = true;
package = helix-pkg;
defaultEditor = true;
settings = {
theme = "tokyonight";
editor = {
auto-format = true;
line-number = "relative";
@ -152,11 +153,21 @@ in
config.provideFormatter = true;
config.json.validate.enable = true;
};
vscode-html-language-server = {
command = "${pkgs.vscode-langservers-extracted}/bin/vscode-html-language-server";
args = [ "--stdio" ];
config.provideFormatter = true;
};
vscode-css-language-server = {
command = "${pkgs.vscode-langservers-extracted}/bin/vscode-css-language-server";
args = [ "--stdio" ];
config.provideFormatter = true;
};
vscode-eslint-language-server = {
command = "${pkgs.vscode-langservers-extracted}/bin/vscode-eslint-language-server";
args = [ "--stdio" ];
config.provideFormatter = true;
};
};
};
};

View file

@ -610,5 +610,9 @@ in
text = builtins.toJSON settings;
};
};
environment.systemPackages = with pkgs.nerd-fonts; [
jetbrains-mono
];
};
}

View file

@ -17,11 +17,15 @@ in
};
config = mkIf cfg.enable {
catppuccin.flavor = "mocha";
catppuccin.enable = true;
${namespace}.home.extraOptions = {
dconf.settings = {
"org/gnome/desktop/interface" = {
color-scheme = "prefer-dark";
};
catppuccin.flavor = "mocha";
catppuccin.enable = true;
dconf = {
settings."org/gnome/desktop/interface".color-scheme = "prefer-dark";
};
gtk = {
@ -40,6 +44,5 @@ in
platformTheme = "gnome";
style = "adwaita-dark";
};
};
}

View file

@ -56,7 +56,7 @@ in
users = [
"root"
config.${namespace}.user.name
];
] ++ optional config.services.hydra.enable "hydra hydra-evaluator hydra-queue-runner";
in
{
package = cfg.package;
@ -71,6 +71,7 @@ in
auto-optimise-store = true;
trusted-users = users;
allowed-users = users;
allowed-uris = "github: https://github.com/ git+https://github.com/ gitlab: https://gitlab.com/ git+https://gitlab.com/";
substituters = [
cfg.default-substituter.url
] ++ (mapAttrsToList (name: value: name) cfg.extra-substituters);

View file

@ -28,15 +28,11 @@ in
fonts.packages =
with pkgs;
[
(nerdfonts.override {
fonts = [
"CodeNewRoman"
"NerdFontsSymbolsOnly"
];
})
font-awesome
powerline-fonts
powerline-symbols
nerd-fonts.code-new-roman
nerd-fonts.symbols-only
]
++ cfg.fonts;
};

View file

@ -24,7 +24,7 @@ in
programs.noisetorch.enable = true;
hardware.pulseaudio = disabled;
services.pulseaudio = disabled;
security.rtkit.enable = true;
services.pipewire = {

View file

@ -0,0 +1,23 @@
{
config,
lib,
namespace,
pkgs,
...
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.${namespace}.tools.devenv;
in
{
options.${namespace}.tools.devenv = {
enable = mkEnableOption "Whether or not to enable direnv.";
};
config = mkIf cfg.enable {
environment.systemPackages = [
pkgs.devenv
];
};
}

View file

@ -49,6 +49,7 @@ in
safe = {
directory = "${config.users.users.${user.name}.home}/projects/config";
};
lfs."https://git.christophhollizeck.dev/Daholli/nixos-config.git/info/lfs".locksverify = true;
};
};
};

View file

@ -0,0 +1,3 @@
{ channels, ... }:
final: prev: { inherit (channels.nixpkgs-pyfa) pyfa; }

View file

@ -5,6 +5,11 @@ factorio:
forgejo:
db:
password: ENC[AES256_GCM,data:CicLsCG2WCtiKMcz3DF5eVVaT8A=,iv:SPO1H4AZwo5FjJWkf1OS7aPOrpTGxqsAj4q3cuuWAbA=,tag:0snK8RyAd8heNvui2sbSNw==,type:str]
mail:
password: ENC[AES256_GCM,data:XgQZM0MBUEELyhH7UvyyMEiUABs=,iv:m3Wzs2SAPQ2w6UC02lpTvwd83Dt0LEzqdIj65HeOrbU=,tag:3cr5dnjeyoJ4ze9RFd9K5g==,type:str]
passwordHash: ENC[AES256_GCM,data:hHGJBUEtCi/gErZ5vm0gsEFqyIDNkED4scR4NAOSzbiiZAYTMg++yqf3hfjjwWV3wTPswNpzzw+gYKEH,iv:wDM5IOOamopFpMEkUit4y7LBZi8CJff3+Tc08lK4IXI=,tag:FaaaohtA+vBFwjDugoemQw==,type:str]
runner:
token: ENC[AES256_GCM,data:PyJvFNtq18h3zDwBT/jDYdh7noQ1Si1gpTnVAPEbKGQFydIMk0CQWQDCjiK6xA==,iv:ceGpyyMnLrdJTPEw6ViDeZVy83dRWi6tViks6K7p1UE=,tag:zEFP/8fI9nxJdf4BmJH7Uw==,type:str]
netcup:
customer_number: ENC[AES256_GCM,data:9+QboNg1,iv:Tg9ylJUM8L/kzqFmk2uIsD9noqnp5wIxr5GVXMsZwB8=,tag:2qRggSIkPHuCQYDWCfka5Q==,type:str]
api:
@ -34,8 +39,8 @@ sops:
UllqSDR1YWl6aU1jSnY2WE9oczg5Q28KfN15tFxXHrJmOHySK+cyLi2bFqArg244
bNTYyuBUtBW1Y/EuNpbyLjSNQpKZWFz7grE64uxrNQHP865N3wv0gg==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2024-11-12T14:29:12Z"
mac: ENC[AES256_GCM,data:lKx1qAe689wkWkrMRvqHpE0zmv+ShLwpApBw2C4+JEuuHnoN1W7aoB/GQRkWzmImCCy9odzM2yoUa0mJogl0i+bddblrl+ZS0uPmPQrm3pM0sl876pelogxKuNpQWS8PRNDe24z3m06f0TozhfPF9D2ywH30tFH8naZONfWTTUU=,iv:tDhJVlWnTHnjZak32pgnUZ8XtM6TK9o2gZ0X3tcQD4Q=,tag:PcMS/5DpEkDkk+U0GG918w==,type:str]
lastmodified: "2024-12-28T08:37:33Z"
mac: ENC[AES256_GCM,data:S2UcgNVmk+BSHaUVodsDHjwCIB5cAIfv+tb8mhTh9hktZBFxfQsRgrH+dFlpe7FmbWRBF8XnOIlsf74ytamfmGVEqBfyLA8gzdiAt9oFmOVdCFGf29IaSQjk8nehaYBPM5CJ35ihhzw8yC6S3JmgGuGuzmtDtJq61Zp68WQ5tow=,iv:KKo65bjuNuvzclAFALEGdKn134TxBhDjyjbX3ULEuV8=,tag:odGFLbfijulc9/hmjrPRxQ==,type:str]
pgp: []
unencrypted_suffix: _unencrypted
version: 3.9.1
version: 3.9.2

13
shells/java/default.nix Normal file
View file

@ -0,0 +1,13 @@
{
pkgs,
mkShell,
...
}:
mkShell {
# Create your shell
nativeBuildInputs = with pkgs; [
jdt-language-server
zulu8
zulu21
];
}

View file

@ -19,6 +19,11 @@ in
raspberry-pi-5
];
services.tailscale = {
enable = true;
useRoutingFeatures = "server";
};
networking = {
interfaces.end0 = {
ipv4.addresses = [
@ -109,7 +114,7 @@ in
};
};
# Pi specific stuff
# Pi specific stuff
raspberry-pi-nix.board = "bcm2712";
hardware = {
raspberry-pi = {

View file

@ -11,6 +11,7 @@ let
domainName = "christophhollizeck.dev";
forgejoPort = 3000;
hydraPort = 2000;
cfg.enableAcme = true;
@ -26,6 +27,15 @@ in
"forgejo/db/password" = {
inherit sopsFile;
};
"forgejo/mail/password" = {
inherit sopsFile;
};
"forgejo/mail/passwordHash" = {
inherit sopsFile;
};
"forgejo/runner/token" = {
inherit sopsFile;
};
};
};
@ -43,12 +53,31 @@ in
};
};
"hydra.${domainName}" = {
forceSSL = cfg.enableAcme;
useACMEHost = mkIf cfg.enableAcme domainName;
locations."/" = {
proxyPass = "http://localhost:${toString hydraPort}/";
};
};
"${domainName}" = {
forceSSL = cfg.enableAcme;
useACMEHost = mkIf cfg.enableAcme domainName;
locations."/" = {
return = "404";
root = /var/www/website;
index = "index.html";
};
};
"_" = {
forceSSL = cfg.enableAcme;
useACMEHost = mkIf cfg.enableAcme domainName;
locations."/" = {
proxyPass = "https://${domainName}";
};
};
};
@ -69,10 +98,79 @@ in
HTTP_PORT = forgejoPort;
};
mailer = {
ENABLED = true;
PROTOCOL = "smtps";
FROM = "no-reply@${domainName}";
SMTP_ADDR = "mail.${domainName}";
USER = "forgejo@${domainName}";
};
service.DISABLE_REGISTRATION = true;
};
secrets = {
mailer.PASSWD = config.sops.secrets."forgejo/mail/password".path;
};
};
mailserver = {
enable = true;
fqdn = "mail.${domainName}";
domains = [ domainName ];
loginAccounts = {
"forgejo@${domainName}" = {
hashedPasswordFile = config.sops.secrets."forgejo/mail/passwordHash".path;
aliases = [ "no-reply@${domainName}" ];
};
};
certificateScheme = "acme-nginx";
};
services.hydra = {
enable = true;
hydraURL = "http://localhost:${toString hydraPort}";
port = hydraPort;
notificationSender = "hydra@localhost";
buildMachinesFiles = [ ];
useSubstitutes = true;
};
# services.gitea-actions-runner = {
# package = pkgs.forgejo-actions-runner;
# instances.default = {
# enable = true;
# name = "monolith";
# url = "https://git.${domainName}";
# tokenFile = config.sops.secrets."forgejo/runner/token".path;
# labels = [
# "native:host"
# ];
# hostPackages = with pkgs; [
# bash
# coreutils
# curl
# gawk
# gitMinimal
# gnused
# nodejs
# wget
# ];
# settings = {
# log.level = "info";
# runner = {
# capacity = 1;
# timeout = "3h";
# shutdown_timeout = "3s";
# fetch_timeout = "5s";
# fetch_inteval = "2s";
# };
# };
# };
# };
networking.firewall.allowedTCPPorts = [
forgejoPort
80

View file

@ -0,0 +1,154 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Christoph Hollizeck</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<style>
* {
box-sizing: border-box;
}
html {
height: 100%;
margin: 0 auto;
}
body {
height: inherit;
font-family: monospace;
background-color: #2e2c42;
}
.content-box {
margin: auto;
margin-top: 10%;
position: relative;
width: 50vw;
height: 50vw;
max-width: 828px;
max-height: 828px;
min-width: 541px;
min-height: 541px;
text-align: center;
border-radius: 15%;
color: #90A0C1;
background-color: #151823;
}
.content-box:after {
position: absolute;
content: "";
top: 5vw;
left: 0;
right: 0;
z-index: -1;
height: 100%;
width: 100%;
margin: auto;
transform: scale(0.75);
-webkit-filter: blur(5vw);
-moz-filter: blur(5vw);
-ms-filter: blur(5vw);
filter: blur(5vw);
background: linear-gradient(270deg, #0fffc1, #7e0fff);
background-size: 200% 200%;
animation: animateGlow 10s ease infinite;
}
.text-box {
display: flex;
flex-direction: column;
padding: 10%;
height: 100%;
}
p {
font-size: 13px;
text-align: left;
}
.hyperlinks {
margin-top: auto;
}
/* Style all font awesome icons */
.fa,
.fa-brands {
padding: 20px;
font-size: 30px;
width: 50px;
text-align: center;
text-decoration: none;
}
.fa:visited {
color: inherit;
}
/* Add a hover effect if you want */
.fa:hover {
opacity: 0.7;
}
@keyframes animateGlow {
0% {
background-position: 0% 50%;
}
50% {
background-position: 100% 50%;
}
100% {
background-position: 0% 50%;
}
}
@keyframes textColor {
0% {
color: #7e0fff;
}
50% {
color: #0fffc1;
}
100% {
color: #7e0fff;
}
}
</style>
</head>
<body>
<div class="content-box">
<div class="text-box">
<h1> Christoph Hollizeck </h1>
<p> "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
pariatur.
Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
</p>
<p> "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
pariatur.
Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
</p>
<div class="hyperlinks">
<a href="https://git.christophhollizeck.dev" class="fa fa-git"></a>
<a href="https://https://www.linkedin.com/in/christoph-hollizeck-650007214/" class="fa fa-linkedin"></a>
</div>
</div>
</div>
</body>
</html>

View file

@ -1,4 +1,5 @@
{
inputs,
lib,
namespace,
pkgs,
@ -18,7 +19,9 @@ in
# eve
bottles
pyfa
unzip
];
environment.pathsToLink = [ "/libexec" ];
@ -32,6 +35,11 @@ in
backupFileExtension = ".bak";
};
services.tailscale = {
enable = true;
useRoutingFeatures = "server";
};
nix = {
distributedBuilds = true;
settings.builders-use-substitutes = true;
@ -100,7 +108,7 @@ in
windowrulev2 = [
"workspace 8 silent, class:^(steam)$, title:^(Friends List)"
"workspace 8 silent, class:^(vesktop)$, title:^(Discord)"
"workspace 8 silent, class:^(discord)$, title:^(Discord)"
"workspace 7 silent, class:^(com.obsproject.Studio)$"
];
};
@ -110,6 +118,8 @@ in
factorio-server = disabled;
};
tools.devenv = enabled;
system = {
hardware = {
bluetooth = enabled;