Commit Graph

286 Commits

Author SHA1 Message Date
382a5e6939 hosts/ni: fix IPv4 Wireguard address 2023-01-20 15:45:07 +08:00
665e72d105 hosts/ni: update networking setup 2023-01-20 14:51:11 +08:00
a7515f20eb hosts/plover: fix string interpolation 2023-01-20 14:50:27 +08:00
5a0a18fa7e hosts/ni: add wireguard-tools to system packages 2023-01-20 13:15:53 +08:00
33206698c0 hosts: update Wireguard network setup 2023-01-19 20:16:01 +08:00
5fab811812 hosts/plover: update networking setup 2023-01-19 20:12:14 +08:00
2ee3f755fd hosts/plover: fix erroneous function
I haven't obviously tested the related changes since the server was down
at the time.
2023-01-19 07:57:26 +08:00
875c910e61 hosts/ni: add netboot.xyz bootloader entry 2023-01-19 00:37:43 +08:00
9b03f4d4aa hosts/plover: simplify networking setup
It is simple anyways requiring only one of the ethernet interfaces to be
present to the global network while the rest can be in the local
network.
2023-01-18 20:29:16 +08:00
ceb821f2c0 hosts/plover: update Keycloak reverse proxy config
Now that a tunneling service is here, there's not much need to expose
the whole thing.
2023-01-18 20:24:49 +08:00
9a941dc543 hosts/plover: update Gitea mirroring interval 2023-01-18 20:18:40 +08:00
cdfe983969 docs: update "Deploying to Hetzner Cloud" section on Plover 2023-01-18 15:43:30 +08:00
ecd8313011 hosts/plover: update routes to main router 2023-01-18 15:42:33 +08:00
04e460142a chore: format the codebase 2023-01-18 11:41:12 +08:00
f2cdf732cb hosts/plover: disable firewall service
It's not working well for now. I'll have to make some tests with simpler
configurations (even though it's already simple?).
2023-01-18 11:10:40 +08:00
6ae080c68d hosts/ni: enable nftables-based firewall 2023-01-18 11:10:31 +08:00
55547bddc7 hosts/ni: update LDAP-related settings
- Add OpenLDAP to the system packages.

- Fix the file permission for the LDAP password secret.
2023-01-18 11:10:11 +08:00
effdc8d927 hosts/plover: refactor secrets owner 2023-01-17 21:34:54 +08:00
00f5c34a92 docs: update the READMEs 2023-01-17 21:34:54 +08:00
6bf2642ffc hosts: add Wireguard services to related peers
Among other things, Plover now ignores certain IP for fail2ban. This is
for the VPN users that are placed in that range.
2023-01-17 21:34:54 +08:00
c3a5778d3f hosts/ni: convert to systemd-networkd for network config
I thought it is pretty neat. Also, I've created a bond interface for the
network devices.
2023-01-17 21:33:20 +08:00
333adf0ce6 hosts/plover: update Gitea Asciidoctor markup to be embedded 2023-01-17 16:09:28 +08:00
002b65250c hosts/plover: add default server to reverse proxy 2023-01-17 16:09:28 +08:00
6d9c43bafa hosts/plover: initialize OpenVPN service 2023-01-17 16:09:28 +08:00
8e07223c97 hosts/plover: move into systemd-networkd for network setup 2023-01-17 16:09:28 +08:00
2e466e4561 hosts/plover: move hardware config to be hosting provider-specific 2023-01-15 14:39:44 +08:00
62d220eb2d docs: add deploying firewall and networking on Plover README 2023-01-15 14:39:44 +08:00
5341024d96 hosts/plover: update comments and systemd journal matches for fail2ban 2023-01-15 14:39:44 +08:00
7de5c14ef5 hosts/plover: move hcloud-related files into a dedicated folder 2023-01-15 14:39:44 +08:00
6fe30acf2b hosts/plover: fix formatting of files 2023-01-15 14:39:44 +08:00
02cfaaf362 hosts/plover: modularize PostgreSQL service 2023-01-15 14:39:44 +08:00
8bd05bf2a3 hosts/plover: modularize config 2023-01-12 22:37:52 +08:00
14a6a94d8f docs: update README for Plover 2023-01-12 22:03:03 +08:00
f3b3666c67 hosts/plover: update gitea-dump pre-start script 2023-01-12 22:03:03 +08:00
98e452c047 hosts/plover: add Portunus seed
This is for defining users and groups. Pretty handy feature.
2023-01-12 22:03:03 +08:00
d9e4dbcb52 hosts/plover: update fail2ban configuration 2023-01-12 22:03:03 +08:00
10fe6c33af hosts/plover: update Gitea home template 2023-01-10 12:13:51 +08:00
a8b66b67ea hosts/plover: update Gitea logo 2023-01-09 13:12:32 +08:00
7dc523903c hosts/plover: create separate passwords for different repos 2023-01-07 17:19:45 +08:00
d9908d2d8c hosts/plover: fix the borg jobs function 2023-01-07 16:58:47 +08:00
4c34a87366 chore: reformat codebase 2023-01-07 16:06:34 +08:00
d9e7f7c67e hosts/plover: add the dedicated borg SSH public key 2023-01-07 14:43:07 +08:00
c9182102be hosts/plover: separate borg repos for different jobs
Makes it easier to manage them repos.
2023-01-07 11:39:20 +08:00
85e1914025 config: replace Borgbase with Hetzner storage box for Borg repos 2023-01-07 10:52:31 +08:00
e9aa875c6a hosts/plover: fix hcloud user data 2023-01-07 10:52:30 +08:00
90177118b0 hosts/plover: use nftables as firewall 2023-01-07 10:52:30 +08:00
e90a719ca8 hosts/plover: update hardware config according to Hetzner Cloud defaults 2023-01-07 10:52:30 +08:00
533995eb09 docs: update various READMEs 2023-01-07 10:52:30 +08:00
4359c4d579 hosts/plover: enable firewall for Hetzner Cloud config 2023-01-05 19:48:54 +08:00
a046192bca hosts/plover: add pre-service script for atuin service 2023-01-05 19:48:41 +08:00
affd08e3c1 hosts/plover: add Atuin sync server 2023-01-05 12:52:57 +08:00
5d02976d2c hosts/plover: correct Keycloak virtual host location 2023-01-05 12:36:58 +08:00
451cb4e72d hosts/plover: update hardware configuration 2023-01-05 11:08:51 +08:00
15ad934550 hosts/plover: set hardware config for Hetzner Cloud 2023-01-05 10:56:35 +08:00
de3ad5978b hosts/plover: add documentation for deploying into Hetzner Cloud 2023-01-04 22:12:52 +08:00
bbc177a4b7 hosts/plover: remove the extra filesystem device 2023-01-04 19:54:21 +08:00
e4701a3e03 hosts/plover: add bootloader settings 2023-01-04 19:53:44 +08:00
dd5ee00ae8 hosts/plover: update LDAP server with Portunus 2023-01-01 15:47:06 +08:00
a8f86a544f hosts/ni: add LDAP service 2022-12-31 11:14:08 +08:00
b0d9ec560b hosts/ni: update secrets code 2022-12-31 11:13:27 +08:00
8c57eea6bb hosts/plover: update OpenLDAP config 2022-12-29 10:26:31 +08:00
f789e85fcc hosts/plover: add LDAP server to reverse proxy 2022-12-29 10:26:15 +08:00
bdf862cc91 hosts/plover: fix reverse proxy routes 2022-12-29 10:25:53 +08:00
aacfb1d091 hosts/plover: update README 2022-12-28 14:10:16 +08:00
14f190904f hosts/plover: format code 2022-12-28 14:10:07 +08:00
fcd8bde8dc hosts/plover: update Keycloak paths in reverse proxy 2022-12-28 14:09:33 +08:00
15722347eb hosts/plover: add periodic cleanup to Gitea dumps 2022-12-28 14:09:33 +08:00
c92077380b hosts/plover: refactor code 2022-12-28 14:09:33 +08:00
7b5c25bf18 hosts/plover: add LDAP server 2022-12-28 14:09:33 +08:00
85545ad810 hosts/plover: update Keycloak and Postgres config 2022-12-22 13:58:20 +08:00
7652bae7ed hosts/plover: update Keycloak config 2022-12-19 20:31:01 +08:00
8c50ad93da hosts/plover: refactor with subdomains 2022-12-19 20:30:30 +08:00
9f4d0e470c hosts/plover: update Keycloak config 2022-12-17 22:23:36 +08:00
c008debd74 hosts/plover: disable PostgreSQL SSL mode 2022-12-17 22:23:11 +08:00
138fb25e8f hosts/plover: update nginx config 2022-12-17 11:17:31 +08:00
59461cc416 config: refactor BorgBackup service 2022-12-17 11:17:31 +08:00
c54f8d7059 hosts/plover: refactor config 2022-12-17 11:17:31 +08:00
8021cb270e hosts/plover: reformat code 2022-12-13 08:33:51 +08:00
6c02598f35 hosts/plover: add Keycloak service 2022-12-13 08:33:51 +08:00
502fd34ead hosts/plover: enable SSL mode for PostgreSQL 2022-12-13 08:33:51 +08:00
61b36cd901 hosts/plover: refactor Borgbackup job function 2022-12-12 14:19:55 +08:00
4190b4a481 hosts/plover: update PostgreSQL initial script
We're doing the secure schema usage pattern as recommended from the
documentation. Since it is an initial script that will only run once, I
think it is OK to override steps such as creating roles ahead.
2022-12-12 14:17:57 +08:00
604cbbd48f hosts/plover: update SSH keypair 2022-12-12 10:26:30 +08:00
5933e76e8e hosts/plover: reformat the code 2022-12-12 10:26:30 +08:00
582393da5e hosts/plover: add application data for backup 2022-12-12 10:26:30 +08:00
aedd3f7a15 hosts/plover: fix the erroneous attribute 2022-12-12 10:26:30 +08:00
74fa10f348 hosts/plover: enable PostgreSQL dump service 2022-12-12 10:26:30 +08:00
22bc41896c hosts/plover: update Gitea configuration 2022-12-12 10:26:30 +08:00
Gabriel Arazas
d6f3f11611 hosts/graphical-installer: force wireless networking setup
Ehhh... It's going to have an error since the wireless network setup
does not have enough priority for the appropriate image format
configuration.
2022-12-10 18:48:23 +08:00
Gabriel Arazas
8adcc0d512 hosts/plover: update config
In preparation of deploying it in a non-Google Compute Engine
environment, we'll update some of the settings.
2022-12-10 18:45:36 +08:00
Gabriel Arazas
cb11ceb3a9 hosts/plover: update config 2022-12-06 15:55:23 +08:00
Gabriel Arazas
ac32593fda hosts: remove extra module for installers 2022-12-04 08:55:06 +08:00
Gabriel Arazas
e3e401f939 Revert "hosts/plover: add headless profile from nixpkgs"
This reverts commit 6300aa7275.
2022-12-03 15:46:22 +08:00
Gabriel Arazas
6300aa7275 hosts/plover: add headless profile from nixpkgs 2022-12-03 15:24:22 +08:00
Gabriel Arazas
1e17c59034 users/plover: add home-manager user to config 2022-12-03 15:24:22 +08:00
Gabriel Arazas
b5b52426dc config: restructure user and host files 2022-12-03 15:24:22 +08:00
Gabriel Arazas
9924811dc0 hosts/plover: remove GCP KMS key for secrets 2022-12-03 15:24:22 +08:00
Gabriel Arazas
06a8550c03 hosts/plover: fix secrets file 2022-12-03 15:24:22 +08:00
Gabriel Arazas
9e5d2e2307 hosts/plover: add hardened profile from nixpkgs 2022-12-03 15:24:22 +08:00
Gabriel Arazas
b8d916c8a2 hosts/plover: add DNS-related config 2022-12-03 11:48:32 +08:00
Gabriel Arazas
8f037a1606 hosts/plover: add backup service 2022-12-03 11:13:46 +08:00
Gabriel Arazas
625a8b191a hosts/plover: update config 2022-12-03 07:31:46 +08:00
Gabriel Arazas
d4c45fd86b hosts/plover: enable TCP/IP connection and fix database service 2022-12-01 08:21:58 +08:00
Gabriel Arazas
9a07eedb14 config: update comments and module descriptions 2022-11-30 08:40:49 +08:00
Gabriel Arazas
a1656caa3a hosts/graphical-installer: fix the erroneous attribute
Pretty much indicates how much I use it. :)
2022-11-30 08:36:37 +08:00
Gabriel Arazas
7e5eab2d47 profiles/editors: add Guile for Emacs submodule 2022-11-30 08:36:37 +08:00
Gabriel Arazas
e6e3dc85f6 profiles/server: init module 2022-11-30 08:36:37 +08:00
Gabriel Arazas
131fa25023 profiles/system: rename to profiles/desktop
The need for configuring desktop and server in separate profiles is
becoming more obvious. Not to mention, most of the system config from
profiles/system is obviously more desktop-oriented.
2022-11-29 21:10:51 +08:00
Gabriel Arazas
07b198c5ab docs: update 2022-11-29 15:58:33 +08:00
Gabriel Arazas
2c8f35500e hosts/graphical-installer: use latest kernel 2022-11-29 15:58:33 +08:00
Gabriel Arazas
008201c11a hosts/bootstrap: use latest kernel 2022-11-29 15:58:33 +08:00
Gabriel Arazas
794a7a65ac hosts/plover: update config
It now uses PostgreSQL for the services and also fixed some of the
misconfigurations in the services.
2022-11-29 15:58:33 +08:00
Gabriel Arazas
8e462418e3 hosts/plover: add gcp-kms key for secret 2022-11-27 00:51:05 +08:00
Gabriel Arazas
3889429ac2 hosts/plover: update config 2022-11-26 14:13:17 +08:00
Gabriel Arazas
f9751a9510 hosts/ni: update config 2022-11-25 21:27:25 +08:00
Gabriel Arazas
da5b904fd7 hosts/bootstrap: update ISO filename 2022-11-25 14:51:27 +08:00
Gabriel Arazas
549d067278 hosts/ni: update 2022-11-25 14:51:27 +08:00
Gabriel Arazas
51d51f5398 hosts/plover: init 2022-11-25 14:51:27 +08:00
Gabriel Arazas
e891fdbdbf hosts/void: add host
01000110 01101111 01110010 00100000 01001001 00100000 01100001 01101101
         00100000 01100100 01101111 01101110 01100101 00100001

01000110 01101111 01110010 00100000 01001001 00100000 01100001 01101101
         00100000 01100010 01101111 01110010 01100101 01100100 00101110
         00101110 00101110
2022-09-26 08:35:10 +08:00
Gabriel Arazas
915a93321a docs: update 2022-09-19 10:56:06 +08:00
Gabriel Arazas
4f2292bd62 hosts/graphical-installer: correct workflow attribute 2022-09-01 22:44:46 +08:00
Gabriel Arazas
c9ccb53bac flake.nix: use Nix-built Guix service module 2022-08-27 13:41:12 +08:00
Gabriel Arazas
6cb1515d91 themes: rename into workflows
More self-descriptive == better. Plus it does imply that themes only
change aesthetics which is not often the case with the usual modules
that are defined here.
2022-08-27 13:41:12 +08:00
Gabriel Arazas
12251141e7 users/foo-dogsquared: add public key and update config 2022-08-19 17:36:33 +08:00
Gabriel Arazas
62f18a083f hosts/ni: add more programs 2022-08-11 09:45:19 +08:00
Gabriel Arazas
5e605b4053 hosts/ni: update config 2022-08-10 12:14:11 +08:00
Gabriel Arazas
adff4fd67f flake.nix: update hosts default config 2022-07-28 17:29:58 +08:00
Gabriel Arazas
688bfb59c4 hosts/ni: update config and store secrets 2022-07-19 07:11:01 +08:00
Gabriel Arazas
617a02f382 hosts/ni: install wezterm 2022-07-16 17:25:47 +08:00
Gabriel Arazas
863daae3f5 hosts/ni: update host config 2022-07-14 08:21:09 +08:00
Gabriel Arazas
eebaf93938 docs: update READMEs and comments 2022-07-09 14:04:17 +08:00
Gabriel Arazas
30c7ee0203 profiles/agenix: move into default config 2022-07-09 14:01:37 +08:00
Gabriel Arazas
7ad9a62f2c profiles/users: move as a library function 2022-07-09 14:00:51 +08:00
Gabriel Arazas
212378440d hosts/bootstrap: fix configuration 2022-07-08 09:46:56 +08:00
Gabriel Arazas
342e1b11f1 hosts/ni: update config with setup 2022-07-06 07:38:21 +08:00
Gabriel Arazas
9dc7dff602 hosts/ni: update config
For now, we're removing the backup media task just to make it easier to
install for non-local setups. It is pretty much the only thing that
requires the most secrets and I want to easily showcase my NixOS setup
or something like that. Enabling the task is still in the local changes,
just not to be committed.
2022-06-12 13:49:56 +08:00
Gabriel Arazas
d586fba900 update profiles and user configs 2022-05-20 14:47:09 +08:00
Gabriel Arazas
7ec58315c1 update various files 2022-04-30 20:31:11 +08:00
Gabriel Arazas
9f6cef56f8 profiles/system: add auto-upgrade option 2022-04-17 22:33:04 +08:00
Gabriel Arazas
7ae53c1563 profiles/desktop: rename into profiles/system
It is causing some confusion since it is slowly gaining some
non-desktop-related functions too. A rename would be appropriate now.
2022-04-17 11:00:38 +08:00
Gabriel Arazas
7f44233e09 docs: update 2022-04-15 21:39:01 +08:00
Gabriel Arazas
d225257f8d hosts: init graphical-installer
This is my personalized graphical installer to make installing NixOS a
little easier with all of my comfy config. Though, this won't be seeing
a release as the resulting file is over GitHub's asset size limit of
2GB. Man...
2022-03-01 23:07:56 +08:00
Gabriel Arazas
1d7f318696 Clean up files 2022-02-11 12:31:44 +08:00
Gabriel Arazas
f9589f2ca1 Modularize nixos user
This is to make creating installers easier.
2022-02-05 18:52:19 +08:00
Gabriel Arazas
11723c53e3 Create personalized bootstrap ISO 2022-02-05 08:14:03 +08:00
Gabriel Arazas
905b5680b1 Clean up the files 2022-02-02 12:27:32 +08:00
Gabriel Arazas
4ec2730ad8 host/ni: use Guix module from guix-overlay 2022-02-02 12:27:32 +08:00
Gabriel Arazas
a6a4b2b1e1 Update various files 2022-01-25 09:32:17 +08:00
Gabriel Arazas
6b481a163a Restructure the modules
While it is easier to maintain the modules by prefixing them all with
`modules`, it is not easy when used from other flakes and/or modules.
This is my attempt on making it easier with appropriate namespaces.

Update home-manager user from the restructure
2022-01-09 19:44:09 +08:00
foo-dogsquared
12077bfc60 Update ni configuration 2021-12-26 18:43:49 +08:00