resolve merge conflict
This commit is contained in:
commit
fa7113e7af
|
@ -26,7 +26,6 @@ things to do
|
||||||
------------
|
------------
|
||||||
|
|
||||||
- integrate `disko` and `sops-nix` into the setup
|
- integrate `disko` and `sops-nix` into the setup
|
||||||
- switch from gitea to cgit
|
|
||||||
- establish backup infrastructure for `netbox`
|
- establish backup infrastructure for `netbox`
|
||||||
- move gmail-mail-bridge into mail-sync repo
|
- move gmail-mail-bridge into mail-sync repo
|
||||||
* (perhaps figure out how to produce a flake for it)
|
* (perhaps figure out how to produce a flake for it)
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
../../modules/ssh-phone-home.nix
|
../../modules/ssh-phone-home.nix
|
||||||
../../modules/bootstrap.nix
|
../../modules/bootstrap.nix
|
||||||
|
../../modules/hosts.nix
|
||||||
../../modules/common.nix
|
../../modules/common.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
@ -5,6 +5,7 @@
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
./nvidia.nix
|
./nvidia.nix
|
||||||
../../modules/ssh-phone-home.nix
|
../../modules/ssh-phone-home.nix
|
||||||
|
../../modules/hosts.nix
|
||||||
../../modules/bootstrap.nix
|
../../modules/bootstrap.nix
|
||||||
../../modules/common.nix
|
../../modules/common.nix
|
||||||
../../modules/x11.nix
|
../../modules/x11.nix
|
||||||
|
@ -24,6 +25,7 @@
|
||||||
vscodium
|
vscodium
|
||||||
thunderbird
|
thunderbird
|
||||||
libreoffice
|
libreoffice
|
||||||
|
texliveMedium
|
||||||
];
|
];
|
||||||
|
|
||||||
services.hardware.bolt.enable = true; # thunderbolt support
|
services.hardware.bolt.enable = true; # thunderbolt support
|
||||||
|
|
|
@ -1,114 +1,6 @@
|
||||||
{ lib, config, pkgs, ... }:
|
{ lib, config, pkgs, ... }:
|
||||||
|
|
||||||
let
|
{
|
||||||
cgitrc = pkgs.writeText "cgitrc" ''
|
|
||||||
css=/static/cgit.css
|
|
||||||
logo=/static/logo.png
|
|
||||||
favicon=/static/favicon.ico
|
|
||||||
root-title=beepboop.systems
|
|
||||||
root-desc=quality git hosting
|
|
||||||
|
|
||||||
readme=:README
|
|
||||||
readme=:readme
|
|
||||||
readme=:readme.txt
|
|
||||||
readme=:README.txt
|
|
||||||
readme=:readme.md
|
|
||||||
readme=:README.md
|
|
||||||
|
|
||||||
remove-suffix=1
|
|
||||||
section-from-path=1
|
|
||||||
|
|
||||||
section-sort=0
|
|
||||||
|
|
||||||
section=meta
|
|
||||||
|
|
||||||
repo.url=about
|
|
||||||
repo.path=/doesnt/exist
|
|
||||||
repo.desc=about this site
|
|
||||||
|
|
||||||
section=other services at beepboop.systems
|
|
||||||
|
|
||||||
repo.url=bitwarden
|
|
||||||
repo.path=/doesnt/exist
|
|
||||||
repo.desc=a simple password manager
|
|
||||||
|
|
||||||
repo.url=radicale
|
|
||||||
repo.path=/doesnt/exist
|
|
||||||
repo.desc=a simple calendar server
|
|
||||||
|
|
||||||
repo.url=roundcube
|
|
||||||
repo.path=/doesnt/exist
|
|
||||||
repo.desc=mail.beepboop.systems webmail
|
|
||||||
|
|
||||||
repo.url=gitea
|
|
||||||
repo.path=/doesnt/exist
|
|
||||||
repo.desc=real git hosting services (until this one is fully operational)
|
|
||||||
|
|
||||||
section=projects
|
|
||||||
|
|
||||||
repo.url=advent
|
|
||||||
repo.path=/var/lib/git/advent
|
|
||||||
repo.desc=advent of code solutions
|
|
||||||
|
|
||||||
repo.url=desmos-computer
|
|
||||||
repo.path=/var/lib/git/desmos-computer
|
|
||||||
repo.desc=a minimal ISA implemented in the Desmos graphing calculator
|
|
||||||
|
|
||||||
repo.url=dot_testing
|
|
||||||
repo.path=/var/lib/git/dot_testing
|
|
||||||
repo.desc=configuration files for NixOS/GNU+Linux boxes
|
|
||||||
|
|
||||||
repo.url=esgd
|
|
||||||
repo.path=/var/lib/git/esgd
|
|
||||||
repo.desc=the exceedingly simple gopher daemon
|
|
||||||
|
|
||||||
repo.url=mail-sync
|
|
||||||
repo.path=/var/lib/git/mail-sync
|
|
||||||
repo.desc=synchronize mail from walled gardens
|
|
||||||
|
|
||||||
repo.url=mastosnake
|
|
||||||
repo.path=/var/lib/git/mastosnake
|
|
||||||
repo.desc=a low quality clone of Twitter Plays Snake
|
|
||||||
|
|
||||||
repo.url=secmsg
|
|
||||||
repo.path=/var/lib/git/secmsg
|
|
||||||
repo.desc=a stupid (in)secure messaging client thing
|
|
||||||
|
|
||||||
repo.url=ultimate
|
|
||||||
repo.path=/var/lib/git/ultimate
|
|
||||||
repo.desc=ultimate tic tac toe solving engine
|
|
||||||
|
|
||||||
repo.url=wordlefish
|
|
||||||
repo.path=/var/lib/git/wordlefish
|
|
||||||
repo.desc=use information theory to solve wordle puzzles
|
|
||||||
|
|
||||||
section=irc robots
|
|
||||||
|
|
||||||
repo.url=botanybot
|
|
||||||
repo.path=/var/lib/git/botanybot
|
|
||||||
repo.desc=water bots on ~.club
|
|
||||||
|
|
||||||
repo.url=coinminer
|
|
||||||
repo.path=/var/lib/git/coinminer
|
|
||||||
repo.desc=mine fake coins on irc
|
|
||||||
|
|
||||||
repo.url=chaosbot
|
|
||||||
repo.path=/var/lib/git/chaosbot
|
|
||||||
repo.desc=robot to protect a user on chaos
|
|
||||||
|
|
||||||
repo.url=modbot
|
|
||||||
repo.path=/var/lib/git/modbot
|
|
||||||
repo.desc=modular irc robot
|
|
||||||
|
|
||||||
repo.url=pychaos
|
|
||||||
repo.path=/var/lib/git/pychaos
|
|
||||||
repo.desc=python chaos bot
|
|
||||||
|
|
||||||
repo.url=universalducks
|
|
||||||
repo.path=/var/lib/git/universalducks
|
|
||||||
repo.desc=cross channel irc ducks
|
|
||||||
'';
|
|
||||||
in {
|
|
||||||
imports =
|
imports =
|
||||||
[
|
[
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
|
@ -150,32 +42,18 @@ in {
|
||||||
settings.protocols = [
|
settings.protocols = [
|
||||||
{
|
{
|
||||||
host = "localhost";
|
host = "localhost";
|
||||||
name = "ssh";
|
name = "ssh";
|
||||||
port = "55555";
|
port = "55555";
|
||||||
service = "ssh";
|
service = "ssh";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
host = "localhost";
|
host = "localhost";
|
||||||
name = "tls";
|
name = "tls";
|
||||||
port = "442";
|
port = "442";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
# cgit
|
|
||||||
users = {
|
|
||||||
groups.git = { };
|
|
||||||
users.git = {
|
|
||||||
createHome = true;
|
|
||||||
home = /var/lib/git;
|
|
||||||
isSystemUser = true;
|
|
||||||
shell = "${pkgs.git}/bin/git-shell";
|
|
||||||
group = "git";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
services.fcgiwrap = { enable = true; user = "git"; group = "git"; };
|
|
||||||
|
|
||||||
networking.hostName = "netbox";
|
networking.hostName = "netbox";
|
||||||
|
|
||||||
services.radicale = {
|
services.radicale = {
|
||||||
|
@ -218,18 +96,18 @@ in {
|
||||||
jails = {
|
jails = {
|
||||||
"nginx-bruteforce" = ''
|
"nginx-bruteforce" = ''
|
||||||
enabled = true
|
enabled = true
|
||||||
filter = nginx-bruteforce
|
filter = nginx-bruteforce
|
||||||
logpath = /var/log/nginx/access.log
|
logpath = /var/log/nginx/access.log
|
||||||
backend = auto
|
backend = auto
|
||||||
maxretry = 6
|
maxretry = 6
|
||||||
findtime = 600
|
findtime = 600
|
||||||
'';
|
'';
|
||||||
|
|
||||||
"postfix-bruteforce" = ''
|
"postfix-bruteforce" = ''
|
||||||
enabled = true
|
enabled = true
|
||||||
filter = postfix-bruteforce
|
filter = postfix-bruteforce
|
||||||
maxretry = 6
|
maxretry = 6
|
||||||
findtime = 600
|
findtime = 600
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -273,14 +151,19 @@ in {
|
||||||
|
|
||||||
services.gitea = {
|
services.gitea = {
|
||||||
enable = true;
|
enable = true;
|
||||||
appName = "crappy code"; # Give the site a name
|
appName = "beepboop.systems"; # Give the site a name
|
||||||
database = {
|
database = {
|
||||||
type = "postgres";
|
type = "postgres";
|
||||||
passwordFile = "/etc/gittea-pass";
|
passwordFile = "/etc/gittea-pass";
|
||||||
};
|
};
|
||||||
|
settings.security.INSTALL_LOCK = true;
|
||||||
|
settings.service.SHOW_REGISTRATION_BUTTON = false;
|
||||||
|
settings.ui.DEFAULT_THEME = "arc-green";
|
||||||
|
settings.api.ENABLE_SWAGGER = false;
|
||||||
settings.server = {
|
settings.server = {
|
||||||
DOMAIN = "git.beepboop.systems";
|
DOMAIN = "git.beepboop.systems";
|
||||||
ROOT_URL = "https://git.beepboop.systems/";
|
ROOT_URL = "https://git.beepboop.systems/";
|
||||||
|
LANDING_PAGE = "explore";
|
||||||
HTTP_PORT = 3001;
|
HTTP_PORT = 3001;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -304,70 +187,6 @@ in {
|
||||||
forceSSL = true;
|
forceSSL = true;
|
||||||
enableACME = true;
|
enableACME = true;
|
||||||
root = "/var/www/beepboop.systems";
|
root = "/var/www/beepboop.systems";
|
||||||
|
|
||||||
locations."~* ^/static/(.+.(ico|css))$" = {
|
|
||||||
extraConfig = ''
|
|
||||||
alias ${pkgs.cgit}/cgit/$1;
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
locations."/static/logo.png" = {
|
|
||||||
extraConfig = ''
|
|
||||||
try_files /icon.png /icon.png;
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
locations."/about" = {
|
|
||||||
extraConfig = ''
|
|
||||||
try_files /about.html /about.html;
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
locations."/bitwarden" = {
|
|
||||||
extraConfig = ''
|
|
||||||
return 301 https://bit.beepboop.systems;
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
locations."/gitea" = {
|
|
||||||
extraConfig = ''
|
|
||||||
return 301 https://git.beepboop.systems/rndusr;
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
locations."/radicale" = {
|
|
||||||
extraConfig = ''
|
|
||||||
return 301 https://cal.beepboop.systems;
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
locations."/roundcube" = {
|
|
||||||
extraConfig = ''
|
|
||||||
return 301 https://mail.beepboop.systems;
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
locations."~* ^(.*)\\.git(/.*)?$" = {
|
|
||||||
extraConfig = ''
|
|
||||||
set $modified_path $1$2;
|
|
||||||
client_max_body_size 0;
|
|
||||||
|
|
||||||
include ${pkgs.nginx}/conf/fastcgi_params;
|
|
||||||
fastcgi_param SCRIPT_FILENAME ${pkgs.git}/bin/git-http-backend;
|
|
||||||
fastcgi_param GIT_HTTP_EXPORT_ALL "";
|
|
||||||
fastcgi_param GIT_PROJECT_ROOT /var/lib/git;
|
|
||||||
fastcgi_param PATH_INFO $uri;
|
|
||||||
|
|
||||||
# Forward REMOTE_USER as we want to know when we are authenticated
|
|
||||||
fastcgi_param REMOTE_USER $remote_user;
|
|
||||||
fastcgi_pass unix:${config.services.fcgiwrap.socketAddress};
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
locations."/" = {
|
|
||||||
extraConfig = ''
|
|
||||||
include ${pkgs.nginx}/conf/fastcgi_params;
|
|
||||||
fastcgi_param CGIT_CONFIG ${cgitrc};
|
|
||||||
fastcgi_param SCRIPT_FILENAME ${pkgs.cgit}/cgit/cgit.cgi;
|
|
||||||
fastcgi_split_path_info ^(/?)(.+)$;
|
|
||||||
fastcgi_param PATH_INFO $fastcgi_path_info;
|
|
||||||
fastcgi_param QUERY_STRING $args;
|
|
||||||
fastcgi_param HTTP_HOST $server_name;
|
|
||||||
fastcgi_pass unix:${config.services.fcgiwrap.socketAddress};
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
services.nginx.virtualHosts."git.beepboop.systems" = {
|
services.nginx.virtualHosts."git.beepboop.systems" = {
|
||||||
|
|
|
@ -13,17 +13,16 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.packages = with pkgs; [
|
environment.packages = with pkgs; [
|
||||||
vdirsyncer
|
tigervnc
|
||||||
msmtp
|
|
||||||
khal
|
|
||||||
todoman
|
|
||||||
neomutt
|
|
||||||
khal
|
|
||||||
rbw
|
|
||||||
isync
|
|
||||||
git
|
git
|
||||||
tmux
|
tmux
|
||||||
hostname
|
hostname
|
||||||
|
tigervnc
|
||||||
|
xorg.xinit
|
||||||
|
# tar
|
||||||
|
# awk
|
||||||
|
# sed
|
||||||
|
elinks
|
||||||
];
|
];
|
||||||
|
|
||||||
environment.etcBackupExtension = ".bak";
|
environment.etcBackupExtension = ".bak";
|
||||||
|
|
|
@ -11,6 +11,7 @@
|
||||||
../../home/msmtp
|
../../home/msmtp
|
||||||
../../home/neomutt
|
../../home/neomutt
|
||||||
../../home/rbw
|
../../home/rbw
|
||||||
|
( import ../../home/bash { isRoot = true; } )
|
||||||
];
|
];
|
||||||
|
|
||||||
home.stateVersion = "23.05";
|
home.stateVersion = "23.05";
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
../../modules/bootstrap.nix
|
../../modules/bootstrap.nix
|
||||||
|
../../modules/hosts.nix
|
||||||
../../modules/common.nix
|
../../modules/common.nix
|
||||||
../../modules/x11.nix
|
../../modules/x11.nix
|
||||||
../../modules/discord.nix
|
../../modules/discord.nix
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
../../modules/bootstrap.nix
|
../../modules/bootstrap.nix
|
||||||
../../modules/common.nix
|
../../modules/common.nix
|
||||||
../../modules/x11.nix
|
../../modules/x11.nix
|
||||||
|
../../modules/hosts.nix
|
||||||
../../modules/tlp.nix
|
../../modules/tlp.nix
|
||||||
../../modules/media.nix
|
../../modules/media.nix
|
||||||
../../modules/anki.nix
|
../../modules/anki.nix
|
||||||
|
|
18
flake.lock
18
flake.lock
|
@ -25,11 +25,11 @@
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"dir": "pkgs/firefox-addons",
|
"dir": "pkgs/firefox-addons",
|
||||||
"lastModified": 1708805268,
|
"lastModified": 1710537928,
|
||||||
"narHash": "sha256-TyB6HacqcoIoK8tf5mwk/K9bkexCxjJsVXBp4+cbATI=",
|
"narHash": "sha256-uBYpos1lJ3AIuCEKx/yO0rOYCkBbkC37fgR+Y0hdk6g=",
|
||||||
"owner": "rycee",
|
"owner": "rycee",
|
||||||
"repo": "nur-expressions",
|
"repo": "nur-expressions",
|
||||||
"rev": "211c45ca8c36d7aebcff3e4b548142093fc85857",
|
"rev": "9a40144862e64dd651f599bff59a04b5ba20b610",
|
||||||
"type": "gitlab"
|
"type": "gitlab"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -98,11 +98,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1702195668,
|
"lastModified": 1709578214,
|
||||||
"narHash": "sha256-Lxmjez0nfNBptdqV5GsXKm7Bb7swjGsrxiLxWJu0tL8=",
|
"narHash": "sha256-jSCHB1+9eA0S2h7G8Aju8XARK0vbDuOR7uFFvCEsKhk=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "33110fb3c7fe6a94b98b641866a5eddb64b7c23f",
|
"rev": "219f4bef6d22bc67cddefbba69aadb748d79c49d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -164,11 +164,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1708702655,
|
"lastModified": 1710420202,
|
||||||
"narHash": "sha256-qxT5jSLhelfLhQ07+AUxSTm1VnVH+hQxDkQSZ/m/Smo=",
|
"narHash": "sha256-MvFKESbq4rUWuaf2RKPNYENaSZEw/jaCLo2gU6oREcM=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "c5101e457206dd437330d283d6626944e28794b3",
|
"rev": "878ef7d9721bee9f81f8a80819f9211ad1f993da",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
@ -42,7 +42,8 @@
|
||||||
phone-nixpkgs,
|
phone-nixpkgs,
|
||||||
home-manager-phone,
|
home-manager-phone,
|
||||||
nix-on-droid,
|
nix-on-droid,
|
||||||
... }@inputs: {
|
...
|
||||||
|
}@inputs: {
|
||||||
nixOnDroidConfigurations = {
|
nixOnDroidConfigurations = {
|
||||||
phone = nix-on-droid.lib.nixOnDroidConfiguration {
|
phone = nix-on-droid.lib.nixOnDroidConfiguration {
|
||||||
modules = [
|
modules = [
|
||||||
|
|
|
@ -1,6 +1,10 @@
|
||||||
{ lib, config, pkgs, home, ... }:
|
{ lib, config, pkgs, home, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
msmtp
|
||||||
|
];
|
||||||
|
|
||||||
home.file = {
|
home.file = {
|
||||||
".config/msmtp/config" = {
|
".config/msmtp/config" = {
|
||||||
source = ./config;
|
source = ./config;
|
||||||
|
|
|
@ -1,6 +1,10 @@
|
||||||
{ lib, config, pkgs, home, ... }:
|
{ lib, config, pkgs, home, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
neomutt
|
||||||
|
];
|
||||||
|
|
||||||
home.file = {
|
home.file = {
|
||||||
".config/neomutt/neomuttrc" = {
|
".config/neomutt/neomuttrc" = {
|
||||||
source = ./neomuttrc;
|
source = ./neomuttrc;
|
||||||
|
|
|
@ -147,7 +147,7 @@ local packer = require('packer').startup(function(use)
|
||||||
require('packer').sync()
|
require('packer').sync()
|
||||||
end
|
end
|
||||||
end);
|
end);
|
||||||
-- }}}
|
-- -- }}}
|
||||||
|
|
||||||
nnoremap('<leader>ff', function()
|
nnoremap('<leader>ff', function()
|
||||||
require('telescope.builtin').find_files()
|
require('telescope.builtin').find_files()
|
||||||
|
@ -194,5 +194,3 @@ luasnip.add_snippets("tex", {
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
-- }}}
|
-- }}}
|
||||||
|
|
||||||
return packer
|
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
{ lib, config, pkgs, home, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
home.file = {
|
||||||
|
".config/nws" = {
|
||||||
|
text = ''KOHX'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -17,6 +17,7 @@
|
||||||
./neomutt
|
./neomutt
|
||||||
./msmtp
|
./msmtp
|
||||||
./rbw
|
./rbw
|
||||||
|
./nws
|
||||||
|
|
||||||
./x11-progs.nix
|
./x11-progs.nix
|
||||||
./tty.nix
|
./tty.nix
|
||||||
|
|
|
@ -0,0 +1,10 @@
|
||||||
|
{ lib, config, pkgs, inputs, ...}:
|
||||||
|
|
||||||
|
{
|
||||||
|
networking.hosts = {
|
||||||
|
"192.168.1.120" = [ "x230t" ];
|
||||||
|
"192.168.1.52" = [ "mlg" ];
|
||||||
|
"192.168.1.100" = [ "mainsail" ];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue