Compare commits
No commits in common. "9ab12a589ffade151cdd0a9f73bd098d8551768e" and "cb838549be92bb022e45e1c944b8cbfbffb69324" have entirely different histories.
9ab12a589f
...
cb838549be
12
flake.lock
generated
12
flake.lock
generated
@ -58,11 +58,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1730741070,
|
"lastModified": 1728067476,
|
||||||
"narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=",
|
"narHash": "sha256-/uJcVXuBt+VFCPQIX+4YnYrHaubJSx4HoNsJVNRgANM=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "d063c1dd113c91ab27959ba540c0d9753409edf3",
|
"rev": "6e6b3dd395c3b1eb9be9f2d096383a8d05add030",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@ -88,11 +88,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-unstable": {
|
"nixpkgs-unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1730785428,
|
"lastModified": 1728018373,
|
||||||
"narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=",
|
"narHash": "sha256-NOiTvBbRLIOe5F6RbHaAh6++BNjsb149fGZd1T4+KBg=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7",
|
"rev": "bc947f541ae55e999ffdb4013441347d83b00feb",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -1,44 +1,13 @@
|
|||||||
# Configuration steps
|
# Create proxy network
|
||||||
|
`docker network create proxy`
|
||||||
|
|
||||||
## 1. Install [NixOS](https://nixos.org/)
|
# Configure caddy cloudflare
|
||||||
|
Find instructions on [caddy-dns cloudflare](https://github.com/caddy-dns/cloudflare)
|
||||||
Follow the steps from the [NixOS Manual Installation](https://nixos.org/manual/nixos/stable/#sec-installation-manual)
|
|
||||||
|
|
||||||
> At the edit configuration.nix step you must:
|
|
||||||
>
|
|
||||||
> - Add a user to the configuration file and set a password
|
|
||||||
> - Enable openssh
|
|
||||||
|
|
||||||
## 2. Configuring flake
|
|
||||||
|
|
||||||
1. Clone this repository
|
|
||||||
2. Copy hardware configuration to host<br>
|
|
||||||
`cp /etc/nixos/hardware-configuration.nix ~/nix/hosts/<host>/hardware-configuration.nix`
|
|
||||||
3. Rebuild system
|
|
||||||
`sudo nixos-rebuild switch --flake .#<host>`
|
|
||||||
4. Rebuild home-manager
|
|
||||||
`home-manager switch --flake .#<user>@<host>`
|
|
||||||
5. Reboot
|
|
||||||
|
|
||||||
## 3. Configuring docker containers
|
|
||||||
|
|
||||||
1. Create proxy network<br>
|
|
||||||
`docker network create proxy`
|
|
||||||
|
|
||||||
2. Configure [Adguard](./adguard/README.md)
|
|
||||||
3. Configure [Caddy](./caddy/README.md)
|
|
||||||
4. Configure [Authelia](./authelia/README.md)
|
|
||||||
5. Configure the rest of the services
|
|
||||||
|
|
||||||
# Services
|
# Services
|
||||||
|
| Name | Use | Domain | Auth |
|
||||||
| Name | Use | Domain | Auth |
|
| --- | --- | --- | --- |
|
||||||
| ------- | -------------- | ----------------------------- | ------ |
|
| Adguard | DNS | https://adguard.timo.bmrs.nl/ | local |
|
||||||
| Adguard | DNS | https://adguard.timo.bmrs.nl/ | local |
|
| Caddy | Reverse proxy | - | - |
|
||||||
| Caddy | Reverse proxy | - | - |
|
| Forgejo | Git | https://git.timo.bmrs.nl/ | Openid |
|
||||||
| Forgejo | Git | https://git.timo.bmrs.nl/ | Openid |
|
| Ldap | User directory | https://ldap.timo.bmrs.nl/ | - |
|
||||||
| Ldap | User directory | https://ldap.timo.bmrs.nl/ | - |
|
|
||||||
|
|
||||||
# Services to try out
|
|
||||||
|
|
||||||
- [Beszel](https://github.com/henrygd/beszel)
|
|
||||||
|
@ -1,7 +0,0 @@
|
|||||||
# Adguard Home
|
|
||||||
|
|
||||||
1. Temporaraly edit ports in docker-compose file to setup
|
|
||||||
2. Configuration screen<br>
|
|
||||||
1. Change listen interface to port 3000
|
|
||||||
3. Add DNS rewrite for *.timo.bmrs.nl
|
|
||||||
4. Delete temporaraly port edit in docker-compose
|
|
@ -1,13 +1,2 @@
|
|||||||
# Authelia
|
- Follow [This](https://www.authelia.com/configuration/identity-providers/openid-connect/provider/) guide for generating keys
|
||||||
|
- Store the keys in the /keys directory
|
||||||
1. Edit environment variables.
|
|
||||||
1. For HMAC_SECRET, JWT_SECRET, ADMIN_PASSWORD, SESSION_SECRET, STORAGE_ENCRYPTION_KEY, LLDAP_KEY_SEED use an random alphanumeric string of at least 64 characters
|
|
||||||
2. For CLIENT_SECRET, CLIEND_ID: [Generate client identifier](https://www.authelia.com/integration/openid-connect/frequently-asked-questions/#how-do-i-generate-a-client-identifier-or-client-secret)
|
|
||||||
1. Use single quotes for the client secret
|
|
||||||
|
|
||||||
2. Generate PAM file using and save it to the /config/keys directory: [Generating keypair](https://www.authelia.com/reference/guides/generating-secure-values/#generating-an-rsa-keypair)
|
|
||||||
1. Save the random password
|
|
||||||
|
|
||||||
3. Configure LLDAP
|
|
||||||
1. Create a user in LLDAP with the group: lldap_password_manager
|
|
||||||
2. Create groups: forgejo
|
|
||||||
|
@ -1,4 +1,2 @@
|
|||||||
# Caddy reverse proxy
|
# Caddy reverse proxy
|
||||||
|
Follow [this](https://github.com/caddy-dns/cloudflare) to obtain secrets
|
||||||
1. Obtain cloudflare tokens: [Caddy Cloudflare](https://github.com/caddy-dns/cloudflare)
|
|
||||||
2. Set environment variables
|
|
||||||
|
@ -1,4 +0,0 @@
|
|||||||
# Nextcloud
|
|
||||||
|
|
||||||
1. Configure environment variables
|
|
||||||
2. Update office configuration
|
|
@ -1,4 +1,4 @@
|
|||||||
{ pkgs, lib, ... }:
|
{ pkgs, lib, config, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
@ -45,20 +45,14 @@
|
|||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
# Desktop Applications
|
# Desktop Applications
|
||||||
kdenlive
|
kdenlive
|
||||||
prismlauncher
|
unstable.prismlauncher
|
||||||
unstable.joplin-desktop
|
unstable.joplin-desktop
|
||||||
unstable.prusa-slicer
|
unstable.prusa-slicer
|
||||||
signal-desktop
|
signal-desktop
|
||||||
unstable.vesktop
|
unstable.vesktop
|
||||||
unstable.webcord
|
unstable.blender
|
||||||
blender
|
|
||||||
unstable.xournalpp
|
|
||||||
freecad
|
|
||||||
loupe
|
loupe
|
||||||
unstable.rnote
|
unstable.rnote
|
||||||
scrcpy
|
|
||||||
unstable.bottles
|
|
||||||
|
|
||||||
|
|
||||||
# Office
|
# Office
|
||||||
libreoffice
|
libreoffice
|
||||||
|
@ -3,25 +3,21 @@
|
|||||||
{
|
{
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
unstable.marksman
|
unstable.marksman
|
||||||
unstable.markdown-oxide
|
|
||||||
unstable.svls
|
unstable.svls
|
||||||
unstable.nil
|
unstable.nil
|
||||||
unstable.nixpkgs-fmt
|
unstable.nixpkgs-fmt
|
||||||
unstable.tectonic
|
unstable.vale-ls
|
||||||
unstable.texlab
|
unstable.vale
|
||||||
dprint
|
|
||||||
];
|
];
|
||||||
|
|
||||||
home.file.".config/.dprint.json".text =''
|
home.file.".config/vale/.vale.ini".text = ''
|
||||||
{
|
StylesPath = ~/.local/share/vale/styles
|
||||||
"markdown": {
|
|
||||||
"lineWidth":120,
|
MinAlertLevel = suggestion
|
||||||
},
|
Packages = Readability
|
||||||
"excludes": [],
|
|
||||||
"plugins": [
|
[*]
|
||||||
"https://plugins.dprint.dev/markdown-0.16.1.wasm"
|
BasedOnStyles = Vale
|
||||||
]
|
|
||||||
}
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
programs.helix = {
|
programs.helix = {
|
||||||
@ -47,38 +43,9 @@
|
|||||||
command = "svls";
|
command = "svls";
|
||||||
};
|
};
|
||||||
|
|
||||||
language-server.texlab = {
|
# Vale
|
||||||
config = {
|
language-server.vale = {
|
||||||
texlab.chktex = {
|
command = "vale-ls";
|
||||||
onOpenAndSave = true;
|
|
||||||
onEdit = true;
|
|
||||||
};
|
|
||||||
texlab.forwardSearch = {
|
|
||||||
executable = "zathura";
|
|
||||||
args = [
|
|
||||||
"--synctex-forward"
|
|
||||||
"%l:%c:%f"
|
|
||||||
"%p"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
texlab.build = {
|
|
||||||
auxDirectory = "build";
|
|
||||||
logDirectory = "build";
|
|
||||||
pdfDirectory = "build";
|
|
||||||
forwardSearchAfter = true;
|
|
||||||
onSave = true;
|
|
||||||
executable = "tectonic";
|
|
||||||
args = [
|
|
||||||
"-X"
|
|
||||||
"compile"
|
|
||||||
"--synctex"
|
|
||||||
"--keep-logs"
|
|
||||||
"--keep-intermediates"
|
|
||||||
"--outdir=build"
|
|
||||||
"%f"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
language = [
|
language = [
|
||||||
@ -86,6 +53,10 @@
|
|||||||
name = "verilog";
|
name = "verilog";
|
||||||
language-servers = [ "svls" ];
|
language-servers = [ "svls" ];
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
name = "nix";
|
||||||
|
language-servers = [ "svls" ];
|
||||||
|
}
|
||||||
{
|
{
|
||||||
name = "html";
|
name = "html";
|
||||||
language-servers = [ "vscode-html-language-server" "tailwindcss-ls" ];
|
language-servers = [ "vscode-html-language-server" "tailwindcss-ls" ];
|
||||||
@ -96,15 +67,7 @@
|
|||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "markdown";
|
name = "markdown";
|
||||||
auto-format = true;
|
language-servers = [ "vale" ];
|
||||||
language-servers = [ "markdown-oxide" ];
|
|
||||||
formatter.command = "dprint";
|
|
||||||
formatter.args = ["fmt" "--stdin" "md" "--config" "/home/xeovalyte/.config/.dprint.json"];
|
|
||||||
}
|
|
||||||
{
|
|
||||||
name = "typst";
|
|
||||||
auto-format = false;
|
|
||||||
formatter.command = "${pkgs.typstfmt}/bin/typstfmt";
|
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
@ -60,20 +60,16 @@
|
|||||||
name = "Brightspace";
|
name = "Brightspace";
|
||||||
bookmarks = [
|
bookmarks = [
|
||||||
{
|
{
|
||||||
name = "Books";
|
name = "LCA";
|
||||||
url = "https://drive.google.com/drive/folders/1L5OTbn5p3i7_Nc80hc5PztiEGHKwi-I4";
|
url = "https://brightspace.tudelft.nl/d2l/le/content/681008/Home";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "LCB";
|
name = "DSA";
|
||||||
url = "https://brightspace.tudelft.nl/d2l/le/content/681010/Home";
|
url = "https://brightspace.tudelft.nl/d2l/le/content/681012/Home";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name = "Calculus";
|
name = "iEE";
|
||||||
url = "https://brightspace.tudelft.nl/d2l/le/content/681024/Home";
|
url = "https://brightspace.tudelft.nl/d2l/le/content/681018/Home";
|
||||||
}
|
|
||||||
{
|
|
||||||
name = "IP1";
|
|
||||||
url = "https://brightspace.tudelft.nl/d2l/le/content/681020/Home";
|
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
@ -51,7 +51,6 @@
|
|||||||
follow_mouse = 2;
|
follow_mouse = 2;
|
||||||
touchpad = {
|
touchpad = {
|
||||||
natural_scroll = true;
|
natural_scroll = true;
|
||||||
scroll_factor = 0.5;
|
|
||||||
clickfinger_behavior = true;
|
clickfinger_behavior = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user