From dd7b9e22a311033d2fbaf9ccf70a5a004c3e4ee8 Mon Sep 17 00:00:00 2001 From: rasmus-kirk Date: Tue, 20 Feb 2024 09:12:19 +0100 Subject: [PATCH] Added most of what will be needed to get this running --- flake.nix | 108 +++ hugo/.hugo_build.lock | 0 hugo/archetypes/default.md | 6 + hugo/config.toml | 4 + hugo/content/header.md | 6 + hugo/content/home-manager/index.md | 624 ++++++++++++++++++ hugo/content/nixos/index.md | 411 ++++++++++++ hugo/content/test.md | 2 + hugo/public/categories/index.html | 78 +++ hugo/public/categories/index.xml | 10 + hugo/public/css/about.css | 26 + hugo/public/css/colours.css | 17 + hugo/public/css/custom.css | 1 + hugo/public/css/footer.css | 7 + hugo/public/css/header.css | 20 + hugo/public/css/layout.css | 57 ++ hugo/public/css/logo.css | 37 ++ hugo/public/css/palettes/apprentice.css | 20 + hugo/public/css/palettes/base16-dark.css | 22 + hugo/public/css/palettes/base16-light.css | 22 + hugo/public/css/palettes/dracula.css | 20 + hugo/public/css/palettes/gruvbox-dark.css | 23 + hugo/public/css/palettes/gruvbox-light.css | 23 + hugo/public/css/palettes/material.css | 20 + hugo/public/css/palettes/papercolor-dark.css | 20 + hugo/public/css/palettes/papercolor-light.css | 20 + hugo/public/css/palettes/solarized-dark.css | 20 + hugo/public/css/palettes/solarized-light.css | 20 + hugo/public/css/palettes/tender.css | 20 + hugo/public/css/palettes/tokyo-night-dark.css | 20 + .../public/css/palettes/tokyo-night-light.css | 20 + hugo/public/css/palettes/windows-95-light.css | 20 + hugo/public/css/palettes/windows-95.css | 20 + hugo/public/css/risotto.css | 12 + hugo/public/css/typography.css | 215 ++++++ hugo/public/header/index.html | 88 +++ hugo/public/home-manager/index.html | 338 ++++++++++ hugo/public/images/rice.svg | 1 + hugo/public/index.html | 72 ++ hugo/public/index.xml | 77 +++ hugo/public/nixos/index.html | 268 ++++++++ hugo/public/sitemap.xml | 22 + hugo/public/tags/index.html | 78 +++ hugo/public/tags/index.xml | 10 + hugo/public/test/index.html | 85 +++ .../risotto/.github/workflows/gh-pages.yml | 36 + hugo/themes/risotto/.gitignore | 1 + hugo/themes/risotto/LICENSE | 20 + hugo/themes/risotto/NEWS.md | 22 + hugo/themes/risotto/README.md | 74 +++ hugo/themes/risotto/archetypes/default.md | 2 + hugo/themes/risotto/config.toml | 3 + hugo/themes/risotto/exampleSite/LICENSE | 21 + hugo/themes/risotto/exampleSite/config.toml | 100 +++ .../risotto/exampleSite/configTaxo.toml | 27 + .../risotto/exampleSite/content/_index.md | 1 + .../risotto/exampleSite/content/_index.md.old | 3 + .../risotto/exampleSite/content/about.md | 25 + .../risotto/exampleSite/content/archives.md | 5 + .../exampleSite/content/homepage/about.md | 7 + .../exampleSite/content/homepage/index.md | 3 + .../exampleSite/content/homepage/work.md | 7 + .../exampleSite/content/post/_index.md | 6 + .../exampleSite/content/post/emoji-support.md | 46 ++ .../content/post/markdown-syntax.md | 148 +++++ .../content/post/math-typesetting.md | 49 ++ .../content/post/placeholder-text.md | 45 ++ .../exampleSite/content/post/rich-content.md | 34 + .../risotto/exampleSite/layouts/.gitkeep | 0 .../risotto/exampleSite/static/.gitignore | 0 hugo/themes/risotto/images/screenshot.png | Bin 0 -> 185696 bytes hugo/themes/risotto/images/tn.png | Bin 0 -> 158165 bytes hugo/themes/risotto/layouts/404.html | 0 .../risotto/layouts/_default/baseof.html | 36 + hugo/themes/risotto/layouts/_default/li.html | 1 + .../themes/risotto/layouts/_default/list.html | 12 + .../risotto/layouts/_default/single.html | 29 + hugo/themes/risotto/layouts/index.html | 4 + .../risotto/layouts/partials/about.html | 15 + .../risotto/layouts/partials/footer.html | 3 + .../themes/risotto/layouts/partials/head.html | 17 + .../risotto/layouts/partials/header.html | 10 + .../themes/risotto/layouts/partials/lang.html | 28 + hugo/themes/risotto/layouts/post/list.html | 22 + hugo/themes/risotto/static/css/about.css | 26 + hugo/themes/risotto/static/css/colours.css | 17 + hugo/themes/risotto/static/css/custom.css | 1 + hugo/themes/risotto/static/css/footer.css | 7 + hugo/themes/risotto/static/css/header.css | 20 + hugo/themes/risotto/static/css/layout.css | 57 ++ hugo/themes/risotto/static/css/logo.css | 37 ++ .../static/css/palettes/apprentice.css | 20 + .../static/css/palettes/base16-dark.css | 22 + .../static/css/palettes/base16-light.css | 22 + .../risotto/static/css/palettes/dracula.css | 20 + .../static/css/palettes/gruvbox-dark.css | 23 + .../static/css/palettes/gruvbox-light.css | 23 + .../risotto/static/css/palettes/material.css | 20 + .../static/css/palettes/papercolor-dark.css | 20 + .../static/css/palettes/papercolor-light.css | 20 + .../static/css/palettes/solarized-dark.css | 20 + .../static/css/palettes/solarized-light.css | 20 + .../risotto/static/css/palettes/tender.css | 20 + .../static/css/palettes/tokyo-night-dark.css | 20 + .../static/css/palettes/tokyo-night-light.css | 20 + .../static/css/palettes/windows-95-light.css | 20 + .../static/css/palettes/windows-95.css | 20 + hugo/themes/risotto/static/css/risotto.css | 12 + hugo/themes/risotto/static/css/typography.css | 215 ++++++ hugo/themes/risotto/static/images/rice.svg | 1 + hugo/themes/risotto/theme.toml | 16 + mkDocs.nix | 65 ++ mkHugo.nix | 12 + servarr/default.nix | 212 ++++++ servarr/jellyfin/default.nix | 137 ++++ servarr/lidarr/default.nix | 103 +++ servarr/prowlarr/default.nix | 106 +++ servarr/radarr/default.nix | 108 +++ servarr/readarr/default.nix | 104 +++ servarr/sonarr/default.nix | 109 +++ servarr/transmission/default.nix | 220 ++++++ util/upnp/default.nix | 104 +++ util/vpnNamespace/default.nix | 347 ++++++++++ 123 files changed, 6238 insertions(+) create mode 100644 flake.nix create mode 100644 hugo/.hugo_build.lock create mode 100644 hugo/archetypes/default.md create mode 100644 hugo/config.toml create mode 100644 hugo/content/header.md create mode 100644 hugo/content/home-manager/index.md create mode 100644 hugo/content/nixos/index.md create mode 100644 hugo/content/test.md create mode 100644 hugo/public/categories/index.html create mode 100644 hugo/public/categories/index.xml create mode 100644 hugo/public/css/about.css create mode 100644 hugo/public/css/colours.css create mode 100644 hugo/public/css/custom.css create mode 100644 hugo/public/css/footer.css create mode 100644 hugo/public/css/header.css create mode 100644 hugo/public/css/layout.css create mode 100644 hugo/public/css/logo.css create mode 100644 hugo/public/css/palettes/apprentice.css create mode 100644 hugo/public/css/palettes/base16-dark.css create mode 100644 hugo/public/css/palettes/base16-light.css create mode 100644 hugo/public/css/palettes/dracula.css create mode 100644 hugo/public/css/palettes/gruvbox-dark.css create mode 100644 hugo/public/css/palettes/gruvbox-light.css create mode 100644 hugo/public/css/palettes/material.css create mode 100644 hugo/public/css/palettes/papercolor-dark.css create mode 100644 hugo/public/css/palettes/papercolor-light.css create mode 100644 hugo/public/css/palettes/solarized-dark.css create mode 100644 hugo/public/css/palettes/solarized-light.css create mode 100644 hugo/public/css/palettes/tender.css create mode 100644 hugo/public/css/palettes/tokyo-night-dark.css create mode 100644 hugo/public/css/palettes/tokyo-night-light.css create mode 100644 hugo/public/css/palettes/windows-95-light.css create mode 100644 hugo/public/css/palettes/windows-95.css create mode 100644 hugo/public/css/risotto.css create mode 100644 hugo/public/css/typography.css create mode 100644 hugo/public/header/index.html create mode 100644 hugo/public/home-manager/index.html create mode 100644 hugo/public/images/rice.svg create mode 100644 hugo/public/index.html create mode 100644 hugo/public/index.xml create mode 100644 hugo/public/nixos/index.html create mode 100644 hugo/public/sitemap.xml create mode 100644 hugo/public/tags/index.html create mode 100644 hugo/public/tags/index.xml create mode 100644 hugo/public/test/index.html create mode 100644 hugo/themes/risotto/.github/workflows/gh-pages.yml create mode 100644 hugo/themes/risotto/.gitignore create mode 100644 hugo/themes/risotto/LICENSE create mode 100644 hugo/themes/risotto/NEWS.md create mode 100644 hugo/themes/risotto/README.md create mode 100644 hugo/themes/risotto/archetypes/default.md create mode 100644 hugo/themes/risotto/config.toml create mode 100644 hugo/themes/risotto/exampleSite/LICENSE create mode 100644 hugo/themes/risotto/exampleSite/config.toml create mode 100644 hugo/themes/risotto/exampleSite/configTaxo.toml create mode 120000 hugo/themes/risotto/exampleSite/content/_index.md create mode 100644 hugo/themes/risotto/exampleSite/content/_index.md.old create mode 100644 hugo/themes/risotto/exampleSite/content/about.md create mode 100644 hugo/themes/risotto/exampleSite/content/archives.md create mode 100644 hugo/themes/risotto/exampleSite/content/homepage/about.md create mode 100644 hugo/themes/risotto/exampleSite/content/homepage/index.md create mode 100644 hugo/themes/risotto/exampleSite/content/homepage/work.md create mode 100644 hugo/themes/risotto/exampleSite/content/post/_index.md create mode 100644 hugo/themes/risotto/exampleSite/content/post/emoji-support.md create mode 100644 hugo/themes/risotto/exampleSite/content/post/markdown-syntax.md create mode 100644 hugo/themes/risotto/exampleSite/content/post/math-typesetting.md create mode 100644 hugo/themes/risotto/exampleSite/content/post/placeholder-text.md create mode 100644 hugo/themes/risotto/exampleSite/content/post/rich-content.md create mode 100644 hugo/themes/risotto/exampleSite/layouts/.gitkeep create mode 100644 hugo/themes/risotto/exampleSite/static/.gitignore create mode 100644 hugo/themes/risotto/images/screenshot.png create mode 100644 hugo/themes/risotto/images/tn.png create mode 100644 hugo/themes/risotto/layouts/404.html create mode 100644 hugo/themes/risotto/layouts/_default/baseof.html create mode 100644 hugo/themes/risotto/layouts/_default/li.html create mode 100644 hugo/themes/risotto/layouts/_default/list.html create mode 100644 hugo/themes/risotto/layouts/_default/single.html create mode 100644 hugo/themes/risotto/layouts/index.html create mode 100644 hugo/themes/risotto/layouts/partials/about.html create mode 100644 hugo/themes/risotto/layouts/partials/footer.html create mode 100644 hugo/themes/risotto/layouts/partials/head.html create mode 100644 hugo/themes/risotto/layouts/partials/header.html create mode 100644 hugo/themes/risotto/layouts/partials/lang.html create mode 100644 hugo/themes/risotto/layouts/post/list.html create mode 100644 hugo/themes/risotto/static/css/about.css create mode 100644 hugo/themes/risotto/static/css/colours.css create mode 100644 hugo/themes/risotto/static/css/custom.css create mode 100644 hugo/themes/risotto/static/css/footer.css create mode 100644 hugo/themes/risotto/static/css/header.css create mode 100644 hugo/themes/risotto/static/css/layout.css create mode 100644 hugo/themes/risotto/static/css/logo.css create mode 100644 hugo/themes/risotto/static/css/palettes/apprentice.css create mode 100644 hugo/themes/risotto/static/css/palettes/base16-dark.css create mode 100644 hugo/themes/risotto/static/css/palettes/base16-light.css create mode 100644 hugo/themes/risotto/static/css/palettes/dracula.css create mode 100644 hugo/themes/risotto/static/css/palettes/gruvbox-dark.css create mode 100644 hugo/themes/risotto/static/css/palettes/gruvbox-light.css create mode 100644 hugo/themes/risotto/static/css/palettes/material.css create mode 100644 hugo/themes/risotto/static/css/palettes/papercolor-dark.css create mode 100644 hugo/themes/risotto/static/css/palettes/papercolor-light.css create mode 100644 hugo/themes/risotto/static/css/palettes/solarized-dark.css create mode 100644 hugo/themes/risotto/static/css/palettes/solarized-light.css create mode 100644 hugo/themes/risotto/static/css/palettes/tender.css create mode 100644 hugo/themes/risotto/static/css/palettes/tokyo-night-dark.css create mode 100644 hugo/themes/risotto/static/css/palettes/tokyo-night-light.css create mode 100644 hugo/themes/risotto/static/css/palettes/windows-95-light.css create mode 100644 hugo/themes/risotto/static/css/palettes/windows-95.css create mode 100644 hugo/themes/risotto/static/css/risotto.css create mode 100644 hugo/themes/risotto/static/css/typography.css create mode 100644 hugo/themes/risotto/static/images/rice.svg create mode 100644 hugo/themes/risotto/theme.toml create mode 100644 mkDocs.nix create mode 100644 mkHugo.nix create mode 100644 servarr/default.nix create mode 100644 servarr/jellyfin/default.nix create mode 100644 servarr/lidarr/default.nix create mode 100644 servarr/prowlarr/default.nix create mode 100644 servarr/radarr/default.nix create mode 100644 servarr/readarr/default.nix create mode 100644 servarr/sonarr/default.nix create mode 100644 servarr/transmission/default.nix create mode 100644 util/upnp/default.nix create mode 100644 util/vpnNamespace/default.nix diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..4de80a0 --- /dev/null +++ b/flake.nix @@ -0,0 +1,108 @@ +{ + description = "Kirk nix modules"; + + nixConfig = { + extra-substituters = ["https://nix-community.cachix.org"]; + extra-trusted-public-keys = ["nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="]; + }; + + inputs = { + #nixpkgs.url = "github:nixos/nixpkgs/22.11"; + nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; + nixpkgs-flood.url = "github:3JlOy-PYCCKUi/nixpkgs/flood-module"; + #nixpkgs-unstable.url = "github:nixos/nixpkgs/nixpkgs-unstable"; + + home-manager.url = "github:nix-community/home-manager"; + + flake-parts = { + url = "github:hercules-ci/flake-parts"; + inputs.nixpkgs-lib.follows = "nixpkgs"; + }; + flake-root.url = "github:srid/flake-root"; + + devshell = { + url = "github:numtide/devshell"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + treefmt-nix = { + url = "github:numtide/treefmt-nix"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + }; + + outputs = inputs @ {flake-parts, ...}: + flake-parts.lib.mkFlake { + inherit inputs; + } + rec { + imports = with inputs; [ + flake-root.flakeModule + treefmt-nix.flakeModule + devshell.flakeModule + ]; + systems = [ + "x86_64-linux" + ]; + + flake = { + nixosModules = rec { + kirk = import ./nixos; + default = kirk; + }; + homeManagerModules = rec { + kirk = import ./home-manager; + default = kirk; + }; + }; + + perSystem = { + config, + pkgs, + ... + }: { + treefmt.config = { + inherit (config.flake-root) projectRootFile; + package = pkgs.treefmt; + + programs = { + alejandra.enable = true; + deadnix.enable = true; + }; + }; + + packages = { + docs = pkgs.callPackage ./mkDocs.nix { inherit inputs; }; + hugo = pkgs.callPackage ./mkHugo.nix { inherit inputs; }; + }; + + devshells.default = { + name = "Rasmus Kirk"; + + commands = [ + { + category = "Tools"; + name = "fmt"; + help = "Format the source tree"; + command = "nix fmt"; + } + ]; + }; + }; + }; + + # outputs = { + # self, + # }: { + # nixosModules.kirk = import ./nixos; + # nixosModules.default = self.nixosModules.kirk; + # + # homeManagerModules.kirk = import ./home-manager; + # homeManagerModules.default = self.homeManagerModules.kirk; + # + # # TODO: Find a way to generate documentation from modules using the same + # # tools as nixos. See ./mkDocs.nix + # + # #packages.x86_64-linux.mkdocs = {}; + # #defaultPackage.x86_64-linux = self.packages.x86_64-linux.report; + # }; +} diff --git a/hugo/.hugo_build.lock b/hugo/.hugo_build.lock new file mode 100644 index 0000000..e69de29 diff --git a/hugo/archetypes/default.md b/hugo/archetypes/default.md new file mode 100644 index 0000000..00e77bd --- /dev/null +++ b/hugo/archetypes/default.md @@ -0,0 +1,6 @@ +--- +title: "{{ replace .Name "-" " " | title }}" +date: {{ .Date }} +draft: true +--- + diff --git a/hugo/config.toml b/hugo/config.toml new file mode 100644 index 0000000..fbd6902 --- /dev/null +++ b/hugo/config.toml @@ -0,0 +1,4 @@ +theme = 'risotto' +languageCode = 'en-us' +title = "Option Documentation for Rasmus Kirk's Nix Modules" +baseURL = 'https://rasmus-kirk.github.io/nix-modules/' diff --git a/hugo/content/header.md b/hugo/content/header.md new file mode 100644 index 0000000..7d6e9c8 --- /dev/null +++ b/hugo/content/header.md @@ -0,0 +1,6 @@ +--- +title: Options Documentation +author: Rasmus Kirk +date: DATE-TIMESTAMP +--- + diff --git a/hugo/content/home-manager/index.md b/hugo/content/home-manager/index.md new file mode 100644 index 0000000..2915c37 --- /dev/null +++ b/hugo/content/home-manager/index.md @@ -0,0 +1,624 @@ +--- +title: Options Documentation +author: Rasmus Kirk +date: 2023-12-07 +--- + +## kirk.fonts.enable +Whether to enable Enable my fonts, namely fira-code with nerdfonts. Note that this is required for kirk modules that use the nerdfont icons to function properly.. + +*_Type_*: +boolean + + +*_Default_* +``` +false +``` + + +*_Example_* +``` +true +``` + + +## kirk.foot.alpha +Alpha value of the foot terminal. + +*_Type_*: +floating point number + + +*_Default_* +``` +0.85 +``` + + + + +## kirk.foot.colorscheme +A colorscheme attribute set. + +*_Type_*: +attribute set + + +*_Default_* +``` +{"bg":"282828","black":"1d2021","blue":"458588","bright":{"black":"928374","blue":"83a598","green":"b8bb26","orange":"fe8019","purple":"d3869b","red":"fb4934","teal":"8ec07c","white":"fbf1c7","yellow":"fabd2f"},"fg":"ebdbb2","green":"98971a","orange":"d65d0e","purple":"b16286","red":"cc241d","teal":"689d6a","white":"d5c4a1","yellow":"d79921"} +``` + + + + +## kirk.foot.enable +Whether to enable foot terminal emulator. + +*_Type_*: +boolean + + +*_Default_* +``` +false +``` + + +*_Example_* +``` +true +``` + + +## kirk.foot.enableKeyBindings +Whether or not to enable my keybindings. + +*_Type_*: +boolean + + +*_Default_* +``` +true +``` + + + + +## kirk.foot.fontSize +Font size of the terminal. + +*_Type_*: +signed integer + + +*_Default_* +``` +15 +``` + + + + +## kirk.fzf.colorscheme +A colorscheme attribute set. + +*_Type_*: +attribute set + + +*_Default_* +``` +{"bg":"282828","black":"1d2021","blue":"458588","bright":{"black":"928374","blue":"83a598","green":"b8bb26","orange":"fe8019","purple":"d3869b","red":"fb4934","teal":"8ec07c","white":"fbf1c7","yellow":"fabd2f"},"fg":"ebdbb2","green":"98971a","orange":"d65d0e","purple":"b16286","red":"cc241d","teal":"689d6a","white":"d5c4a1","yellow":"d79921"} +``` + + + + +## kirk.fzf.enable +Whether to enable foot terminal emulator. + +*_Type_*: +boolean + + +*_Default_* +``` +false +``` + + +*_Example_* +``` +true +``` + + +## kirk.fzf.enableZshIntegration +Whether to enable zsh integration. + +*_Type_*: +boolean + + +*_Default_* +``` +true +``` + + + + +## kirk.git.enable +Whether to enable git. + +*_Type_*: +boolean + + +*_Default_* +``` +false +``` + + +*_Example_* +``` +true +``` + + +## kirk.git.userEmail +What email address to use for git. + +*_Type_*: +string + + + + + + +## kirk.git.userName +Username to use for git. + +*_Type_*: +string + + + + + + +## kirk.gruvbox.colorscheme +A definition for the gruvbox theme. + +*_Type_*: +attribute set + + +*_Default_* +``` +{"bg":"282828","black":"1d2021","blue":"458588","bright":{"black":"928374","blue":"83a598","green":"b8bb26","orange":"fe8019","purple":"d3869b","red":"fb4934","teal":"8ec07c","white":"fbf1c7","yellow":"fabd2f"},"fg":"ebdbb2","green":"98971a","orange":"d65d0e","purple":"b16286","red":"cc241d","teal":"689d6a","white":"d5c4a1","yellow":"d79921"} +``` + + + + +## kirk.helix.enable +Whether to enable helix text editor. + +*_Type_*: +boolean + + +*_Default_* +``` +false +``` + + +*_Example_* +``` +true +``` + + +## kirk.helix.extraPackages +Extra packages to install, for example LSP's. + +*_Type_*: +list of package + + +*_Default_* +``` +[] +``` + + + + +## kirk.helix.installMostLsps +Whether or not to install most of the LSP's that helix supports. + +*_Type_*: +boolean + + +*_Default_* +``` +true +``` + + + + +## kirk.homeManagerScripts.configDir +Path to the home-manager configuration. + +*_Type_*: +null or path + + +*_Default_* +``` +null +``` + + + + +## kirk.homeManagerScripts.enable +Whether to enable home manager scripts. + +*_Type_*: +boolean + + +*_Default_* +``` +false +``` + + +*_Example_* +``` +true +``` + + +## kirk.homeManagerScripts.machine +Path to the home-manager configuration. + +*_Type_*: +null or string + + + + + + +## kirk.jiten.dailyWord +Enable daily japanese word prompt. + +*_Type_*: +boolean + + +*_Default_* +``` +true +``` + + + + +## kirk.jiten.enable +Whether to enable jiten japanese dictionary. + +*_Type_*: +boolean + + +*_Default_* +``` +false +``` + + +*_Example_* +``` +true +``` + + +## kirk.joshuto.enable +Whether to enable joshuto file manager. + +*_Type_*: +boolean + + +*_Default_* +``` +false +``` + + +*_Example_* +``` +true +``` + + +## kirk.joshuto.enableZshIntegration +Adds the auto-cd `j` command to zsh. + + +*_Type_*: +boolean + + +*_Default_* +``` +true +``` + + + + +## kirk.kakoune.enable +Whether to enable kakoune text editor. + +*_Type_*: +boolean + + +*_Default_* +``` +false +``` + + +*_Example_* +``` +true +``` + + +## kirk.ssh.enable +Whether to enable ssh with extra config. + +*_Type_*: +boolean + + +*_Default_* +``` +false +``` + + +*_Example_* +``` +true +``` + + +## kirk.ssh.identityPath +The directory containing the path to the identity file. + +*_Type_*: +null or path + + +*_Default_* +``` +null +``` + + + + +## kirk.terminalTools.autoUpdateTealdeer +Whether to auto-update tealdeer. + +*_Type_*: +boolean + + +*_Default_* +``` +true +``` + + + + +## kirk.terminalTools.enable +Whether to enable Quality of life terminal tools. + +*_Type_*: +boolean + + +*_Default_* +``` +false +``` + + +*_Example_* +``` +true +``` + + +## kirk.terminalTools.enableZshIntegration +Whether to enable zsh integration for bat. + +*_Type_*: +boolean + + +*_Default_* +``` +true +``` + + + + +## kirk.terminalTools.theme +What syntax highlighting colorscheme to use. + +*_Type_*: +string + + +*_Default_* +``` +"gruvbox-dark" +``` + + + + +## kirk.terminalTools.trashCleaner.enable +Enable the trash-cli cleanup script + +*_Type_*: +boolean + + +*_Default_* +``` +true +``` + + + + +## kirk.terminalTools.trashCleaner.persistance +How many days a file stays in trash before getting cleaned up. + +*_Type_*: +signed integer or floating point number + + +*_Default_* +``` +30 +``` + + + + +## kirk.userDirs.autoSortDownloads +Whether or not to auto-sort downloads. + + +*_Type_*: +boolean + + +*_Default_* +``` +true +``` + + + + +## kirk.userDirs.enable +Whether to enable userDirs. + +*_Type_*: +boolean + + +*_Default_* +``` +false +``` + + +*_Example_* +``` +true +``` + + +## kirk.zathura.colorscheme +A colorscheme attribute set. + + +*_Type_*: +attribute set + + +*_Default_* +``` +{"bg":"282828","black":"1d2021","blue":"458588","bright":{"black":"928374","blue":"83a598","green":"b8bb26","orange":"fe8019","purple":"d3869b","red":"fb4934","teal":"8ec07c","white":"fbf1c7","yellow":"fabd2f"},"fg":"ebdbb2","green":"98971a","orange":"d65d0e","purple":"b16286","red":"cc241d","teal":"689d6a","white":"d5c4a1","yellow":"d79921"} +``` + + + + +## kirk.zathura.enable +Whether to enable foot terminal emulator. + +*_Type_*: +boolean + + +*_Default_* +``` +false +``` + + +*_Example_* +``` +true +``` + + +## kirk.zathura.enableKeyBindings +Whether or not to enable my keybindings. + + +*_Type_*: +boolean + + +*_Default_* +``` +true +``` + + + + +## kirk.zsh.enable +Whether to enable zsh configuration.. + +*_Type_*: +boolean + + +*_Default_* +``` +false +``` + + +*_Example_* +``` +true +``` + + diff --git a/hugo/content/nixos/index.md b/hugo/content/nixos/index.md new file mode 100644 index 0000000..3f5dd1c --- /dev/null +++ b/hugo/content/nixos/index.md @@ -0,0 +1,411 @@ +--- +title: Options Documentation +author: Rasmus Kirk +date: 2023-12-07 +--- + +## kirk.nixosScripts.configDir +Path to the nixos configuration. + +*_Type_*: +path + + +*_Default_* +``` +"/etc/nixos" +``` + + + + +## kirk.nixosScripts.enable +Whether to enable Nixos scripts + +Required options: +- `machine` +. + +*_Type_*: +boolean + + +*_Default_* +``` +false +``` + + +*_Example_* +``` +true +``` + + +## kirk.nixosScripts.machine +REQUIRED! The machine to run on. + +*_Type_*: +null or string + + +*_Default_* +``` +null +``` + + + + +## kirk.servarr.acmeMail +REQUIRED! The ACME mail. + +*_Type_*: +null or string + + +*_Default_* +``` +null +``` + + + + +## kirk.servarr.domainName +REQUIRED! The domain name to host jellyfin on. + +*_Type_*: +null or string + + +*_Default_* +``` +null +``` + + + + +## kirk.servarr.enable +Whether to enable My servarr setup. Hosts Jellyfin on the given domain (remember domain +records/port forwarding) and hosts the following services on localhost +through a mullvad VPN: + +- Prowlarr +- Sonarr +- Radarr +- Flood/Rtorrnet + +Required options for this module: + +- `domainName` +- `acmeMail` +- `mullvadAcc` + +Remember to read the options. + +NOTE: The docker service to manage this executes the command `docker +container prune -f` on startup for reproducibility, may cause issues +depending on your setup. + +NOTE: This nixos module only supports the mullvad VPN, if you need +another VPN, create a PR or fork this repo! +. + +*_Type_*: +boolean + + +*_Default_* +``` +false +``` + + +*_Example_* +``` +true +``` + + +## kirk.servarr.gluetun.extraConfig +Extra config for the service. + +*_Type_*: +attribute set + + +*_Default_* +``` +{} +``` + + + + +## kirk.servarr.jellyfin.extraConfig +Extra config for the service. + +*_Type_*: +attribute set + + +*_Default_* +``` +{} +``` + + + + +## kirk.servarr.jellyfin.port +Port of Jellyfin. + +*_Type_*: +16 bit unsigned integer; between 0 and 65535 (both inclusive) + + +*_Default_* +``` +8096 +``` + + + + +## kirk.servarr.mediaDir +The location of the media directory for the services. + +*_Type_*: +path + + +*_Default_* +``` +"~/servarr" +``` + + + + +## kirk.servarr.mullvadAcc +REQUIRED! The location the file containing your mullvad account key. + +*_Type_*: +null or path + + +*_Default_* +``` +null +``` + + + + +## kirk.servarr.prowlarr.extraConfig +Extra config for the service. + +*_Type_*: +attribute set + + +*_Default_* +``` +{} +``` + + + + +## kirk.servarr.prowlarr.port +Port of prowlarr. + +*_Type_*: +16 bit unsigned integer; between 0 and 65535 (both inclusive) + + +*_Default_* +``` +6002 +``` + + + + +## kirk.servarr.radarr.extraConfig +Extra config for the service. + +*_Type_*: +attribute set + + +*_Default_* +``` +{} +``` + + + + +## kirk.servarr.radarr.port +Port of radarr. + +*_Type_*: +16 bit unsigned integer; between 0 and 65535 (both inclusive) + + +*_Default_* +``` +6004 +``` + + + + +## kirk.servarr.rflood.extraConfig +Extra config for the service. + +*_Type_*: +attribute set + + +*_Default_* +``` +{} +``` + + + + +## kirk.servarr.rflood.port +Port of rflood. + +*_Type_*: +16 bit unsigned integer; between 0 and 65535 (both inclusive) + + +*_Default_* +``` +6001 +``` + + + + +## kirk.servarr.rflood.ulimits.enable +Whether to enable Enable rtorrent ulimits. I had a bug that caused rtorrent to fail +and log `std::bad_alloc`. Setting ulimits for this service fixed +the issue. You probably don't want to set this unless you have +similar issues.See link below for more info: + +https://stackoverflow.com/questions/75536471/rtorrent-docker-container-failing-to-start-saying-stdbad-alloc +. + +*_Type_*: +boolean + + +*_Default_* +``` +false +``` + + +*_Example_* +``` +true +``` + + +## kirk.servarr.rflood.ulimits.hard +The hard limit. + +*_Type_*: +unsigned integer, meaning >=0 + + +*_Default_* +``` +1024 +``` + + + + +## kirk.servarr.rflood.ulimits.soft +The soft limit. + +*_Type_*: +unsigned integer, meaning >=0 + + +*_Default_* +``` +1024 +``` + + + + +## kirk.servarr.sonarr.extraConfig +Extra config for the service. + +*_Type_*: +attribute set + + +*_Default_* +``` +{} +``` + + + + +## kirk.servarr.sonarr.port +Port of sonarr. + +*_Type_*: +16 bit unsigned integer; between 0 and 65535 (both inclusive) + + +*_Default_* +``` +6003 +``` + + + + +## kirk.servarr.stateDir +The location of the state directory for the services. + +*_Type_*: +path + + +*_Default_* +``` +"~/.local/state" +``` + + + + +## kirk.servarr.timezone +Your timezone, used for logging purposes. + +*_Type_*: +string + + +*_Default_* +``` +"Etc/UTC" +``` + + + + diff --git a/hugo/content/test.md b/hugo/content/test.md new file mode 100644 index 0000000..35d184a --- /dev/null +++ b/hugo/content/test.md @@ -0,0 +1,2 @@ +[Nixos options](./nixos) +[Home manager options](./home-manager) diff --git a/hugo/public/categories/index.html b/hugo/public/categories/index.html new file mode 100644 index 0000000..97c902d --- /dev/null +++ b/hugo/public/categories/index.html @@ -0,0 +1,78 @@ + + + + Categories – Option Documentation for Rasmus Kirk's Nix Modules + + + + + + + + + + + + + + + + + + + +
+ + + +
+

Categories

+ + + +
    + +
+ + +
+ +
+
+ + +
+
+
+
+
+ + + +
+ + + diff --git a/hugo/public/categories/index.xml b/hugo/public/categories/index.xml new file mode 100644 index 0000000..fc82f5c --- /dev/null +++ b/hugo/public/categories/index.xml @@ -0,0 +1,10 @@ + + + + Categories on Option Documentation for Rasmus Kirk's Nix Modules + https://rasmus-kirk.github.io/nix-modules/categories/ + Recent content in Categories on Option Documentation for Rasmus Kirk's Nix Modules + Hugo -- gohugo.io + en-us + + diff --git a/hugo/public/css/about.css b/hugo/public/css/about.css new file mode 100644 index 0000000..6c12ba4 --- /dev/null +++ b/hugo/public/css/about.css @@ -0,0 +1,26 @@ +/* About/bio section */ +.about__logo { + height: 1.5rem; +} + +.about__title { + display: inline; + vertical-align: top; +} + +.about__title::before { + content: none; +} + +/* Social media links */ +.aside__social-links { + padding: 0; +} + +.aside__social-links li { + display: inline-block; +} + +.aside__social-links li::marker { + content: none; +} diff --git a/hugo/public/css/colours.css b/hugo/public/css/colours.css new file mode 100644 index 0000000..4326985 --- /dev/null +++ b/hugo/public/css/colours.css @@ -0,0 +1,17 @@ +:root { + /* Background */ + --bg: var(--base00); + --off-bg: var(--base01); + --inner-bg: var(--base02); + + /* Text */ + --fg: var(--base05); + --off-fg: var(--base04); + --muted: var(--base03); + --link: var(--base0D); + --hover: var(--base0C); + --highlight: var(--base0A); + + /* Logo */ + --logo: var(--base0B); +} diff --git a/hugo/public/css/custom.css b/hugo/public/css/custom.css new file mode 100644 index 0000000..71949ed --- /dev/null +++ b/hugo/public/css/custom.css @@ -0,0 +1 @@ +/* Override this file to customise the theme's CSS for your site */ diff --git a/hugo/public/css/footer.css b/hugo/public/css/footer.css new file mode 100644 index 0000000..3e84188 --- /dev/null +++ b/hugo/public/css/footer.css @@ -0,0 +1,7 @@ +.page__footer { + color: var(--off-fg); +} + +.page__footer p { + margin: 0; +} diff --git a/hugo/public/css/header.css b/hugo/public/css/header.css new file mode 100644 index 0000000..cab735b --- /dev/null +++ b/hugo/public/css/header.css @@ -0,0 +1,20 @@ +/* Main menu */ +.main-nav ul { + display: flex; + flex-flow: row wrap; + justify-content: flex-start; + margin: 0; + padding: 0 0 0.25rem 0; + gap: 0rem 1.5rem; +} + +.main-nav li { + padding-top: 0.25rem; + margin-left: 1rem; + text-transform: lowercase; +} + +.main-nav li::marker { + content: "./"; +} + diff --git a/hugo/public/css/layout.css b/hugo/public/css/layout.css new file mode 100644 index 0000000..d249166 --- /dev/null +++ b/hugo/public/css/layout.css @@ -0,0 +1,57 @@ +/* 1rem = 16px by default */ + +.page { + max-width: 64rem; + margin: 1rem auto; + display: grid; + grid-template-areas: + "header" + "body" + "aside" + "footer"; + grid-template-columns: minmax(0, 1fr); /* https://css-tricks.com/preventing-a-grid-blowout/ */ + grid-row-gap: 2rem; +} + +@media (min-width: 45rem) { + .page { + grid-template-areas: + "header header" + "body aside" + "footer footer"; + grid-template-columns: minmax(0, 1fr) 15rem; + grid-column-gap: 2rem; + } +} + +/* Header */ +.page__header { + grid-area: header; + display: flex; +} + +.page__logo { + flex-shrink: 0; +} + +.page__nav { + flex-grow: 1; +} + +/* Body + aside */ +.page__body { + grid-area: body; + background-color: var(--off-bg); + box-shadow: 0 0 0 1rem var(--off-bg); + overflow-wrap: break-word; +} + +.page__aside { + grid-area: aside; + color: var(--off-fg); +} + +/* Footer */ +.page__footer { + grid-area: footer; +} diff --git a/hugo/public/css/logo.css b/hugo/public/css/logo.css new file mode 100644 index 0000000..368fff4 --- /dev/null +++ b/hugo/public/css/logo.css @@ -0,0 +1,37 @@ +.page__logo { + padding: 0; + margin: 0; + font-weight: inherit; + color: var(--bg); +} + +.page__logo:before { + content: none; +} + +.page__logo-inner { + display: block; + background: var(--logo); + opacity: 0.90; + padding: 0.25rem; +} + +a.page__logo-inner:link, a.page__logo-inner:visited { + color: inherit; + text-decoration: inherit; +} + +a.page__logo-inner:hover, +a.page__logo-inner:active { + opacity: 1; +} + +.page__logo-inner:before { + content: "["; + color: var(--bg); +} + +.page__logo-inner:after { + content: "] $"; + color: var(--bg); +} diff --git a/hugo/public/css/palettes/apprentice.css b/hugo/public/css/palettes/apprentice.css new file mode 100644 index 0000000..303d1c7 --- /dev/null +++ b/hugo/public/css/palettes/apprentice.css @@ -0,0 +1,20 @@ +/* Apprentice by romainl */ + +:root { + --base00: #262626; + --base01: #AF5F5F; + --base02: #5F875F; + --base03: #87875F; + --base04: #5F87AF; + --base05: #5F5F87; + --base06: #5F8787; + --base07: #6C6C6C; + --base08: #444444; + --base09: #FF8700; + --base0A: #87AF87; + --base0B: #FFFFAF; + --base0C: #87AFD7; + --base0D: #8787AF; + --base0E: #5FAFAF; + --base0F: #BCBCBC; +} \ No newline at end of file diff --git a/hugo/public/css/palettes/base16-dark.css b/hugo/public/css/palettes/base16-dark.css new file mode 100644 index 0000000..cb1ec1d --- /dev/null +++ b/hugo/public/css/palettes/base16-dark.css @@ -0,0 +1,22 @@ +/* base16 default dark + * https://github.com/chriskempson/base16-default-schemes + */ + +:root { + --base00: #181818; + --base01: #282828; + --base02: #383838; + --base03: #585858; + --base04: #b8b8b8; + --base05: #d8d8d8; + --base06: #e8e8e8; + --base07: #f8f8f8; + --base08: #ab4642; + --base09: #dc9656; + --base0A: #f7ca88; + --base0B: #a1b56c; + --base0C: #86c1b9; + --base0D: #7cafc2; + --base0E: #ba8baf; + --base0F: #a16946; +} diff --git a/hugo/public/css/palettes/base16-light.css b/hugo/public/css/palettes/base16-light.css new file mode 100644 index 0000000..bcbbb5a --- /dev/null +++ b/hugo/public/css/palettes/base16-light.css @@ -0,0 +1,22 @@ +/* base16 default light + * https://github.com/chriskempson/base16-default-schemes + */ + +:root { + --base00: #f8f8f8; + --base01: #e8e8e8; + --base02: #d8d8d8; + --base03: #b8b8b8; + --base04: #585858; + --base05: #383838; + --base06: #282828; + --base07: #181818; + --base08: #ab4642; + --base09: #dc9656; + --base0A: #f7ca88; + --base0B: #a1b56c; + --base0C: #86c1b9; + --base0D: #7cafc2; + --base0E: #ba8baf; + --base0F: #a16946; +} diff --git a/hugo/public/css/palettes/dracula.css b/hugo/public/css/palettes/dracula.css new file mode 100644 index 0000000..66f1abc --- /dev/null +++ b/hugo/public/css/palettes/dracula.css @@ -0,0 +1,20 @@ +/* Dracula by Mike Barkmin (http://github.com/mikebarkmin) based on Dracula Theme (http://github.com/dracula) */ + +:root { + --base00: #282936; + --base01: #3a3c4e; + --base02: #4d4f68; + --base03: #626483; + --base04: #62d6e8; + --base05: #e9e9f4; + --base06: #f1f2f8; + --base07: #f7f7fb; + --base08: #ea51b2; + --base09: #b45bcf; + --base0A: #00f769; + --base0B: #ebff87; + --base0C: #a1efe4; + --base0D: #62d6e8; + --base0E: #b45bcf; + --base0F: #00f769; +} \ No newline at end of file diff --git a/hugo/public/css/palettes/gruvbox-dark.css b/hugo/public/css/palettes/gruvbox-dark.css new file mode 100644 index 0000000..1d60bd9 --- /dev/null +++ b/hugo/public/css/palettes/gruvbox-dark.css @@ -0,0 +1,23 @@ +/* gruvbox dark + * https://github.com/morhetz/gruvbox + * base16: https://github.com/dawikur/base16-gruvbox-scheme + */ + +:root { + --base00: #282828; + --base01: #3c3836; + --base02: #504945; + --base03: #665c54; + --base04: #bdae93; + --base05: #d5c4a1; + --base06: #ebdbb2; + --base07: #fbf1c7; + --base08: #fb4934; + --base09: #fe8019; + --base0A: #fabd2f; + --base0B: #b8bb26; + --base0C: #8ec07c; + --base0D: #83a598; + --base0E: #d3869b; + --base0F: #d65d0e; +} diff --git a/hugo/public/css/palettes/gruvbox-light.css b/hugo/public/css/palettes/gruvbox-light.css new file mode 100644 index 0000000..f786cf0 --- /dev/null +++ b/hugo/public/css/palettes/gruvbox-light.css @@ -0,0 +1,23 @@ +/* gruvbox light + * https://github.com/morhetz/gruvbox + * base16: https://github.com/dawikur/base16-gruvbox-scheme + */ + +:root { + --base00: #fbf1c7; + --base01: #ebdbb2; + --base02: #d5c4a1; + --base03: #bdae93; + --base04: #665c54; + --base05: #504945; + --base06: #3c3836; + --base07: #282828; + --base08: #9d0006; + --base09: #af3a03; + --base0A: #b57614; + --base0B: #79740e; + --base0C: #427b58; + --base0D: #076678; + --base0E: #8f3f71; + --base0F: #d65d0e; +} diff --git a/hugo/public/css/palettes/material.css b/hugo/public/css/palettes/material.css new file mode 100644 index 0000000..60bfafb --- /dev/null +++ b/hugo/public/css/palettes/material.css @@ -0,0 +1,20 @@ +/* Material by Nate Peterson */ + +:root { + --base00: #263238; + --base01: #2E3C43; + --base02: #314549; + --base03: #546E7A; + --base04: #B2CCD6; + --base05: #EEFFFF; + --base06: #EEFFFF; + --base07: #FFFFFF; + --base08: #F07178; + --base09: #F78C6C; + --base0A: #FFCB6B; + --base0B: #C3E88D; + --base0C: #89DDFF; + --base0D: #82AAFF; + --base0E: #C792EA; + --base0F: #FF5370; +} \ No newline at end of file diff --git a/hugo/public/css/palettes/papercolor-dark.css b/hugo/public/css/palettes/papercolor-dark.css new file mode 100644 index 0000000..d289932 --- /dev/null +++ b/hugo/public/css/palettes/papercolor-dark.css @@ -0,0 +1,20 @@ +/* PaperColor Dark by Jon Leopard (http://github.com/jonleopard) based on PaperColor Theme (https://github.com/NLKNguyen/papercolor-theme) */ + +:root { + --base00: #1c1c1c; + --base01: #af005f; + --base02: #5faf00; + --base03: #d7af5f; + --base04: #5fafd7; + --base05: #808080; + --base06: #d7875f; + --base07: #d0d0d0; + --base08: #585858; + --base09: #5faf5f; + --base0A: #afd700; + --base0B: #af87d7; + --base0C: #ffaf00; + --base0D: #ff5faf; + --base0E: #00afaf; + --base0F: #5f8787; +} \ No newline at end of file diff --git a/hugo/public/css/palettes/papercolor-light.css b/hugo/public/css/palettes/papercolor-light.css new file mode 100644 index 0000000..7eeb7f5 --- /dev/null +++ b/hugo/public/css/palettes/papercolor-light.css @@ -0,0 +1,20 @@ +/* PaperColor Light by Jon Leopard (http://github.com/jonleopard) based on PaperColor Theme (https://github.com/NLKNguyen/papercolor-theme) */ + +:root { + --base00: #eeeeee; + --base01: #af0000; + --base02: #008700; + --base03: #5f8700; + --base04: #0087af; + --base05: #444444; + --base06: #005f87; + --base07: #878787; + --base08: #bcbcbc; + --base09: #d70000; + --base0A: #d70087; + --base0B: #8700af; + --base0C: #d75f00; + --base0D: #d75f00; + --base0E: #005faf; + --base0F: #005f87; +} \ No newline at end of file diff --git a/hugo/public/css/palettes/solarized-dark.css b/hugo/public/css/palettes/solarized-dark.css new file mode 100644 index 0000000..a646595 --- /dev/null +++ b/hugo/public/css/palettes/solarized-dark.css @@ -0,0 +1,20 @@ +/* Solarized Dark by Ethan Schoonover (modified by aramisgithub) */ + +:root { + --base00: #002b36; + --base01: #073642; + --base02: #586e75; + --base03: #657b83; + --base04: #839496; + --base05: #93a1a1; + --base06: #eee8d5; + --base07: #fdf6e3; + --base08: #dc322f; + --base09: #cb4b16; + --base0A: #b58900; + --base0B: #859900; + --base0C: #2aa198; + --base0D: #268bd2; + --base0E: #6c71c4; + --base0F: #d33682; +} \ No newline at end of file diff --git a/hugo/public/css/palettes/solarized-light.css b/hugo/public/css/palettes/solarized-light.css new file mode 100644 index 0000000..dfb92c1 --- /dev/null +++ b/hugo/public/css/palettes/solarized-light.css @@ -0,0 +1,20 @@ +/* Solarized Light by Ethan Schoonover (modified by aramisgithub) */ + +:root { + --base00: #fdf6e3; + --base01: #eee8d5; + --base02: #93a1a1; + --base03: #839496; + --base04: #657b83; + --base05: #586e75; + --base06: #073642; + --base07: #002b36; + --base08: #dc322f; + --base09: #cb4b16; + --base0A: #b58900; + --base0B: #859900; + --base0C: #2aa198; + --base0D: #268bd2; + --base0E: #6c71c4; + --base0F: #d33682; +} \ No newline at end of file diff --git a/hugo/public/css/palettes/tender.css b/hugo/public/css/palettes/tender.css new file mode 100644 index 0000000..77fbe87 --- /dev/null +++ b/hugo/public/css/palettes/tender.css @@ -0,0 +1,20 @@ +/* tender by Jacobo Tabernero (https://github/com/jacoborus/tender.vim) */ + +:root { + --base00: #282828; + --base01: #383838; + --base02: #484848; + --base03: #4c4c4c; + --base04: #b8b8b8; + --base05: #eeeeee; + --base06: #e8e8e8; + --base07: #feffff; + --base08: #f43753; + --base09: #dc9656; + --base0A: #ffc24b; + --base0B: #c9d05c; + --base0C: #73cef4; + --base0D: #b3deef; + --base0E: #d3b987; + --base0F: #a16946; +} \ No newline at end of file diff --git a/hugo/public/css/palettes/tokyo-night-dark.css b/hugo/public/css/palettes/tokyo-night-dark.css new file mode 100644 index 0000000..760d2fe --- /dev/null +++ b/hugo/public/css/palettes/tokyo-night-dark.css @@ -0,0 +1,20 @@ +/* Tokyo Night Dark by Michaël Ball */ + +:root { + --base00: #1A1B26; + --base01: #16161E; + --base02: #2F3549; + --base03: #444B6A; + --base04: #787C99; + --base05: #A9B1D6; + --base06: #CBCCD1; + --base07: #D5D6DB; + --base08: #C0CAF5; + --base09: #A9B1D6; + --base0A: #0DB9D7; + --base0B: #9ECE6A; + --base0C: #B4F9F8; + --base0D: #2AC3DE; + --base0E: #BB9AF7; + --base0F: #F7768E; +} \ No newline at end of file diff --git a/hugo/public/css/palettes/tokyo-night-light.css b/hugo/public/css/palettes/tokyo-night-light.css new file mode 100644 index 0000000..66e73c8 --- /dev/null +++ b/hugo/public/css/palettes/tokyo-night-light.css @@ -0,0 +1,20 @@ +/* Tokyo Night Light by Michaël Ball */ + +:root { + --base00: #D5D6DB; + --base01: #CBCCD1; + --base02: #DFE0E5; + --base03: #9699A3; + --base04: #4C505E; + --base05: #343B59; + --base06: #1A1B26; + --base07: #1A1B26; + --base08: #343B58; + --base09: #965027; + --base0A: #166775; + --base0B: #485E30; + --base0C: #3E6968; + --base0D: #34548A; + --base0E: #5A4A78; + --base0F: #8C4351; +} \ No newline at end of file diff --git a/hugo/public/css/palettes/windows-95-light.css b/hugo/public/css/palettes/windows-95-light.css new file mode 100644 index 0000000..70cfeeb --- /dev/null +++ b/hugo/public/css/palettes/windows-95-light.css @@ -0,0 +1,20 @@ +/* Windows 95 Light by Fergus Collins (https://github.com/C-Fergus) */ + +:root { + --base00: #fcfcfc; + --base01: #e0e0e0; + --base02: #c4c4c4; + --base03: #a8a8a8; + --base04: #7e7e7e; + --base05: #545454; + --base06: #2a2a2a; + --base07: #000000; + --base08: #a80000; + --base09: #fcfc54; + --base0A: #a85400; + --base0B: #00a800; + --base0C: #00a8a8; + --base0D: #0000a8; + --base0E: #a800a8; + --base0F: #54fc54; +} \ No newline at end of file diff --git a/hugo/public/css/palettes/windows-95.css b/hugo/public/css/palettes/windows-95.css new file mode 100644 index 0000000..5b44cf8 --- /dev/null +++ b/hugo/public/css/palettes/windows-95.css @@ -0,0 +1,20 @@ +/* Windows 95 by Fergus Collins (https://github.com/C-Fergus) */ + +:root { + --base00: #000000; + --base01: #1C1C1C; + --base02: #383838; + --base03: #545454; + --base04: #7e7e7e; + --base05: #a8a8a8; + --base06: #d2d2d2; + --base07: #fcfcfc; + --base08: #fc5454; + --base09: #a85400; + --base0A: #fcfc54; + --base0B: #54fc54; + --base0C: #54fcfc; + --base0D: #5454fc; + --base0E: #fc54fc; + --base0F: #00a800; +} \ No newline at end of file diff --git a/hugo/public/css/risotto.css b/hugo/public/css/risotto.css new file mode 100644 index 0000000..dcb5a96 --- /dev/null +++ b/hugo/public/css/risotto.css @@ -0,0 +1,12 @@ +@import 'colours.css'; +@import 'typography.css'; +@import 'layout.css'; +@import 'header.css'; +@import 'logo.css'; +@import 'about.css'; +@import 'footer.css'; + +body { + background-color: var(--bg); + color: var(--fg); +} diff --git a/hugo/public/css/typography.css b/hugo/public/css/typography.css new file mode 100644 index 0000000..6369cf0 --- /dev/null +++ b/hugo/public/css/typography.css @@ -0,0 +1,215 @@ +/* Fonts */ +:root { + --font-monospace: "Fira Mono", monospace; +} + +body { + font-family: var(--font-monospace); + font-size: 16px; + line-height: 1.5rem; +} + +/* Headings */ +h1, +h2, +h3, +h4, +h5, +h6 { + font-size: 1rem; + margin: 1.5rem 0 0 0; + font-weight: 600; +} + +h1+h2, +h1+h3, +h1+h4, +h1+h5, +h1+h6, +h2+h3, +h2+h4, +h2+h5, +h2+h6, +h3+h4, +h3+h5, +h3+h6, +h4+h5, +h4+h6, +h5+h6 { + margin: 0; +} + +h1:before { content: "# "; } +h2:before { content: "## "; } +h3:before { content: "### "; } +h4:before { content: "#### "; } +h5:before { content: "##### "; } +h6:before { content: "###### "; } + +h1:before, +h2:before, +h3:before, +h4:before, +h5:before, +h6:before { + color: var(--muted); +} + +h1:first-child { + margin-top: 0; +} + +/* Paragraphs */ +p { + margin: 0 0 1.5rem 0; +} + +/* Links */ + +a:link, a:visited { + color: var(--link); +} + +a:hover, a:active, a.active { + color: var(--hover); +} + +/* Lists */ +ul { + margin: 0 0 1.5rem 0; + padding-left: 1.25rem; +} + +ol { + margin: 0 0 1.5rem 0; + padding-left: 1.75rem; +} + +ul ul, +ul ol, +ol ul, +ol ol { + margin: 0; +} + +ul li::marker { + content: '∗\00A0'; + color: var(--muted); +} + +ol li::marker { + color: var(--muted); +} + +dt { + margin: 0; + font-weight: bold; +} + +dd { + margin: 0 0 0 1.5rem; + font-style: italic; +} + +dd + dt { + margin-top: 1.5rem; +} + +dl { + margin: 0 0 1.5rem 0; +} + +/* Blockquotes */ +blockquote { + position: relative; + margin: 0 0 1.5rem 1.5rem; +} + +blockquote::before { + position: absolute; + left: -1.5rem; + content: ">"; + color: var(--muted); +} + +.twitter-tweet::before { + content: "\f099"; + font-family: "Font Awesome 5 Brands"; + font-weight: 400; +} + +/* Code */ +pre, +code, +kbd, +samp { + background: var(--inner-bg) !important; + font-family: var(--font-monospace); + color: var(--off-fg); +} + +pre { + overflow-x: auto; + padding: 1.5rem; + margin: 0 0 1.5rem 0; +} + +/* Emphasis */ +b, +strong { + font-weight: 600; +} + +/* Highlighting */ +::selection, +mark { + background-color: var(--highlight); + color: var(--bg); +} + +/* Other typographic elements */ +hr { + border: 0; + margin-bottom: 1.5rem; +} + +hr:after { + content: '---'; + color: var(--muted); +} + + +/* Prevent super/sub from affecting line height */ +sup, sub { + vertical-align: baseline; + position: relative; + top: -0.25rem; + font-size: unset; +} +sub { + top: 0.25rem; +} + +/* Tables */ +table { + border-spacing: 0; + margin: 0 0 1.5rem 0; + overflow-wrap: anywhere; +} +th, td { + padding: 0 .75rem; + vertical-align: top; +} +th:first-child, td:first-child { + padding-left: 0; +} +th { + text-align: inherit; +} + +/* Figures */ +img { + max-width: 100%; + height: auto; +} + diff --git a/hugo/public/header/index.html b/hugo/public/header/index.html new file mode 100644 index 0000000..6992857 --- /dev/null +++ b/hugo/public/header/index.html @@ -0,0 +1,88 @@ + + + + Options Documentation – Option Documentation for Rasmus Kirk's Nix Modules + + + + + + + + + + + + + + + + + + + +
+ + + +
+
+

Options Documentation

+
+ +
+ +
+
+ +
+ +
+
+ + +
+
+
+ + +

+ By Rasmus Kirk + +

+ + + + +
+
+ + + +
+ + + diff --git a/hugo/public/home-manager/index.html b/hugo/public/home-manager/index.html new file mode 100644 index 0000000..73ba53d --- /dev/null +++ b/hugo/public/home-manager/index.html @@ -0,0 +1,338 @@ + + + + Options Documentation – Option Documentation for Rasmus Kirk's Nix Modules + + + + + + + + + + + + + + + + + + + +
+ + + +
+
+

Options Documentation

+
+ +
+

kirk.fonts.enable

+

Whether to enable Enable my fonts, namely fira-code with nerdfonts. Note that this is required for kirk modules that use the nerdfont icons to function properly..

+

Type: +boolean

+

Default

+
false
+

Example

+
true
+

kirk.foot.alpha

+

Alpha value of the foot terminal.

+

Type: +floating point number

+

Default

+
0.85
+

kirk.foot.colorscheme

+

A colorscheme attribute set.

+

Type: +attribute set

+

Default

+
{"bg":"282828","black":"1d2021","blue":"458588","bright":{"black":"928374","blue":"83a598","green":"b8bb26","orange":"fe8019","purple":"d3869b","red":"fb4934","teal":"8ec07c","white":"fbf1c7","yellow":"fabd2f"},"fg":"ebdbb2","green":"98971a","orange":"d65d0e","purple":"b16286","red":"cc241d","teal":"689d6a","white":"d5c4a1","yellow":"d79921"}
+

kirk.foot.enable

+

Whether to enable foot terminal emulator.

+

Type: +boolean

+

Default

+
false
+

Example

+
true
+

kirk.foot.enableKeyBindings

+

Whether or not to enable my keybindings.

+

Type: +boolean

+

Default

+
true
+

kirk.foot.fontSize

+

Font size of the terminal.

+

Type: +signed integer

+

Default

+
15
+

kirk.fzf.colorscheme

+

A colorscheme attribute set.

+

Type: +attribute set

+

Default

+
{"bg":"282828","black":"1d2021","blue":"458588","bright":{"black":"928374","blue":"83a598","green":"b8bb26","orange":"fe8019","purple":"d3869b","red":"fb4934","teal":"8ec07c","white":"fbf1c7","yellow":"fabd2f"},"fg":"ebdbb2","green":"98971a","orange":"d65d0e","purple":"b16286","red":"cc241d","teal":"689d6a","white":"d5c4a1","yellow":"d79921"}
+

kirk.fzf.enable

+

Whether to enable foot terminal emulator.

+

Type: +boolean

+

Default

+
false
+

Example

+
true
+

kirk.fzf.enableZshIntegration

+

Whether to enable zsh integration.

+

Type: +boolean

+

Default

+
true
+

kirk.git.enable

+

Whether to enable git.

+

Type: +boolean

+

Default

+
false
+

Example

+
true
+

kirk.git.userEmail

+

What email address to use for git.

+

Type: +string

+

kirk.git.userName

+

Username to use for git.

+

Type: +string

+

kirk.gruvbox.colorscheme

+

A definition for the gruvbox theme.

+

Type: +attribute set

+

Default

+
{"bg":"282828","black":"1d2021","blue":"458588","bright":{"black":"928374","blue":"83a598","green":"b8bb26","orange":"fe8019","purple":"d3869b","red":"fb4934","teal":"8ec07c","white":"fbf1c7","yellow":"fabd2f"},"fg":"ebdbb2","green":"98971a","orange":"d65d0e","purple":"b16286","red":"cc241d","teal":"689d6a","white":"d5c4a1","yellow":"d79921"}
+

kirk.helix.enable

+

Whether to enable helix text editor.

+

Type: +boolean

+

Default

+
false
+

Example

+
true
+

kirk.helix.extraPackages

+

Extra packages to install, for example LSP’s.

+

Type: +list of package

+

Default

+
[]
+

kirk.helix.installMostLsps

+

Whether or not to install most of the LSP’s that helix supports.

+

Type: +boolean

+

Default

+
true
+

kirk.homeManagerScripts.configDir

+

Path to the home-manager configuration.

+

Type: +null or path

+

Default

+
null
+

kirk.homeManagerScripts.enable

+

Whether to enable home manager scripts.

+

Type: +boolean

+

Default

+
false
+

Example

+
true
+

kirk.homeManagerScripts.machine

+

Path to the home-manager configuration.

+

Type: +null or string

+

kirk.jiten.dailyWord

+

Enable daily japanese word prompt.

+

Type: +boolean

+

Default

+
true
+

kirk.jiten.enable

+

Whether to enable jiten japanese dictionary.

+

Type: +boolean

+

Default

+
false
+

Example

+
true
+

kirk.joshuto.enable

+

Whether to enable joshuto file manager.

+

Type: +boolean

+

Default

+
false
+

Example

+
true
+

kirk.joshuto.enableZshIntegration

+

Adds the auto-cd j command to zsh.

+

Type: +boolean

+

Default

+
true
+

kirk.kakoune.enable

+

Whether to enable kakoune text editor.

+

Type: +boolean

+

Default

+
false
+

Example

+
true
+

kirk.ssh.enable

+

Whether to enable ssh with extra config.

+

Type: +boolean

+

Default

+
false
+

Example

+
true
+

kirk.ssh.identityPath

+

The directory containing the path to the identity file.

+

Type: +null or path

+

Default

+
null
+

kirk.terminalTools.autoUpdateTealdeer

+

Whether to auto-update tealdeer.

+

Type: +boolean

+

Default

+
true
+

kirk.terminalTools.enable

+

Whether to enable Quality of life terminal tools.

+

Type: +boolean

+

Default

+
false
+

Example

+
true
+

kirk.terminalTools.enableZshIntegration

+

Whether to enable zsh integration for bat.

+

Type: +boolean

+

Default

+
true
+

kirk.terminalTools.theme

+

What syntax highlighting colorscheme to use.

+

Type: +string

+

Default

+
"gruvbox-dark"
+

kirk.terminalTools.trashCleaner.enable

+

Enable the trash-cli cleanup script

+

Type: +boolean

+

Default

+
true
+

kirk.terminalTools.trashCleaner.persistance

+

How many days a file stays in trash before getting cleaned up.

+

Type: +signed integer or floating point number

+

Default

+
30
+

kirk.userDirs.autoSortDownloads

+

Whether or not to auto-sort downloads.

+

Type: +boolean

+

Default

+
true
+

kirk.userDirs.enable

+

Whether to enable userDirs.

+

Type: +boolean

+

Default

+
false
+

Example

+
true
+

kirk.zathura.colorscheme

+

A colorscheme attribute set.

+

Type: +attribute set

+

Default

+
{"bg":"282828","black":"1d2021","blue":"458588","bright":{"black":"928374","blue":"83a598","green":"b8bb26","orange":"fe8019","purple":"d3869b","red":"fb4934","teal":"8ec07c","white":"fbf1c7","yellow":"fabd2f"},"fg":"ebdbb2","green":"98971a","orange":"d65d0e","purple":"b16286","red":"cc241d","teal":"689d6a","white":"d5c4a1","yellow":"d79921"}
+

kirk.zathura.enable

+

Whether to enable foot terminal emulator.

+

Type: +boolean

+

Default

+
false
+

Example

+
true
+

kirk.zathura.enableKeyBindings

+

Whether or not to enable my keybindings.

+

Type: +boolean

+

Default

+
true
+

kirk.zsh.enable

+

Whether to enable zsh configuration..

+

Type: +boolean

+

Default

+
false
+

Example

+
true
+
+
+
+ +
+ +
+
+ + +
+
+
+ + +

+ By Rasmus Kirk, + 2023-12-07 +

+ + + + +
+
+ + + +
+ + + diff --git a/hugo/public/images/rice.svg b/hugo/public/images/rice.svg new file mode 100644 index 0000000..53e480c --- /dev/null +++ b/hugo/public/images/rice.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/hugo/public/index.html b/hugo/public/index.html new file mode 100644 index 0000000..996910e --- /dev/null +++ b/hugo/public/index.html @@ -0,0 +1,72 @@ + + + + + Option Documentation for Rasmus Kirk's Nix Modules – Option Documentation for Rasmus Kirk's Nix Modules + + + + + + + + + + + + + + + + + + + +
+ + + +
+ + +
+ +
+
+ + +
+
+
+
+
+ + + +
+ + + diff --git a/hugo/public/index.xml b/hugo/public/index.xml new file mode 100644 index 0000000..e955b08 --- /dev/null +++ b/hugo/public/index.xml @@ -0,0 +1,77 @@ + + + + Option Documentation for Rasmus Kirk's Nix Modules + https://rasmus-kirk.github.io/nix-modules/ + Recent content on Option Documentation for Rasmus Kirk's Nix Modules + Hugo -- gohugo.io + en-us + + Options Documentation + https://rasmus-kirk.github.io/nix-modules/home-manager/ + Thu, 07 Dec 2023 00:00:00 +0000 + + https://rasmus-kirk.github.io/nix-modules/home-manager/ + kirk.fonts.enable Whether to enable Enable my fonts, namely fira-code with nerdfonts. Note that this is required for kirk modules that use the nerdfont icons to function properly.. +Type: boolean +Default +false Example +true kirk.foot.alpha Alpha value of the foot terminal. +Type: floating point number +Default +0.85 kirk.foot.colorscheme A colorscheme attribute set. +Type: attribute set +Default +{"bg":"282828","black":"1d2021","blue":"458588","bright":{"black":"928374","blue":"83a598","green":"b8bb26","orange":"fe8019","purple":"d3869b","red":"fb4934","teal":"8ec07c","white":"fbf1c7","yellow":"fabd2f"},"fg":"ebdbb2","green":"98971a","orange":"d65d0e","purple":"b16286","red":"cc241d","teal":"689d6a","white":"d5c4a1","yellow":"d79921"} kirk.foot.enable Whether to enable foot terminal emulator. +Type: boolean +Default +false Example +true kirk.foot.enableKeyBindings Whether or not to enable my keybindings. + + + + Options Documentation + https://rasmus-kirk.github.io/nix-modules/nixos/ + Thu, 07 Dec 2023 00:00:00 +0000 + + https://rasmus-kirk.github.io/nix-modules/nixos/ + kirk.nixosScripts.configDir Path to the nixos configuration. +Type: path +Default +"/etc/nixos" kirk.nixosScripts.enable Whether to enable Nixos scripts +Required options: +machine . Type: boolean +Default +false Example +true kirk.nixosScripts.machine REQUIRED! The machine to run on. +Type: null or string +Default +null kirk.servarr.acmeMail REQUIRED! The ACME mail. +Type: null or string +Default +null kirk.servarr.domainName REQUIRED! The domain name to host jellyfin on. +Type: null or string +Default +null kirk.servarr.enable Whether to enable My servarr setup. + + + + + https://rasmus-kirk.github.io/nix-modules/test/ + Mon, 01 Jan 0001 00:00:00 +0000 + + https://rasmus-kirk.github.io/nix-modules/test/ + Nixos options Home manager options + + + + Options Documentation + https://rasmus-kirk.github.io/nix-modules/header/ + Mon, 01 Jan 0001 00:00:00 +0000 + + https://rasmus-kirk.github.io/nix-modules/header/ + + + + + diff --git a/hugo/public/nixos/index.html b/hugo/public/nixos/index.html new file mode 100644 index 0000000..714a106 --- /dev/null +++ b/hugo/public/nixos/index.html @@ -0,0 +1,268 @@ + + + + Options Documentation – Option Documentation for Rasmus Kirk's Nix Modules + + + + + + + + + + + + + + + + + + + +
+ + + +
+
+

Options Documentation

+
+ +
+

kirk.nixosScripts.configDir

+

Path to the nixos configuration.

+

Type: +path

+

Default

+
"/etc/nixos"
+

kirk.nixosScripts.enable

+

Whether to enable Nixos scripts

+

Required options:

+
    +
  • machine +.
  • +
+

Type: +boolean

+

Default

+
false
+

Example

+
true
+

kirk.nixosScripts.machine

+

REQUIRED! The machine to run on.

+

Type: +null or string

+

Default

+
null
+

kirk.servarr.acmeMail

+

REQUIRED! The ACME mail.

+

Type: +null or string

+

Default

+
null
+

kirk.servarr.domainName

+

REQUIRED! The domain name to host jellyfin on.

+

Type: +null or string

+

Default

+
null
+

kirk.servarr.enable

+

Whether to enable My servarr setup. Hosts Jellyfin on the given domain (remember domain +records/port forwarding) and hosts the following services on localhost +through a mullvad VPN:

+
    +
  • Prowlarr
  • +
  • Sonarr
  • +
  • Radarr
  • +
  • Flood/Rtorrnet
  • +
+

Required options for this module:

+
    +
  • domainName
  • +
  • acmeMail
  • +
  • mullvadAcc
  • +
+

Remember to read the options.

+

NOTE: The docker service to manage this executes the command docker container prune -f on startup for reproducibility, may cause issues +depending on your setup.

+

NOTE: This nixos module only supports the mullvad VPN, if you need +another VPN, create a PR or fork this repo! +.

+

Type: +boolean

+

Default

+
false
+

Example

+
true
+

kirk.servarr.gluetun.extraConfig

+

Extra config for the service.

+

Type: +attribute set

+

Default

+
{}
+

kirk.servarr.jellyfin.extraConfig

+

Extra config for the service.

+

Type: +attribute set

+

Default

+
{}
+

kirk.servarr.jellyfin.port

+

Port of Jellyfin.

+

Type: +16 bit unsigned integer; between 0 and 65535 (both inclusive)

+

Default

+
8096
+

kirk.servarr.mediaDir

+

The location of the media directory for the services.

+

Type: +path

+

Default

+
"~/servarr"
+

kirk.servarr.mullvadAcc

+

REQUIRED! The location the file containing your mullvad account key.

+

Type: +null or path

+

Default

+
null
+

kirk.servarr.prowlarr.extraConfig

+

Extra config for the service.

+

Type: +attribute set

+

Default

+
{}
+

kirk.servarr.prowlarr.port

+

Port of prowlarr.

+

Type: +16 bit unsigned integer; between 0 and 65535 (both inclusive)

+

Default

+
6002
+

kirk.servarr.radarr.extraConfig

+

Extra config for the service.

+

Type: +attribute set

+

Default

+
{}
+

kirk.servarr.radarr.port

+

Port of radarr.

+

Type: +16 bit unsigned integer; between 0 and 65535 (both inclusive)

+

Default

+
6004
+

kirk.servarr.rflood.extraConfig

+

Extra config for the service.

+

Type: +attribute set

+

Default

+
{}
+

kirk.servarr.rflood.port

+

Port of rflood.

+

Type: +16 bit unsigned integer; between 0 and 65535 (both inclusive)

+

Default

+
6001
+

kirk.servarr.rflood.ulimits.enable

+

Whether to enable Enable rtorrent ulimits. I had a bug that caused rtorrent to fail +and log std::bad_alloc. Setting ulimits for this service fixed +the issue. You probably don’t want to set this unless you have +similar issues.See link below for more info:

+

https://stackoverflow.com/questions/75536471/rtorrent-docker-container-failing-to-start-saying-stdbad-alloc +.

+

Type: +boolean

+

Default

+
false
+

Example

+
true
+

kirk.servarr.rflood.ulimits.hard

+

The hard limit.

+

Type: +unsigned integer, meaning >=0

+

Default

+
1024
+

kirk.servarr.rflood.ulimits.soft

+

The soft limit.

+

Type: +unsigned integer, meaning >=0

+

Default

+
1024
+

kirk.servarr.sonarr.extraConfig

+

Extra config for the service.

+

Type: +attribute set

+

Default

+
{}
+

kirk.servarr.sonarr.port

+

Port of sonarr.

+

Type: +16 bit unsigned integer; between 0 and 65535 (both inclusive)

+

Default

+
6003
+

kirk.servarr.stateDir

+

The location of the state directory for the services.

+

Type: +path

+

Default

+
"~/.local/state"
+

kirk.servarr.timezone

+

Your timezone, used for logging purposes.

+

Type: +string

+

Default

+
"Etc/UTC"
+
+
+
+ +
+ +
+
+ + +
+
+
+ + +

+ By Rasmus Kirk, + 2023-12-07 +

+ + + + +
+
+ + + +
+ + + diff --git a/hugo/public/sitemap.xml b/hugo/public/sitemap.xml new file mode 100644 index 0000000..6a24c05 --- /dev/null +++ b/hugo/public/sitemap.xml @@ -0,0 +1,22 @@ + + + + https://rasmus-kirk.github.io/nix-modules/home-manager/ + 2023-12-07T00:00:00+00:00 + + https://rasmus-kirk.github.io/nix-modules/nixos/ + 2023-12-07T00:00:00+00:00 + + https://rasmus-kirk.github.io/nix-modules/test/ + 0 + + https://rasmus-kirk.github.io/nix-modules/categories/ + + https://rasmus-kirk.github.io/nix-modules/ + + https://rasmus-kirk.github.io/nix-modules/header/ + + https://rasmus-kirk.github.io/nix-modules/tags/ + + diff --git a/hugo/public/tags/index.html b/hugo/public/tags/index.html new file mode 100644 index 0000000..2c65c6e --- /dev/null +++ b/hugo/public/tags/index.html @@ -0,0 +1,78 @@ + + + + Tags – Option Documentation for Rasmus Kirk's Nix Modules + + + + + + + + + + + + + + + + + + + +
+ + + +
+

Tags

+ + + +
    + +
+ + +
+ +
+
+ + +
+
+
+
+
+ + + +
+ + + diff --git a/hugo/public/tags/index.xml b/hugo/public/tags/index.xml new file mode 100644 index 0000000..e37866b --- /dev/null +++ b/hugo/public/tags/index.xml @@ -0,0 +1,10 @@ + + + + Tags on Option Documentation for Rasmus Kirk's Nix Modules + https://rasmus-kirk.github.io/nix-modules/tags/ + Recent content in Tags on Option Documentation for Rasmus Kirk's Nix Modules + Hugo -- gohugo.io + en-us + + diff --git a/hugo/public/test/index.html b/hugo/public/test/index.html new file mode 100644 index 0000000..cc8f13d --- /dev/null +++ b/hugo/public/test/index.html @@ -0,0 +1,85 @@ + + + + Option Documentation for Rasmus Kirk's Nix Modules + + + + + + + + + + + + + + + + + + + +
+ + + +
+
+

+
+ + +
+ +
+ +
+
+ + +
+
+
+ + + + + +
+
+ + + +
+ + + diff --git a/hugo/themes/risotto/.github/workflows/gh-pages.yml b/hugo/themes/risotto/.github/workflows/gh-pages.yml new file mode 100644 index 0000000..f3c4157 --- /dev/null +++ b/hugo/themes/risotto/.github/workflows/gh-pages.yml @@ -0,0 +1,36 @@ +name: github pages + +on: + push: + branches: + - main + pull_request: + +jobs: + deploy: + runs-on: ubuntu-latest + concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + steps: + - uses: actions/checkout@v2 + with: + fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod + path: risotto + + - name: Setup Hugo + uses: peaceiris/actions-hugo@v2 + with: + hugo-version: '0.85.0' + # extended: true + + - name: Build + working-directory: ./risotto/exampleSite + run: hugo --minify --themesDir="../.." -t risotto + + - name: Deploy + uses: peaceiris/actions-gh-pages@v3 + if: ${{ github.ref == 'refs/heads/main' }} + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./risotto/exampleSite/public + cname: risotto.joeroe.io diff --git a/hugo/themes/risotto/.gitignore b/hugo/themes/risotto/.gitignore new file mode 100644 index 0000000..2a8645f --- /dev/null +++ b/hugo/themes/risotto/.gitignore @@ -0,0 +1 @@ +.hugo_build.lock diff --git a/hugo/themes/risotto/LICENSE b/hugo/themes/risotto/LICENSE new file mode 100644 index 0000000..5c93805 --- /dev/null +++ b/hugo/themes/risotto/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) 2021 Joe Roe + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/hugo/themes/risotto/NEWS.md b/hugo/themes/risotto/NEWS.md new file mode 100644 index 0000000..a9017be --- /dev/null +++ b/hugo/themes/risotto/NEWS.md @@ -0,0 +1,22 @@ +# risotto (development version) + +# risotto 0.2.0 + +* **Breaking change** – new framework for colour palettes: + * Palettes are defined using CSS variables following the [base16](https://github.com/chriskempson/base16) system + * Added 14 new palettes: `apprentice`, `base16-dark`, `base16-light`, `dracula`, `material`, `papercolor-dark`, `papercolor-light`, `solarized-dark`, `solarized-light`, `tender`, `tokyo-night-dark`, `tokyo-night-light`, `windows-95` and `windows-95-light`. + * The default palette is `base16-dark` + * The `mode` parameter is no longer needed + * If you were using one of the old named palettes (`gruvbox-dark` or `gruvbox-light`), the change will be seamless. + * If you were using a custom palette, you will need to redefine it using the new framework. See README for further details. +* Added a table of contents (thanks @dashv, #47) +* Added multilanguage support with a language switcher (thanks @bedefaced) +* Made the site header and nav wrap more efficiently on narrow screens (thanks @m-dev672, #32) +* Added a changelog + +# risotto 0.1.0 + +First named release, including: + +* `gruvbox-dark` and `gruvbox-light` colour palettes +* FontAwesome6 and Academicons icon sets diff --git a/hugo/themes/risotto/README.md b/hugo/themes/risotto/README.md new file mode 100644 index 0000000..c86c0ee --- /dev/null +++ b/hugo/themes/risotto/README.md @@ -0,0 +1,74 @@ +# risotto + +risotto is a minimalist, responsive [hugo](https://gohugo.io) theme inspired by terminal ricing aesthetics. + +![Screenshot of the risotto theme](https://raw.githubusercontent.com/joeroe/risotto/master/images/screenshot.png) + +## Install + +The easiest way to install the theme is to clone this repository into your site's `themes` directory: + +```shell +git clone https://github.com/joeroe/risotto themes/risotto +``` + +If your site is already a git repository, you can add the theme as a submodule instead: + +```shell +git submodule add https://github.com/joeroe/risotto.git themes/risotto +``` + +## Update + +If you installed the theme using `git clone`, pull the repository to get the latest version: + +```shell +cd themes/risotto +git pull +``` + +Or, if you added it as a git submodule: + +```shell +git submodule update --remote +``` + +## Configure + +To use the theme, add `theme = 'risotto'` to your site's `config.toml`, or `theme: risotto` to your `config.yaml` respectively. + +See `exampleSite/config.toml` for the theme-specific parameters you need to add to your site's `config.toml` or `config.yaml` to configure the theme. + +### Colour palettes + +risotto uses the [base16 framework](https://github.com/chriskempson/base16) to define colour schemes that can be used with the `theme.palette` parameter. +A selection of 16 palettes (10 dark, 6 light) are bundled with the theme: `apprentice`, `base16-dark`, `base16-light`, `dracula`, `gruvbox-dark`, `gruvbox-light`, `material`, `papercolor-dark`, `papercolor-light`, `solarized-dark`, `solarized-light`, `tender`, `tokyo-night-dark`, `tokyo-night-light`, `windows-95` and `windows-95-light`. +The default is `base16-dark`. + + + +The easiest way to use other base16 styles is to place .css file from https://github.com/monicfenga/base16-styles/tree/master/css-variables and place it in your `static/css/palettes` directory. + +Or to define a wholly custom theme, you will need to define the following CSS variables for the following base16 colours (see [base16-dark.css](blob/main/static/css/palettes/base16-dark.css) for an example): + +| Base | Default colour | Used for | Examples | +| ---- | -------------- | -------- | -------- | +| 00 | Dark | Background | Page background | +| 01 | │ | Alt. background | Content background | +| 02 | │ | In-text backgrounds | `
`, ``, ``, `` |
+| 03   | │              | Muted text | `:before` & `:marker` symbols |
+| 04   | │              | Alt. foreground | Aside text          |
+| 05   | │              | Foreground         | Content text         |
+| 06   | │              |          |          |
+| 07   | Light          |          |          |
+| 08   | Red            |          |          |
+| 09   | Orange         |          |          |
+| 0A   | Yellow         | Highlights | Selected text, `` |
+| 0B   | Green          | Primary accent | Logo          |
+| 0C   | Cyan           | Active links | `a:active`, `a:hover`         |
+| 0D   | Blue           | Links    | `a:link`, `a:visited`         |
+| 0E   | Magenta        |          |          |
+| 0F   | Brown          |          |          |
+
+For light mode palettes, the sequence of 00–07 should be reversed (light to dark, not dark to light).
+Note that not all colours are currently used in the theme.
diff --git a/hugo/themes/risotto/archetypes/default.md b/hugo/themes/risotto/archetypes/default.md
new file mode 100644
index 0000000..ac36e06
--- /dev/null
+++ b/hugo/themes/risotto/archetypes/default.md
@@ -0,0 +1,2 @@
++++
++++
diff --git a/hugo/themes/risotto/config.toml b/hugo/themes/risotto/config.toml
new file mode 100644
index 0000000..7c79705
--- /dev/null
+++ b/hugo/themes/risotto/config.toml
@@ -0,0 +1,3 @@
+[module]
+  [module.hugoVersion]
+    min = "0.41.0"
diff --git a/hugo/themes/risotto/exampleSite/LICENSE b/hugo/themes/risotto/exampleSite/LICENSE
new file mode 100644
index 0000000..4527efb
--- /dev/null
+++ b/hugo/themes/risotto/exampleSite/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2014 Steve Francia
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
\ No newline at end of file
diff --git a/hugo/themes/risotto/exampleSite/config.toml b/hugo/themes/risotto/exampleSite/config.toml
new file mode 100644
index 0000000..be7f40c
--- /dev/null
+++ b/hugo/themes/risotto/exampleSite/config.toml
@@ -0,0 +1,100 @@
+baseURL = "https://risotto.joeroe.io"
+theme = "risotto"
+title = "risotto demo"
+author = "Joe Roe"
+copyright = "© 2021–2022 [Joe Roe](https://joeroe.io) & [risotto contributors](https://github.com/joeroe/risotto/graphs/contributors)."
+paginate = 3
+languageCode = "en"
+DefaultContentLanguage = "en"
+enableInlineShortcodes = true
+# prevent build failures when using Hugo's Instagram shortcode due to deprecated Instagram API.
+# See https://github.com/gohugoio/hugo/issues/7228#issuecomment-714490456
+ignoreErrors = ["error-remote-getjson"]
+
+# Automatically add content sections to main menu
+sectionPagesMenu = "main"
+
+[params]
+noindex = false
+
+[params.theme]
+palette = "base16-dark"
+
+# Sidebar: about/bio
+[params.about]
+title = "risotto"
+description = "A [hugo](https://gohugo.io) theme inspired by terminal ricing."
+logo = "images/rice.svg"
+
+# Sidebar: social links
+# Available icon sets:
+# * FontAwesome 6  ('fa-brands', 'fa-normal', or 'fa-solid' for brands)
+# * Academicons  ('ai ai-')
+
+[[params.socialLinks]]
+icon = "fa-brands fa-github"
+title = "GitHub"
+url = "https://github.com/joeroe/risotto"
+
+[[params.socialLinks]]
+icon = "fa-solid fa-envelope"
+title = "Email"
+url = "mailto:example@example.com"
+
+[[params.socialLinks]]
+icon = "ai ai-orcid"
+title = "ORCID"
+url = "https://orcid.org/0000-0001-2345-6789"
+
+[menu]
+
+  [[menu.main]]
+    identifier = "about"
+    name = "About"
+    url = "/about/"
+    weight = 10
+
+[taxonomies]
+category = "categories"
+tag = "tags"
+series = "series"
+
+# For hugo >= 0.60.0, enable inline HTML
+[markup.goldmark.renderer]
+unsafe = true
+
+[markup]
+
+  # Table of contents
+  # Add toc = true to content front matter to enable
+  [markup.tableOfContents]
+    startLevel = 2
+    endLevel   = 3
+    ordered    = true
+
+[privacy]
+
+  [privacy.vimeo]
+    disabled = false
+    simple = true
+
+  [privacy.twitter]
+    disabled = false
+    enableDNT = true
+    simple = true
+
+  [privacy.instagram]
+    disabled = false
+    simple = true
+
+  [privacy.youtube]
+    disabled = false
+    privacyEnhanced = true
+
+[services]
+
+  [services.instagram]
+    disableInlineCSS = true
+
+  [services.twitter]
+    disableInlineCSS = true
diff --git a/hugo/themes/risotto/exampleSite/configTaxo.toml b/hugo/themes/risotto/exampleSite/configTaxo.toml
new file mode 100644
index 0000000..9220fcf
--- /dev/null
+++ b/hugo/themes/risotto/exampleSite/configTaxo.toml
@@ -0,0 +1,27 @@
+timeout = 30000
+enableInlineShortcodes = true
+
+[taxonomies]
+category = "categories"
+tag = "tags"
+series = "series"
+
+[privacy]
+
+  [privacy.vimeo]
+    disabled = false
+    simple = true
+
+  [privacy.twitter]
+    disabled = false
+    enableDNT = true
+    simple = true
+    disableInlineCSS = true
+
+  [privacy.instagram]
+    disabled = false
+    simple = true
+
+  [privacy.youtube]
+    disabled = false
+    privacyEnhanced = true
diff --git a/hugo/themes/risotto/exampleSite/content/_index.md b/hugo/themes/risotto/exampleSite/content/_index.md
new file mode 120000
index 0000000..fe84005
--- /dev/null
+++ b/hugo/themes/risotto/exampleSite/content/_index.md
@@ -0,0 +1 @@
+../../README.md
\ No newline at end of file
diff --git a/hugo/themes/risotto/exampleSite/content/_index.md.old b/hugo/themes/risotto/exampleSite/content/_index.md.old
new file mode 100644
index 0000000..ed6494b
--- /dev/null
+++ b/hugo/themes/risotto/exampleSite/content/_index.md.old
@@ -0,0 +1,3 @@
++++
+author = "Hugo Authors"
++++
diff --git a/hugo/themes/risotto/exampleSite/content/about.md b/hugo/themes/risotto/exampleSite/content/about.md
new file mode 100644
index 0000000..b31bf1d
--- /dev/null
+++ b/hugo/themes/risotto/exampleSite/content/about.md
@@ -0,0 +1,25 @@
++++
+title = "About"
+description = "Hugo, the world's fastest framework for building websites"
+date = "2019-02-28"
+aliases = ["about-us", "about-hugo", "contact"]
+author = "Hugo Authors"
++++
+
+Written in Go, Hugo is an open source static site generator available under the [Apache Licence 2.0.](https://github.com/gohugoio/hugo/blob/master/LICENSE) Hugo supports TOML, YAML and JSON data file types, Markdown and HTML content files and uses shortcodes to add rich content. Other notable features are taxonomies, multilingual mode, image processing, custom output formats, HTML/CSS/JS minification and support for Sass SCSS workflows.
+
+Hugo makes use of a variety of open source projects including:
+
+* https://github.com/yuin/goldmark
+* https://github.com/alecthomas/chroma
+* https://github.com/muesli/smartcrop
+* https://github.com/spf13/cobra
+* https://github.com/spf13/viper
+
+Hugo is ideal for blogs, corporate websites, creative portfolios, online magazines, single page applications or even a website with thousands of pages.
+
+Hugo is for people who want to hand code their own website without worrying about setting up complicated runtimes, dependencies and databases.
+
+Websites built with Hugo are extremely fast, secure and can be deployed anywhere including, AWS, GitHub Pages, Heroku, Netlify and any other hosting provider.
+
+Learn more and contribute on [GitHub](https://github.com/gohugoio).
diff --git a/hugo/themes/risotto/exampleSite/content/archives.md b/hugo/themes/risotto/exampleSite/content/archives.md
new file mode 100644
index 0000000..db16eed
--- /dev/null
+++ b/hugo/themes/risotto/exampleSite/content/archives.md
@@ -0,0 +1,5 @@
+---
+date: 2019-05-28
+type: section
+layout: "archives"
+---
diff --git a/hugo/themes/risotto/exampleSite/content/homepage/about.md b/hugo/themes/risotto/exampleSite/content/homepage/about.md
new file mode 100644
index 0000000..b5d6981
--- /dev/null
+++ b/hugo/themes/risotto/exampleSite/content/homepage/about.md
@@ -0,0 +1,7 @@
+---
+title: 'Our Difference'
+button: 'About us'
+weight: 2
+---
+
+Lorem ipsum dolor sit amet, et essent mediocritatem quo, choro volumus oporteat an mei. Ipsum dolor sit amet, et essent mediocritatem quo.
diff --git a/hugo/themes/risotto/exampleSite/content/homepage/index.md b/hugo/themes/risotto/exampleSite/content/homepage/index.md
new file mode 100644
index 0000000..ca03031
--- /dev/null
+++ b/hugo/themes/risotto/exampleSite/content/homepage/index.md
@@ -0,0 +1,3 @@
+---
+headless: true
+---
diff --git a/hugo/themes/risotto/exampleSite/content/homepage/work.md b/hugo/themes/risotto/exampleSite/content/homepage/work.md
new file mode 100644
index 0000000..f99bc99
--- /dev/null
+++ b/hugo/themes/risotto/exampleSite/content/homepage/work.md
@@ -0,0 +1,7 @@
+---
+title: 'We Help Business Grow'
+button: 'Our Work'
+weight: 1
+---
+
+Lorem ipsum dolor sit amet, et essent mediocritatem quo, choro volumus oporteat an mei. Numquam dolores mel eu, mea docendi omittantur et, mea ea duis erat. Elit melius cu ius. Per ex novum tantas putant, ei his nullam aliquam apeirian. Aeterno quaestio constituto sea an, no eum intellegat assueverit.
diff --git a/hugo/themes/risotto/exampleSite/content/post/_index.md b/hugo/themes/risotto/exampleSite/content/post/_index.md
new file mode 100644
index 0000000..8a084d9
--- /dev/null
+++ b/hugo/themes/risotto/exampleSite/content/post/_index.md
@@ -0,0 +1,6 @@
++++
+aliases = ["posts", "articles", "blog", "showcase", "docs"]
+title = "Posts"
+author = "Hugo Authors"
+tags = ["index"]
++++
diff --git a/hugo/themes/risotto/exampleSite/content/post/emoji-support.md b/hugo/themes/risotto/exampleSite/content/post/emoji-support.md
new file mode 100644
index 0000000..dc3589a
--- /dev/null
+++ b/hugo/themes/risotto/exampleSite/content/post/emoji-support.md
@@ -0,0 +1,46 @@
++++
+author = "Hugo Authors"
+title = "Emoji Support"
+date = "2019-03-05"
+description = "Guide to emoji usage in Hugo"
+tags = [
+    "emoji",
+]
++++
+
+Emoji can be enabled in a Hugo project in a number of ways. 
+
+The [`emojify`](https://gohugo.io/functions/emojify/) function can be called directly in templates or [Inline Shortcodes](https://gohugo.io/templates/shortcode-templates/#inline-shortcodes). 
+
+To enable emoji globally, set `enableEmoji` to `true` in your site's [configuration](https://gohugo.io/getting-started/configuration/) and then you can type emoji shorthand codes directly in content files; e.g.
+
+

🙈 :see_no_evil: 🙉 :hear_no_evil: 🙊 :speak_no_evil:

+
+ +The [Emoji cheat sheet](http://www.emoji-cheat-sheet.com/) is a useful reference for emoji shorthand codes. + +*** + +**N.B.** The above steps enable Unicode Standard emoji characters and sequences in Hugo, however the rendering of these glyphs depends on the browser and the platform. To style the emoji you can either use a third party emoji font or a font stack; e.g. + +{{< highlight html >}} +.emoji { + font-family: Apple Color Emoji, Segoe UI Emoji, NotoColorEmoji, Segoe UI Symbol, Android Emoji, EmojiSymbols; +} +{{< /highlight >}} + +{{< css.inline >}} + +{{< /css.inline >}} diff --git a/hugo/themes/risotto/exampleSite/content/post/markdown-syntax.md b/hugo/themes/risotto/exampleSite/content/post/markdown-syntax.md new file mode 100644 index 0000000..06990d7 --- /dev/null +++ b/hugo/themes/risotto/exampleSite/content/post/markdown-syntax.md @@ -0,0 +1,148 @@ ++++ +author = "Hugo Authors" +title = "Markdown Syntax Guide" +date = "2019-03-11" +description = "Sample article showcasing basic Markdown syntax and formatting for HTML elements." +tags = [ + "markdown", + "css", + "html", +] +categories = [ + "themes", + "syntax", +] +series = ["Themes Guide"] +aliases = ["migrate-from-jekyl"] ++++ + +This article offers a sample of basic Markdown syntax that can be used in Hugo content files, also it shows whether basic HTML elements are decorated with CSS in a Hugo theme. + + +## Headings + +The following HTML `

`—`

` elements represent six levels of section headings. `

` is the highest section level while `

` is the lowest. + +# H1 +## H2 +### H3 +#### H4 +##### H5 +###### H6 + +## Paragraph + +Xerum, quo qui aut unt expliquam qui dolut labo. Aque venitatiusda cum, voluptionse latur sitiae dolessi aut parist aut dollo enim qui voluptate ma dolestendit peritin re plis aut quas inctum laceat est volestemque commosa as cus endigna tectur, offic to cor sequas etum rerum idem sintibus eiur? Quianimin porecus evelectur, cum que nis nust voloribus ratem aut omnimi, sitatur? Quiatem. Nam, omnis sum am facea corem alique molestrunt et eos evelece arcillit ut aut eos eos nus, sin conecerem erum fuga. Ri oditatquam, ad quibus unda veliamenimin cusam et facea ipsamus es exerum sitate dolores editium rerore eost, temped molorro ratiae volorro te reribus dolorer sperchicium faceata tiustia prat. + +Itatur? Quiatae cullecum rem ent aut odis in re eossequodi nonsequ idebis ne sapicia is sinveli squiatum, core et que aut hariosam ex eat. + +## Blockquotes + +The blockquote element represents content that is quoted from another source, optionally with a citation which must be within a `footer` or `cite` element, and optionally with in-line changes such as annotations and abbreviations. + +#### Blockquote without attribution + +> Tiam, ad mint andaepu dandae nostion secatur sequo quae. +> **Note** that you can use *Markdown syntax* within a blockquote. + +#### Blockquote with attribution + +> Don't communicate by sharing memory, share memory by communicating.
+> — Rob Pike[^1] + +[^1]: The above quote is excerpted from Rob Pike's [talk](https://www.youtube.com/watch?v=PAAkCSZUG1c) during Gopherfest, November 18, 2015. + +## Tables + +Tables aren't part of the core Markdown spec, but Hugo supports supports them out-of-the-box. + + Name | Age +--------|------ + Bob | 27 + Alice | 23 + +#### Inline Markdown within tables + +| Italics | Bold | Code | +| -------- | -------- | ------ | +| *italics* | **bold** | `code` | + +## Code Blocks + +#### Code block with backticks + +```html + + + + + Example HTML5 Document + + +

Test

+ + +``` + +#### Code block indented with four spaces + + + + + + Example HTML5 Document + + +

Test

+ + + +#### Code block with Hugo's internal highlight shortcode +{{< highlight html >}} + + + + + Example HTML5 Document + + +

Test

+ + +{{< /highlight >}} + +## List Types + +#### Ordered List + +1. First item +2. Second item +3. Third item + +#### Unordered List + +* List item +* Another item +* And another item + +#### Nested list + +* Fruit + * Apple + * Orange + * Banana +* Dairy + * Milk + * Cheese + +## Other Elements — abbr, sub, sup, kbd, mark + +GIF is a bitmap image format. + +H2O + +Xn + Yn = Zn + +Press CTRL+ALT+Delete to end the session. + +Most salamanders are nocturnal, and hunt for insects, worms, and other small creatures. diff --git a/hugo/themes/risotto/exampleSite/content/post/math-typesetting.md b/hugo/themes/risotto/exampleSite/content/post/math-typesetting.md new file mode 100644 index 0000000..48fdc79 --- /dev/null +++ b/hugo/themes/risotto/exampleSite/content/post/math-typesetting.md @@ -0,0 +1,49 @@ +--- +author: Hugo Authors +title: Math Typesetting +date: 2019-03-08 +description: A brief guide to setup KaTeX +math: true +--- + +Mathematical notation in a Hugo project can be enabled by using third party JavaScript libraries. + + +In this example we will be using [KaTeX](https://katex.org/) + +- Create a partial under `/layouts/partials/math.html` +- Within this partial reference the [Auto-render Extension](https://katex.org/docs/autorender.html) or host these scripts locally. +- Include the partial in your templates like so: + +```bash +{{ if or .Params.math .Site.Params.math }} +{{ partial "math.html" . }} +{{ end }} +``` + +- To enable KaTex globally set the parameter `math` to `true` in a project's configuration +- To enable KaTex on a per page basis include the parameter `math: true` in content files + +**Note:** Use the online reference of [Supported TeX Functions](https://katex.org/docs/supported.html) + +{{< math.inline >}} +{{ if or .Page.Params.math .Site.Params.math }} + + + + +{{ end }} +{{}} + +### Examples + +{{< math.inline >}} +

+Inline math: \(\varphi = \dfrac{1+\sqrt5}{2}= 1.6180339887…\) +

+{{}} + +Block math: +$$ + \varphi = 1+\frac{1} {1+\frac{1} {1+\frac{1} {1+\cdots} } } +$$ diff --git a/hugo/themes/risotto/exampleSite/content/post/placeholder-text.md b/hugo/themes/risotto/exampleSite/content/post/placeholder-text.md new file mode 100644 index 0000000..9ed5f69 --- /dev/null +++ b/hugo/themes/risotto/exampleSite/content/post/placeholder-text.md @@ -0,0 +1,45 @@ ++++ +author = "Hugo Authors" +title = "Placeholder Text" +date = "2019-03-09" +description = "Lorem Ipsum Dolor Si Amet" +tags = [ + "markdown", + "text", +] ++++ + +Lorem est tota propiore conpellat pectoribus de pectora summo. Redit teque digerit hominumque toris verebor lumina non cervice subde tollit usus habet Arctonque, furores quas nec ferunt. Quoque montibus nunc caluere tempus inhospita parcite confusaque translucet patri vestro qui optatis lumine cognoscere flos nubis! Fronde ipsamque patulos Dryopen deorum. + +1. Exierant elisi ambit vivere dedere +2. Duce pollice +3. Eris modo +4. Spargitque ferrea quos palude + +Rursus nulli murmur; hastile inridet ut ab gravi sententia! Nomine potitus silentia flumen, sustinet placuit petis in dilapsa erat sunt. Atria tractus malis. + +1. Comas hunc haec pietate fetum procerum dixit +2. Post torum vates letum Tiresia +3. Flumen querellas +4. Arcanaque montibus omnes +5. Quidem et + +# Vagus elidunt + + + +[The Van de Graaf Canon](https://en.wikipedia.org/wiki/Canons_of_page_construction#Van_de_Graaf_canon) + +## Mane refeci capiebant unda mulcebat + +Victa caducifer, malo vulnere contra dicere aurato, ludit regale, voca! Retorsit colit est profanae esse virescere furit nec; iaculi matertera et visa est, viribus. Divesque creatis, tecta novat collumque vulnus est, parvas. **Faces illo pepulere** tempus adest. Tendit flamma, ab opes virum sustinet, sidus sequendo urbis. + +Iubar proles corpore raptos vero auctor imperium; sed et huic: manus caeli Lelegas tu lux. Verbis obstitit intus oblectamina fixis linguisque ausus sperare Echionides cornuaque tenent clausit possit. Omnia putatur. Praeteritae refert ausus; ferebant e primus lora nutat, vici quae mea ipse. Et iter nil spectatae vulnus haerentia iuste et exercebat, sui et. + +Eurytus Hector, materna ipsumque ut Politen, nec, nate, ignari, vernum cohaesit sequitur. Vel **mitis temploque** vocatus, inque alis, *oculos nomen* non silvis corpore coniunx ne displicet illa. Crescunt non unus, vidit visa quantum inmiti flumina mortis facto sic: undique a alios vincula sunt iactata abdita! Suspenderat ego fuit tendit: luna, ante urbem Propoetides **parte**. + +{{< css.inline >}} + +{{< /css.inline >}} diff --git a/hugo/themes/risotto/exampleSite/content/post/rich-content.md b/hugo/themes/risotto/exampleSite/content/post/rich-content.md new file mode 100644 index 0000000..92b4b03 --- /dev/null +++ b/hugo/themes/risotto/exampleSite/content/post/rich-content.md @@ -0,0 +1,34 @@ ++++ +author = "Hugo Authors" +title = "Rich Content" +date = "2019-03-10" +description = "A brief description of Hugo Shortcodes" +tags = [ + "shortcodes", + "privacy", +] ++++ + +Hugo ships with several [Built-in Shortcodes](https://gohugo.io/content-management/shortcodes/#use-hugos-built-in-shortcodes) for rich content, along with a [Privacy Config](https://gohugo.io/about/hugo-and-gdpr/) and a set of Simple Shortcodes that enable static and no-JS versions of various social media embeds. + +--- + +## YouTube Privacy Enhanced Shortcode + +{{< youtube ZJthWmvUzzc >}} + +
+ +--- + +## Twitter Simple Shortcode + +{{< twitter_simple 1085870671291310081 >}} + +
+ +--- + +## Vimeo Simple Shortcode + +{{< vimeo_simple 48912912 >}} diff --git a/hugo/themes/risotto/exampleSite/layouts/.gitkeep b/hugo/themes/risotto/exampleSite/layouts/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/hugo/themes/risotto/exampleSite/static/.gitignore b/hugo/themes/risotto/exampleSite/static/.gitignore new file mode 100644 index 0000000..e69de29 diff --git a/hugo/themes/risotto/images/screenshot.png b/hugo/themes/risotto/images/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..475685fc779d4770836f15d177c7aebbd10f5e75 GIT binary patch literal 185696 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%0D3tpzyd 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 literal 0 HcmV?d00001 diff --git a/hugo/themes/risotto/images/tn.png b/hugo/themes/risotto/images/tn.png new file mode 100644 index 0000000000000000000000000000000000000000..2d0e3301946a72b26e349d3985c7c0b02d3de5cc GIT binary patch literal 158165 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

~C(eTl7o@$9oh-3r|W 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 + + + + {{- partial "head.html" . -}} + + + +
+ + + +
+ {{- block "main" . }}{{- end }} +
+ +
+
+ {{- partial "about.html" . -}} +
+
+
+ {{- block "aside" . }}{{- end }} +
+
+ +
+ {{- partial "footer.html" . -}} +
+ +
+ + + diff --git a/hugo/themes/risotto/layouts/_default/li.html b/hugo/themes/risotto/layouts/_default/li.html new file mode 100644 index 0000000..c85e091 --- /dev/null +++ b/hugo/themes/risotto/layouts/_default/li.html @@ -0,0 +1 @@ +
diff --git a/hugo/themes/risotto/layouts/_default/list.html b/hugo/themes/risotto/layouts/_default/list.html new file mode 100644 index 0000000..37742ef --- /dev/null +++ b/hugo/themes/risotto/layouts/_default/list.html @@ -0,0 +1,12 @@ +{{ define "main" }} +

{{ .Title | markdownify }}

+ + {{ .Content }} + +
    + {{ range .Pages }} + {{ .Render "li" }} + {{ end }} +
+ +{{ end }} diff --git a/hugo/themes/risotto/layouts/_default/single.html b/hugo/themes/risotto/layouts/_default/single.html new file mode 100644 index 0000000..77abf32 --- /dev/null +++ b/hugo/themes/risotto/layouts/_default/single.html @@ -0,0 +1,29 @@ +{{ define "main" }} +
+

{{ .Title | markdownify }}

+
+ {{ if .Params.toc }} + + {{ end }} +
+ {{ .Content }} +
+
+{{ end }} + +{{define "aside" }} + {{ if .Params.description }}

{{ .Params.description }}

{{ end }} + {{ if or (.Params.author) (.Params.date) }} +

+ {{ if .Params.author }}By {{ .Params.author }}{{ if .Date }}, {{ end }}{{ end }} + {{ if .Date }}{{ .Date.Format "2006-01-02" }}{{ end }} +

+ {{ end }} + + {{ if and (.Params.toc) (.TableOfContents) }} +
+ On this page: + {{ .TableOfContents }} + {{ end }} +{{ end }} diff --git a/hugo/themes/risotto/layouts/index.html b/hugo/themes/risotto/layouts/index.html new file mode 100644 index 0000000..c346e42 --- /dev/null +++ b/hugo/themes/risotto/layouts/index.html @@ -0,0 +1,4 @@ +{{ define "main" }} + {{ .Content }} +{{ end }} + diff --git a/hugo/themes/risotto/layouts/partials/about.html b/hugo/themes/risotto/layouts/partials/about.html new file mode 100644 index 0000000..6c6e1bc --- /dev/null +++ b/hugo/themes/risotto/layouts/partials/about.html @@ -0,0 +1,15 @@ +{{ with .Site.Params.about }} +
+ {{ with .logo }}{{ end }} +

{{ .title }}

+{{ with .description }}

{{ . | markdownify }}

{{ end }} +
+{{ end }} + + diff --git a/hugo/themes/risotto/layouts/partials/footer.html b/hugo/themes/risotto/layouts/partials/footer.html new file mode 100644 index 0000000..7ee6434 --- /dev/null +++ b/hugo/themes/risotto/layouts/partials/footer.html @@ -0,0 +1,3 @@ +{{- partial "lang.html" . -}} + + diff --git a/hugo/themes/risotto/layouts/partials/head.html b/hugo/themes/risotto/layouts/partials/head.html new file mode 100644 index 0000000..45673a5 --- /dev/null +++ b/hugo/themes/risotto/layouts/partials/head.html @@ -0,0 +1,17 @@ +{{ with .Title }}{{ . }} – {{end}}{{ .Site.Title }} +{{ with .Site.Params.about }}{{ end }} + + + +{{ if .Site.Params.noindex }} {{ end }} + + + + + + + + + + + diff --git a/hugo/themes/risotto/layouts/partials/header.html b/hugo/themes/risotto/layouts/partials/header.html new file mode 100644 index 0000000..45c46ce --- /dev/null +++ b/hugo/themes/risotto/layouts/partials/header.html @@ -0,0 +1,10 @@ + + diff --git a/hugo/themes/risotto/layouts/partials/lang.html b/hugo/themes/risotto/layouts/partials/lang.html new file mode 100644 index 0000000..43c93d4 --- /dev/null +++ b/hugo/themes/risotto/layouts/partials/lang.html @@ -0,0 +1,28 @@ +

+ {{ $siteLanguages := .Site.Languages }} + {{ $pageLang := .Page.Lang }} + + {{ $currentPage := . }} + {{ $pageName := "" }} + {{ range .Site.Menus.main }} + {{ if eq ($currentPage.Permalink) (.URL | absLangURL) }} + {{ $pageName = .Name }} + {{ end }} + {{ end }} + + {{ range .Page.AllTranslations }} + {{ $translation := .}} + {{ range $siteLanguages }} + {{ if eq $translation.Lang .Lang }} + {{ $selected := false }} + {{ if eq $pageLang .Lang }} +
$ echo $LANG
{{ .LanguageName }}

+ + {{ else }} +
export LANG={{ .LanguageName }}; ./{{ $pageName }}
+ {{ end }} + {{ end }} + {{ end }} + {{ end }} +

+

diff --git a/hugo/themes/risotto/layouts/post/list.html b/hugo/themes/risotto/layouts/post/list.html new file mode 100644 index 0000000..027e282 --- /dev/null +++ b/hugo/themes/risotto/layouts/post/list.html @@ -0,0 +1,22 @@ +{{ define "main" }} +
+

{{ .Title | markdownify }}

+ {{ .Content }} +
+ + {{ range .Pages }} + + {{ end }} +{{ end }} diff --git a/hugo/themes/risotto/static/css/about.css b/hugo/themes/risotto/static/css/about.css new file mode 100644 index 0000000..6c12ba4 --- /dev/null +++ b/hugo/themes/risotto/static/css/about.css @@ -0,0 +1,26 @@ +/* About/bio section */ +.about__logo { + height: 1.5rem; +} + +.about__title { + display: inline; + vertical-align: top; +} + +.about__title::before { + content: none; +} + +/* Social media links */ +.aside__social-links { + padding: 0; +} + +.aside__social-links li { + display: inline-block; +} + +.aside__social-links li::marker { + content: none; +} diff --git a/hugo/themes/risotto/static/css/colours.css b/hugo/themes/risotto/static/css/colours.css new file mode 100644 index 0000000..4326985 --- /dev/null +++ b/hugo/themes/risotto/static/css/colours.css @@ -0,0 +1,17 @@ +:root { + /* Background */ + --bg: var(--base00); + --off-bg: var(--base01); + --inner-bg: var(--base02); + + /* Text */ + --fg: var(--base05); + --off-fg: var(--base04); + --muted: var(--base03); + --link: var(--base0D); + --hover: var(--base0C); + --highlight: var(--base0A); + + /* Logo */ + --logo: var(--base0B); +} diff --git a/hugo/themes/risotto/static/css/custom.css b/hugo/themes/risotto/static/css/custom.css new file mode 100644 index 0000000..71949ed --- /dev/null +++ b/hugo/themes/risotto/static/css/custom.css @@ -0,0 +1 @@ +/* Override this file to customise the theme's CSS for your site */ diff --git a/hugo/themes/risotto/static/css/footer.css b/hugo/themes/risotto/static/css/footer.css new file mode 100644 index 0000000..3e84188 --- /dev/null +++ b/hugo/themes/risotto/static/css/footer.css @@ -0,0 +1,7 @@ +.page__footer { + color: var(--off-fg); +} + +.page__footer p { + margin: 0; +} diff --git a/hugo/themes/risotto/static/css/header.css b/hugo/themes/risotto/static/css/header.css new file mode 100644 index 0000000..cab735b --- /dev/null +++ b/hugo/themes/risotto/static/css/header.css @@ -0,0 +1,20 @@ +/* Main menu */ +.main-nav ul { + display: flex; + flex-flow: row wrap; + justify-content: flex-start; + margin: 0; + padding: 0 0 0.25rem 0; + gap: 0rem 1.5rem; +} + +.main-nav li { + padding-top: 0.25rem; + margin-left: 1rem; + text-transform: lowercase; +} + +.main-nav li::marker { + content: "./"; +} + diff --git a/hugo/themes/risotto/static/css/layout.css b/hugo/themes/risotto/static/css/layout.css new file mode 100644 index 0000000..d249166 --- /dev/null +++ b/hugo/themes/risotto/static/css/layout.css @@ -0,0 +1,57 @@ +/* 1rem = 16px by default */ + +.page { + max-width: 64rem; + margin: 1rem auto; + display: grid; + grid-template-areas: + "header" + "body" + "aside" + "footer"; + grid-template-columns: minmax(0, 1fr); /* https://css-tricks.com/preventing-a-grid-blowout/ */ + grid-row-gap: 2rem; +} + +@media (min-width: 45rem) { + .page { + grid-template-areas: + "header header" + "body aside" + "footer footer"; + grid-template-columns: minmax(0, 1fr) 15rem; + grid-column-gap: 2rem; + } +} + +/* Header */ +.page__header { + grid-area: header; + display: flex; +} + +.page__logo { + flex-shrink: 0; +} + +.page__nav { + flex-grow: 1; +} + +/* Body + aside */ +.page__body { + grid-area: body; + background-color: var(--off-bg); + box-shadow: 0 0 0 1rem var(--off-bg); + overflow-wrap: break-word; +} + +.page__aside { + grid-area: aside; + color: var(--off-fg); +} + +/* Footer */ +.page__footer { + grid-area: footer; +} diff --git a/hugo/themes/risotto/static/css/logo.css b/hugo/themes/risotto/static/css/logo.css new file mode 100644 index 0000000..368fff4 --- /dev/null +++ b/hugo/themes/risotto/static/css/logo.css @@ -0,0 +1,37 @@ +.page__logo { + padding: 0; + margin: 0; + font-weight: inherit; + color: var(--bg); +} + +.page__logo:before { + content: none; +} + +.page__logo-inner { + display: block; + background: var(--logo); + opacity: 0.90; + padding: 0.25rem; +} + +a.page__logo-inner:link, a.page__logo-inner:visited { + color: inherit; + text-decoration: inherit; +} + +a.page__logo-inner:hover, +a.page__logo-inner:active { + opacity: 1; +} + +.page__logo-inner:before { + content: "["; + color: var(--bg); +} + +.page__logo-inner:after { + content: "] $"; + color: var(--bg); +} diff --git a/hugo/themes/risotto/static/css/palettes/apprentice.css b/hugo/themes/risotto/static/css/palettes/apprentice.css new file mode 100644 index 0000000..303d1c7 --- /dev/null +++ b/hugo/themes/risotto/static/css/palettes/apprentice.css @@ -0,0 +1,20 @@ +/* Apprentice by romainl */ + +:root { + --base00: #262626; + --base01: #AF5F5F; + --base02: #5F875F; + --base03: #87875F; + --base04: #5F87AF; + --base05: #5F5F87; + --base06: #5F8787; + --base07: #6C6C6C; + --base08: #444444; + --base09: #FF8700; + --base0A: #87AF87; + --base0B: #FFFFAF; + --base0C: #87AFD7; + --base0D: #8787AF; + --base0E: #5FAFAF; + --base0F: #BCBCBC; +} \ No newline at end of file diff --git a/hugo/themes/risotto/static/css/palettes/base16-dark.css b/hugo/themes/risotto/static/css/palettes/base16-dark.css new file mode 100644 index 0000000..cb1ec1d --- /dev/null +++ b/hugo/themes/risotto/static/css/palettes/base16-dark.css @@ -0,0 +1,22 @@ +/* base16 default dark + * https://github.com/chriskempson/base16-default-schemes + */ + +:root { + --base00: #181818; + --base01: #282828; + --base02: #383838; + --base03: #585858; + --base04: #b8b8b8; + --base05: #d8d8d8; + --base06: #e8e8e8; + --base07: #f8f8f8; + --base08: #ab4642; + --base09: #dc9656; + --base0A: #f7ca88; + --base0B: #a1b56c; + --base0C: #86c1b9; + --base0D: #7cafc2; + --base0E: #ba8baf; + --base0F: #a16946; +} diff --git a/hugo/themes/risotto/static/css/palettes/base16-light.css b/hugo/themes/risotto/static/css/palettes/base16-light.css new file mode 100644 index 0000000..bcbbb5a --- /dev/null +++ b/hugo/themes/risotto/static/css/palettes/base16-light.css @@ -0,0 +1,22 @@ +/* base16 default light + * https://github.com/chriskempson/base16-default-schemes + */ + +:root { + --base00: #f8f8f8; + --base01: #e8e8e8; + --base02: #d8d8d8; + --base03: #b8b8b8; + --base04: #585858; + --base05: #383838; + --base06: #282828; + --base07: #181818; + --base08: #ab4642; + --base09: #dc9656; + --base0A: #f7ca88; + --base0B: #a1b56c; + --base0C: #86c1b9; + --base0D: #7cafc2; + --base0E: #ba8baf; + --base0F: #a16946; +} diff --git a/hugo/themes/risotto/static/css/palettes/dracula.css b/hugo/themes/risotto/static/css/palettes/dracula.css new file mode 100644 index 0000000..66f1abc --- /dev/null +++ b/hugo/themes/risotto/static/css/palettes/dracula.css @@ -0,0 +1,20 @@ +/* Dracula by Mike Barkmin (http://github.com/mikebarkmin) based on Dracula Theme (http://github.com/dracula) */ + +:root { + --base00: #282936; + --base01: #3a3c4e; + --base02: #4d4f68; + --base03: #626483; + --base04: #62d6e8; + --base05: #e9e9f4; + --base06: #f1f2f8; + --base07: #f7f7fb; + --base08: #ea51b2; + --base09: #b45bcf; + --base0A: #00f769; + --base0B: #ebff87; + --base0C: #a1efe4; + --base0D: #62d6e8; + --base0E: #b45bcf; + --base0F: #00f769; +} \ No newline at end of file diff --git a/hugo/themes/risotto/static/css/palettes/gruvbox-dark.css b/hugo/themes/risotto/static/css/palettes/gruvbox-dark.css new file mode 100644 index 0000000..1d60bd9 --- /dev/null +++ b/hugo/themes/risotto/static/css/palettes/gruvbox-dark.css @@ -0,0 +1,23 @@ +/* gruvbox dark + * https://github.com/morhetz/gruvbox + * base16: https://github.com/dawikur/base16-gruvbox-scheme + */ + +:root { + --base00: #282828; + --base01: #3c3836; + --base02: #504945; + --base03: #665c54; + --base04: #bdae93; + --base05: #d5c4a1; + --base06: #ebdbb2; + --base07: #fbf1c7; + --base08: #fb4934; + --base09: #fe8019; + --base0A: #fabd2f; + --base0B: #b8bb26; + --base0C: #8ec07c; + --base0D: #83a598; + --base0E: #d3869b; + --base0F: #d65d0e; +} diff --git a/hugo/themes/risotto/static/css/palettes/gruvbox-light.css b/hugo/themes/risotto/static/css/palettes/gruvbox-light.css new file mode 100644 index 0000000..f786cf0 --- /dev/null +++ b/hugo/themes/risotto/static/css/palettes/gruvbox-light.css @@ -0,0 +1,23 @@ +/* gruvbox light + * https://github.com/morhetz/gruvbox + * base16: https://github.com/dawikur/base16-gruvbox-scheme + */ + +:root { + --base00: #fbf1c7; + --base01: #ebdbb2; + --base02: #d5c4a1; + --base03: #bdae93; + --base04: #665c54; + --base05: #504945; + --base06: #3c3836; + --base07: #282828; + --base08: #9d0006; + --base09: #af3a03; + --base0A: #b57614; + --base0B: #79740e; + --base0C: #427b58; + --base0D: #076678; + --base0E: #8f3f71; + --base0F: #d65d0e; +} diff --git a/hugo/themes/risotto/static/css/palettes/material.css b/hugo/themes/risotto/static/css/palettes/material.css new file mode 100644 index 0000000..60bfafb --- /dev/null +++ b/hugo/themes/risotto/static/css/palettes/material.css @@ -0,0 +1,20 @@ +/* Material by Nate Peterson */ + +:root { + --base00: #263238; + --base01: #2E3C43; + --base02: #314549; + --base03: #546E7A; + --base04: #B2CCD6; + --base05: #EEFFFF; + --base06: #EEFFFF; + --base07: #FFFFFF; + --base08: #F07178; + --base09: #F78C6C; + --base0A: #FFCB6B; + --base0B: #C3E88D; + --base0C: #89DDFF; + --base0D: #82AAFF; + --base0E: #C792EA; + --base0F: #FF5370; +} \ No newline at end of file diff --git a/hugo/themes/risotto/static/css/palettes/papercolor-dark.css b/hugo/themes/risotto/static/css/palettes/papercolor-dark.css new file mode 100644 index 0000000..d289932 --- /dev/null +++ b/hugo/themes/risotto/static/css/palettes/papercolor-dark.css @@ -0,0 +1,20 @@ +/* PaperColor Dark by Jon Leopard (http://github.com/jonleopard) based on PaperColor Theme (https://github.com/NLKNguyen/papercolor-theme) */ + +:root { + --base00: #1c1c1c; + --base01: #af005f; + --base02: #5faf00; + --base03: #d7af5f; + --base04: #5fafd7; + --base05: #808080; + --base06: #d7875f; + --base07: #d0d0d0; + --base08: #585858; + --base09: #5faf5f; + --base0A: #afd700; + --base0B: #af87d7; + --base0C: #ffaf00; + --base0D: #ff5faf; + --base0E: #00afaf; + --base0F: #5f8787; +} \ No newline at end of file diff --git a/hugo/themes/risotto/static/css/palettes/papercolor-light.css b/hugo/themes/risotto/static/css/palettes/papercolor-light.css new file mode 100644 index 0000000..7eeb7f5 --- /dev/null +++ b/hugo/themes/risotto/static/css/palettes/papercolor-light.css @@ -0,0 +1,20 @@ +/* PaperColor Light by Jon Leopard (http://github.com/jonleopard) based on PaperColor Theme (https://github.com/NLKNguyen/papercolor-theme) */ + +:root { + --base00: #eeeeee; + --base01: #af0000; + --base02: #008700; + --base03: #5f8700; + --base04: #0087af; + --base05: #444444; + --base06: #005f87; + --base07: #878787; + --base08: #bcbcbc; + --base09: #d70000; + --base0A: #d70087; + --base0B: #8700af; + --base0C: #d75f00; + --base0D: #d75f00; + --base0E: #005faf; + --base0F: #005f87; +} \ No newline at end of file diff --git a/hugo/themes/risotto/static/css/palettes/solarized-dark.css b/hugo/themes/risotto/static/css/palettes/solarized-dark.css new file mode 100644 index 0000000..a646595 --- /dev/null +++ b/hugo/themes/risotto/static/css/palettes/solarized-dark.css @@ -0,0 +1,20 @@ +/* Solarized Dark by Ethan Schoonover (modified by aramisgithub) */ + +:root { + --base00: #002b36; + --base01: #073642; + --base02: #586e75; + --base03: #657b83; + --base04: #839496; + --base05: #93a1a1; + --base06: #eee8d5; + --base07: #fdf6e3; + --base08: #dc322f; + --base09: #cb4b16; + --base0A: #b58900; + --base0B: #859900; + --base0C: #2aa198; + --base0D: #268bd2; + --base0E: #6c71c4; + --base0F: #d33682; +} \ No newline at end of file diff --git a/hugo/themes/risotto/static/css/palettes/solarized-light.css b/hugo/themes/risotto/static/css/palettes/solarized-light.css new file mode 100644 index 0000000..dfb92c1 --- /dev/null +++ b/hugo/themes/risotto/static/css/palettes/solarized-light.css @@ -0,0 +1,20 @@ +/* Solarized Light by Ethan Schoonover (modified by aramisgithub) */ + +:root { + --base00: #fdf6e3; + --base01: #eee8d5; + --base02: #93a1a1; + --base03: #839496; + --base04: #657b83; + --base05: #586e75; + --base06: #073642; + --base07: #002b36; + --base08: #dc322f; + --base09: #cb4b16; + --base0A: #b58900; + --base0B: #859900; + --base0C: #2aa198; + --base0D: #268bd2; + --base0E: #6c71c4; + --base0F: #d33682; +} \ No newline at end of file diff --git a/hugo/themes/risotto/static/css/palettes/tender.css b/hugo/themes/risotto/static/css/palettes/tender.css new file mode 100644 index 0000000..77fbe87 --- /dev/null +++ b/hugo/themes/risotto/static/css/palettes/tender.css @@ -0,0 +1,20 @@ +/* tender by Jacobo Tabernero (https://github/com/jacoborus/tender.vim) */ + +:root { + --base00: #282828; + --base01: #383838; + --base02: #484848; + --base03: #4c4c4c; + --base04: #b8b8b8; + --base05: #eeeeee; + --base06: #e8e8e8; + --base07: #feffff; + --base08: #f43753; + --base09: #dc9656; + --base0A: #ffc24b; + --base0B: #c9d05c; + --base0C: #73cef4; + --base0D: #b3deef; + --base0E: #d3b987; + --base0F: #a16946; +} \ No newline at end of file diff --git a/hugo/themes/risotto/static/css/palettes/tokyo-night-dark.css b/hugo/themes/risotto/static/css/palettes/tokyo-night-dark.css new file mode 100644 index 0000000..760d2fe --- /dev/null +++ b/hugo/themes/risotto/static/css/palettes/tokyo-night-dark.css @@ -0,0 +1,20 @@ +/* Tokyo Night Dark by Michaël Ball */ + +:root { + --base00: #1A1B26; + --base01: #16161E; + --base02: #2F3549; + --base03: #444B6A; + --base04: #787C99; + --base05: #A9B1D6; + --base06: #CBCCD1; + --base07: #D5D6DB; + --base08: #C0CAF5; + --base09: #A9B1D6; + --base0A: #0DB9D7; + --base0B: #9ECE6A; + --base0C: #B4F9F8; + --base0D: #2AC3DE; + --base0E: #BB9AF7; + --base0F: #F7768E; +} \ No newline at end of file diff --git a/hugo/themes/risotto/static/css/palettes/tokyo-night-light.css b/hugo/themes/risotto/static/css/palettes/tokyo-night-light.css new file mode 100644 index 0000000..66e73c8 --- /dev/null +++ b/hugo/themes/risotto/static/css/palettes/tokyo-night-light.css @@ -0,0 +1,20 @@ +/* Tokyo Night Light by Michaël Ball */ + +:root { + --base00: #D5D6DB; + --base01: #CBCCD1; + --base02: #DFE0E5; + --base03: #9699A3; + --base04: #4C505E; + --base05: #343B59; + --base06: #1A1B26; + --base07: #1A1B26; + --base08: #343B58; + --base09: #965027; + --base0A: #166775; + --base0B: #485E30; + --base0C: #3E6968; + --base0D: #34548A; + --base0E: #5A4A78; + --base0F: #8C4351; +} \ No newline at end of file diff --git a/hugo/themes/risotto/static/css/palettes/windows-95-light.css b/hugo/themes/risotto/static/css/palettes/windows-95-light.css new file mode 100644 index 0000000..70cfeeb --- /dev/null +++ b/hugo/themes/risotto/static/css/palettes/windows-95-light.css @@ -0,0 +1,20 @@ +/* Windows 95 Light by Fergus Collins (https://github.com/C-Fergus) */ + +:root { + --base00: #fcfcfc; + --base01: #e0e0e0; + --base02: #c4c4c4; + --base03: #a8a8a8; + --base04: #7e7e7e; + --base05: #545454; + --base06: #2a2a2a; + --base07: #000000; + --base08: #a80000; + --base09: #fcfc54; + --base0A: #a85400; + --base0B: #00a800; + --base0C: #00a8a8; + --base0D: #0000a8; + --base0E: #a800a8; + --base0F: #54fc54; +} \ No newline at end of file diff --git a/hugo/themes/risotto/static/css/palettes/windows-95.css b/hugo/themes/risotto/static/css/palettes/windows-95.css new file mode 100644 index 0000000..5b44cf8 --- /dev/null +++ b/hugo/themes/risotto/static/css/palettes/windows-95.css @@ -0,0 +1,20 @@ +/* Windows 95 by Fergus Collins (https://github.com/C-Fergus) */ + +:root { + --base00: #000000; + --base01: #1C1C1C; + --base02: #383838; + --base03: #545454; + --base04: #7e7e7e; + --base05: #a8a8a8; + --base06: #d2d2d2; + --base07: #fcfcfc; + --base08: #fc5454; + --base09: #a85400; + --base0A: #fcfc54; + --base0B: #54fc54; + --base0C: #54fcfc; + --base0D: #5454fc; + --base0E: #fc54fc; + --base0F: #00a800; +} \ No newline at end of file diff --git a/hugo/themes/risotto/static/css/risotto.css b/hugo/themes/risotto/static/css/risotto.css new file mode 100644 index 0000000..dcb5a96 --- /dev/null +++ b/hugo/themes/risotto/static/css/risotto.css @@ -0,0 +1,12 @@ +@import 'colours.css'; +@import 'typography.css'; +@import 'layout.css'; +@import 'header.css'; +@import 'logo.css'; +@import 'about.css'; +@import 'footer.css'; + +body { + background-color: var(--bg); + color: var(--fg); +} diff --git a/hugo/themes/risotto/static/css/typography.css b/hugo/themes/risotto/static/css/typography.css new file mode 100644 index 0000000..6369cf0 --- /dev/null +++ b/hugo/themes/risotto/static/css/typography.css @@ -0,0 +1,215 @@ +/* Fonts */ +:root { + --font-monospace: "Fira Mono", monospace; +} + +body { + font-family: var(--font-monospace); + font-size: 16px; + line-height: 1.5rem; +} + +/* Headings */ +h1, +h2, +h3, +h4, +h5, +h6 { + font-size: 1rem; + margin: 1.5rem 0 0 0; + font-weight: 600; +} + +h1+h2, +h1+h3, +h1+h4, +h1+h5, +h1+h6, +h2+h3, +h2+h4, +h2+h5, +h2+h6, +h3+h4, +h3+h5, +h3+h6, +h4+h5, +h4+h6, +h5+h6 { + margin: 0; +} + +h1:before { content: "# "; } +h2:before { content: "## "; } +h3:before { content: "### "; } +h4:before { content: "#### "; } +h5:before { content: "##### "; } +h6:before { content: "###### "; } + +h1:before, +h2:before, +h3:before, +h4:before, +h5:before, +h6:before { + color: var(--muted); +} + +h1:first-child { + margin-top: 0; +} + +/* Paragraphs */ +p { + margin: 0 0 1.5rem 0; +} + +/* Links */ + +a:link, a:visited { + color: var(--link); +} + +a:hover, a:active, a.active { + color: var(--hover); +} + +/* Lists */ +ul { + margin: 0 0 1.5rem 0; + padding-left: 1.25rem; +} + +ol { + margin: 0 0 1.5rem 0; + padding-left: 1.75rem; +} + +ul ul, +ul ol, +ol ul, +ol ol { + margin: 0; +} + +ul li::marker { + content: '∗\00A0'; + color: var(--muted); +} + +ol li::marker { + color: var(--muted); +} + +dt { + margin: 0; + font-weight: bold; +} + +dd { + margin: 0 0 0 1.5rem; + font-style: italic; +} + +dd + dt { + margin-top: 1.5rem; +} + +dl { + margin: 0 0 1.5rem 0; +} + +/* Blockquotes */ +blockquote { + position: relative; + margin: 0 0 1.5rem 1.5rem; +} + +blockquote::before { + position: absolute; + left: -1.5rem; + content: ">"; + color: var(--muted); +} + +.twitter-tweet::before { + content: "\f099"; + font-family: "Font Awesome 5 Brands"; + font-weight: 400; +} + +/* Code */ +pre, +code, +kbd, +samp { + background: var(--inner-bg) !important; + font-family: var(--font-monospace); + color: var(--off-fg); +} + +pre { + overflow-x: auto; + padding: 1.5rem; + margin: 0 0 1.5rem 0; +} + +/* Emphasis */ +b, +strong { + font-weight: 600; +} + +/* Highlighting */ +::selection, +mark { + background-color: var(--highlight); + color: var(--bg); +} + +/* Other typographic elements */ +hr { + border: 0; + margin-bottom: 1.5rem; +} + +hr:after { + content: '---'; + color: var(--muted); +} + + +/* Prevent super/sub from affecting line height */ +sup, sub { + vertical-align: baseline; + position: relative; + top: -0.25rem; + font-size: unset; +} +sub { + top: 0.25rem; +} + +/* Tables */ +table { + border-spacing: 0; + margin: 0 0 1.5rem 0; + overflow-wrap: anywhere; +} +th, td { + padding: 0 .75rem; + vertical-align: top; +} +th:first-child, td:first-child { + padding-left: 0; +} +th { + text-align: inherit; +} + +/* Figures */ +img { + max-width: 100%; + height: auto; +} + diff --git a/hugo/themes/risotto/static/images/rice.svg b/hugo/themes/risotto/static/images/rice.svg new file mode 100644 index 0000000..53e480c --- /dev/null +++ b/hugo/themes/risotto/static/images/rice.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/hugo/themes/risotto/theme.toml b/hugo/themes/risotto/theme.toml new file mode 100644 index 0000000..265e16e --- /dev/null +++ b/hugo/themes/risotto/theme.toml @@ -0,0 +1,16 @@ +name = "risotto" +license = "MIT" +licenselink = "https://github.com/joeroe/risotto/blob/master/LICENSE" +description = "A minimalist, responsive theme inspired by terminal ricing aesthetics." + +homepage = "https://github.com/joeroe/risotto" +demosite = "https://risotto.joeroe.io" + +tags = ["responsive", "minimal", "dark mode"] +features = [] +min_version = "0.41.0" + +[author] + name = "Joe Roe" + homepage = "https://joeroe.io" + diff --git a/mkDocs.nix b/mkDocs.nix new file mode 100644 index 0000000..e744854 --- /dev/null +++ b/mkDocs.nix @@ -0,0 +1,65 @@ +{ + lib, + pkgs, + runCommand, + nixosOptionsDoc, + inputs, + ... +}: let + # Make sure the used package is scrubbed to avoid actually + # instantiating derivations. + # evaluate our options + evalHome = lib.evalModules { + # TODO: understand why pkgs needs to be passed here + specialArgs = {inherit pkgs;}; + modules = [ + { + # disabled checking that all option definitions have matching declarations + config._module.check = false; + } + inputs.home-manager.nixosModules.default + ./home-manager/fonts + ./home-manager/foot + ./home-manager/fzf + ./home-manager/git + ./home-manager/gruvboxTheme + ./home-manager/helix + ./home-manager/homeManagerScripts + ./home-manager/jiten + ./home-manager/joshuto + ./home-manager/kakoune + ./home-manager/ssh + ./home-manager/terminalTools + ./home-manager/userDirs + ./home-manager/zathura + ./home-manager/zsh + ]; + }; + # generate our docs + optionsDocHome = nixosOptionsDoc { + inherit (evalHome) options; + }; + + # Same for nixos + evalNixos = lib.evalModules { + specialArgs = {inherit pkgs;}; + modules = [ + { + config._module.check = false; + } + inputs.home-manager.nixosModules.default + ./nixos/servarr + ./nixos/nixosScripts + ]; + }; + optionsDocNixos = nixosOptionsDoc { + inherit (evalNixos) options; + }; + +in + # create a derivation for capturing the markdown output + runCommand "options-doc.md" {} '' + mkdir -p $out + cat ${optionsDocHome.optionsCommonMark} | tail -n +210 >> $out/home.md + cat ${optionsDocNixos.optionsCommonMark} | tail -n +210 >> $out/nixos.md + '' diff --git a/mkHugo.nix b/mkHugo.nix new file mode 100644 index 0000000..2660655 --- /dev/null +++ b/mkHugo.nix @@ -0,0 +1,12 @@ +{ pkgs, ... }: + + pkgs.writeShellApplication { + name = "my-script"; + runtimeInputs = with pkgs; [ hugo ]; + text = '' + cat hugo/content/header.md result/home.md | sed "s/DATE-TIMESTAMP/$(date -u +%Y-%m-%d)/g" > hugo/content/home-manager/index.md + cat hugo/content/header.md result/nixos.md | sed "s/DATE-TIMESTAMP/$(date -u +%Y-%m-%d)/g" > hugo/content/nixos/index.md + cd hugo + hugo + ''; + } diff --git a/servarr/default.nix b/servarr/default.nix new file mode 100644 index 0000000..c9ce46b --- /dev/null +++ b/servarr/default.nix @@ -0,0 +1,212 @@ +{ + config, + lib, + ... +}: +with lib; let + cfg = config.kirk.servarr; +in { + imports = [ + ./jellyfin + ./radarr + ./lidarr + ./readarr + ./sonarr + ./prowlarr + ./transmission + ]; + + options.kirk.servarr = { + enable = mkEnableOption '' + My servarr setup. Lets you host the servarr services optionally + through a VPN. It is possible, BUT NOT RECOMENDED, to have + prowlarr/sonarr/radarr/readarr/lidarr behind a VPN. Generally, you + should use VPN on transmission and maybe jellyfin, depending on your + setup. Also sets permissions and creates folders. + + - Jellyfin + - Lidarr + - Prowlarr + - Radarr + - Readarr + - Sonarr + - Transmission + + Remember to read the options. + ''; + + mediaUsers = mkOption { + type = with types; listOf str; + default = []; + description = "Extra users to add the the media group, giving access to the media directory. You probably want to add your own user here."; + }; + + mediaDir = mkOption { + type = types.path; + default = "/data/media"; + description = "The location of the media directory for the services."; + }; + + stateDir = mkOption { + type = types.path; + default = "/data/.state"; + description = "The location of the state directory for the services."; + }; + + upnp.enable = mkEnableOption "Enable automatic port forwarding using UPNP."; + + vpn = { + enable = mkEnableOption ''Enable vpn''; + + wgConf = mkOption { + type = types.nullOr types.path; + default = null; + description = "REQUIRED! The path to the wireguard configuration file."; + }; + + dnsServers = mkOption { + type = with types; nullOr (listOf str); + default = null; + description = lib.mdDoc '' + Extra DNS servers for the VPN. If your wg config has a DNS field, + then this should not be necessary. + ''; + example = [ "1.1.1.2" ]; + }; + + vpnTestService = { + enable = mkEnableOption "Enable the vpn test service."; + + port = mkOption { + type = types.port; + default = 12300; + description = lib.mdDoc '' + The port that the vpn test service listens to. + ''; + example = 58403; + }; + }; + + openTcpPorts = mkOption { + type = with types; listOf port; + default = []; + description = lib.mdDoc '' + What TCP ports to allow incoming traffic from. You might need this + if you're port forwarding on your VPN provider and you're setting + up services that is not covered in by this module. + ''; + example = [ 46382 38473 ]; + }; + + openUdpPorts = mkOption { + type = with types; listOf port; + default = []; + description = lib.mdDoc '' + What UDP ports to allow incoming traffic from. You might need this + if you're port forwarding on your VPN provider and you're setting + up services that is not covered in by this module. + ''; + example = [ 46382 38473 ]; + }; + }; + }; + + config = mkIf cfg.enable { + users.groups = { + media = { + members = cfg.mediaUsers; + gid = 992; + }; + prowlarr = {}; + transmission = {}; + jellyfin = {}; + }; + # TODO: This is BAD. But seems necessary when using containers. + # The prefered solution is to just remove containerization. + # Look at https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/misc/ids.nix + users.users = { + jellyfin = { + isSystemUser = true; + uid = lib.mkForce 316; + }; + sonarr = { + isSystemUser = true; + group = "media"; + uid = lib.mkForce 274; + }; + radarr = { + isSystemUser = true; + group = "media"; + uid = lib.mkForce 275; + }; + lidarr = { + isSystemUser = true; + group = "media"; + uid = lib.mkForce 306; + }; + readarr = { + isSystemUser = true; + group = "media"; + uid = lib.mkForce 309; + }; + transmission = { + isSystemUser = true; + group = "transmission"; + uid = lib.mkForce 70; + }; + prowlarr = { + isSystemUser = true; + group = "prowlarr"; + uid = lib.mkForce 293; + }; + }; + + systemd.tmpfiles.rules = [ + # State dirs + "d '${cfg.stateDir}' 0755 root root - -" + "d '${cfg.stateDir}/servarr' 0755 root root - -" + "d '${cfg.stateDir}/servarr/jellyfin' 0700 jellyfin root - -" + "d '${cfg.stateDir}/servarr/transmission' 0700 transmission root - -" + "d '${cfg.stateDir}/servarr/sonarr' 0700 sonarr root - -" + "d '${cfg.stateDir}/servarr/radarr' 0700 radarr root - -" + "d '${cfg.stateDir}/servarr/readarr' 0700 readarr root - -" + "d '${cfg.stateDir}/servarr/lidarr' 0700 lidarr root - -" + "d '${cfg.stateDir}/servarr/prowlarr' 0700 prowlarr root - -" + + # Media dirs + "d '${cfg.mediaDir}' 0775 root media - -" + "d '${cfg.mediaDir}/library' 0775 jellyfin media - -" + "d '${cfg.mediaDir}/library/series' 0775 jellyfin media - -" + "d '${cfg.mediaDir}/library/movies' 0775 jellyfin media - -" + "d '${cfg.mediaDir}/library/music' 0775 jellyfin media - -" + "d '${cfg.mediaDir}/library/books' 0775 jellyfin media - -" + "d '${cfg.mediaDir}/torrents' 0755 transmission media - -" + "d '${cfg.mediaDir}/torrents/.incomplete' 0755 transmission media - -" + "d '${cfg.mediaDir}/torrents/.watch' 0755 transmission media - -" + "d '${cfg.mediaDir}/torrents/manual' 0755 transmission media - -" + "d '${cfg.mediaDir}/torrents/liadarr' 0755 transmission media - -" + "d '${cfg.mediaDir}/torrents/radarr' 0755 transmission media - -" + "d '${cfg.mediaDir}/torrents/sonarr' 0755 transmission media - -" + "d '${cfg.mediaDir}/torrents/readarr' 0755 transmission media - -" + ]; + + kirk.upnp.enable = cfg.upnp.enable; + + kirk.vpnnamespace = { + enable = true; + accessibleFrom = [ + "192.168.1.0/24" + "127.0.0.1" + ]; + dnsServers = cfg.vpn.dnsServers; + wireguardAddressPath = cfg.vpn.wgAddress; + wireguardConfigFile = cfg.vpn.wgConf; + vpnTestService = { + enable = cfg.vpn.vpnTestService.enable; + port = cfg.vpn.vpnTestService.port; + }; + openTcpPorts = cfg.vpn.openTcpPorts; + openUdpPorts = cfg.vpn.openUdpPorts; + }; + }; +} diff --git a/servarr/jellyfin/default.nix b/servarr/jellyfin/default.nix new file mode 100644 index 0000000..5980d2c --- /dev/null +++ b/servarr/jellyfin/default.nix @@ -0,0 +1,137 @@ +{ + config, + lib, + ... +}: +with lib; let + cfg = config.kirk.servarr.jellyfin; + defaultPort = 8096; + servarr = config.kirk.servarr; +in { + options.kirk.servarr.jellyfin = { + enable = mkOption { + type = types.bool; + default = false; + description = lib.mdDoc "enable jellyfin"; + }; + + stateDir = mkOption { + type = types.path; + default = "${servarr.stateDir}/servarr/jellyfin"; + description = lib.mdDoc "The state directory for jellyfin"; + }; + + useVpn = mkOption { + type = types.bool; + default = false; + description = lib.mdDoc "Use VPN with prowlarr"; + }; + + nginx = { + enable = mkEnableOption "Enable nginx for jellyfin"; + + domainName = mkOption { + type = types.nullOr types.str; + default = null; + description = "REQUIRED! The domain name to host jellyfin on."; + }; + + acmeMail = mkOption { + type = types.nullOr types.str; + default = null; + description = "REQUIRED! The ACME mail."; + }; + }; + }; + + config = + #assert (!(cfg.useVpn && cfg.nginx.enable)) || abort "useVpn not compatible with nginx.enable."; + #assert (cfg.nginx.enable -> (cfg.nginx.domainName != null && cfg.nginx.acmeMail != null)) || abort "Both nginx.domain and nginx.acmeMail needs to be set if nginx.enable is set."; + mkIf cfg.enable + { + services.jellyfin.enable = cfg.enable; + + networking.firewall.allowedTCPPorts = if cfg.nginx.enable then [ + 80 # http + 443 # https + ] else []; + + services.nginx = mkIf (cfg.nginx.enable || cfg.useVpn) { + enable = true; + + recommendedTlsSettings = true; + recommendedOptimisation = true; + recommendedGzipSettings = true; + + virtualHosts."${builtins.replaceStrings ["\n"] [""] cfg.nginx.domainName}" = mkIf cfg.nginx.enable { + enableACME = true; + forceSSL = true; + locations."/" = { + recommendedProxySettings = true; + proxyWebsockets = true; + proxyPass = "http://127.0.0.1:${builtins.toString defaultPort}"; + }; + }; + + virtualHosts."127.0.0.1:${builtins.toString defaultPort}" = mkIf cfg.useVpn { + listen = [ + { + addr = "0.0.0.0"; + port = defaultPort; + } + ]; + locations."/" = { + recommendedProxySettings = true; + proxyWebsockets = true; + proxyPass = "http://192.168.15.1:${builtins.toString defaultPort}"; + }; + }; + }; + + security.acme = mkIf cfg.nginx.enable { + acceptTerms = true; + defaults.email = cfg.nginx.acmeMail; + }; + + kirk.vpnnamespace.portMappings = [( + mkIf cfg.useVpn { + From = defaultPort; + To = defaultPort; + } + )]; + + containers.jellyfin = mkIf cfg.useVpn { + autoStart = true; + ephemeral = true; + extraFlags = [ "--network-namespace-path=/var/run/netns/wg" ]; + + bindMounts = { + "${servarr.mediaDir}/library".isReadOnly = false; + "${cfg.stateDir}".isReadOnly = false; + }; + + config = { + users.groups.jellyfin = {}; + users.users.jellyfin = { + uid = lib.mkForce config.users.users.jellyfin.uid; + isSystemUser = true; + group = "jellyfin"; + }; + + # Use systemd-resolved inside the container + # Workaround for bug https://github.com/NixOS/nixpkgs/issues/162686 + networking.useHostResolvConf = lib.mkForce false; + services.resolved.enable = true; + networking.nameservers = dnsServers; + + services.jellyfin = { + enable = true; + group = "jellyfin"; + dataDir = "${cfg.stateDir}"; + }; + + system.stateVersion = "23.11"; + }; + }; + }; +} diff --git a/servarr/lidarr/default.nix b/servarr/lidarr/default.nix new file mode 100644 index 0000000..5052247 --- /dev/null +++ b/servarr/lidarr/default.nix @@ -0,0 +1,103 @@ +{ + config, + lib, + ... +}: +with lib; let + cfg = config.kirk.servarr.lidarr; + servarr = config.kirk.servarr; +in { + options.kirk.servarr.lidarr = { + enable = mkOption { + type = types.bool; + default = false; + description = lib.mdDoc "Enable lidarr"; + }; + + stateDir = mkOption { + type = types.path; + default = "${servarr.stateDir}/servarr/lidarr"; + description = lib.mdDoc "The state directory for lidarr"; + }; + + useVpn = mkOption { + type = types.bool; + default = false; + description = lib.mdDoc "Use VPN with prowlarr"; + }; + }; + + config = mkIf cfg.enable { + services.lidarr = { + enable = cfg.enable; + user = "lidarr"; + group = "media"; + dataDir = cfg.stateDir; + }; + + kirk.vpnnamespace.portMappings = [( + mkIf cfg.useVpn { + From = defaultPort; + To = defaultPort; + } + )]; + + containers.lidarr= mkIf cfg.useVpn { + autoStart = true; + ephemeral = true; + extraFlags = [ "--network-namespace-path=/var/run/netns/wg" ]; + + bindMounts = { + "${servarr.mediaDir}".isReadOnly = false; + "${cfg.stateDir}".isReadOnly = false; + }; + + config = { + users.groups.media = { + gid = config.users.groups.media.gid; + }; + users.users.lidarr = { + uid = lib.mkForce config.users.users.lidarr.uid; + isSystemUser = true; + group = "media"; + }; + + # Use systemd-resolved inside the container + # Workaround for bug https://github.com/NixOS/nixpkgs/issues/162686 + networking.useHostResolvConf = lib.mkForce false; + services.resolved.enable = true; + networking.nameservers = dnsServers; + + services.lidarr = { + enable = true; + group = "media"; + dataDir = "${cfg.stateDir}"; + }; + + system.stateVersion = "23.11"; + }; + }; + + services.nginx = mkIf cfg.useVpn { + enable = true; + + recommendedTlsSettings = true; + recommendedOptimisation = true; + recommendedGzipSettings = true; + + virtualHosts."127.0.0.1:${builtins.toString defaultPort}" = { + listen = [ + { + addr = "0.0.0.0"; + port = defaultPort; + } + ]; + locations."/" = { + recommendedProxySettings = true; + proxyWebsockets = true; + proxyPass = "http://192.168.15.1:${builtins.toString defaultPort}"; + }; + }; + }; + }; +} diff --git a/servarr/prowlarr/default.nix b/servarr/prowlarr/default.nix new file mode 100644 index 0000000..e219abd --- /dev/null +++ b/servarr/prowlarr/default.nix @@ -0,0 +1,106 @@ +# TODO: Dir creation and file permissions in nix +{ + pkgs, + config, + lib, + ... +}: +with lib; let + defaultPort = 9696; + dnsServers = config.kirk.vpnnamespace.dnsServer; + servarr = config.kirk.servarr; + cfg = config.kirk.servarr.prowlarr; +in { + options.kirk.servarr.prowlarr = { + enable = mkOption { + type = types.bool; + default = false; + description = lib.mdDoc "Enable prowlarr"; + }; + + stateDir = mkOption { + type = types.path; + default = "${servarr.stateDir}/servarr/prowlarr"; + description = lib.mdDoc '' + The state directory for prowlarr. Currently doesn't work, except with VPN. + ''; + }; + + useVpn = mkOption { + type = types.bool; + default = false; + description = lib.mdDoc "Use VPN with prowlarr"; + }; + }; + + config = mkIf cfg.enable { + services.prowlarr = mkIf (!cfg.useVpn) { + enable = true; + openFirewall = true; + }; + + kirk.vpnnamespace.portMappings = [( + mkIf cfg.useVpn { + From = defaultPort; + To = defaultPort; + } + )]; + + containers.prowlarr = mkIf cfg.useVpn { + autoStart = true; + ephemeral = true; + extraFlags = [ "--network-namespace-path=/var/run/netns/wg" ]; + + bindMounts = { + "/var/lib/prowlarr" = { + hostPath = cfg.stateDir; + isReadOnly = false; + }; + }; + + config = { + users.groups.prowlarr = {}; + users.users.prowlarr = { + uid = lib.mkForce config.users.users.prowlarr.uid; + isSystemUser = true; + group = "prowlarr"; + }; + + # Use systemd-resolved inside the container + # Workaround for bug https://github.com/NixOS/nixpkgs/issues/162686 + networking.useHostResolvConf = lib.mkForce false; + services.resolved.enable = true; + networking.nameservers = dnsServers; + + services.prowlarr = { + enable = true; + openFirewall = true; + }; + + system.stateVersion = "23.11"; + }; + }; + + services.nginx = mkIf cfg.useVpn { + enable = true; + + recommendedTlsSettings = true; + recommendedOptimisation = true; + recommendedGzipSettings = true; + + virtualHosts."127.0.0.1:${builtins.toString defaultPort}" = { + listen = [ + { + addr = "0.0.0.0"; + port = defaultPort; + } + ]; + locations."/" = { + recommendedProxySettings = true; + proxyWebsockets = true; + proxyPass = "http://192.168.15.1:${builtins.toString defaultPort}"; + }; + }; + }; + }; +} diff --git a/servarr/radarr/default.nix b/servarr/radarr/default.nix new file mode 100644 index 0000000..f0930b4 --- /dev/null +++ b/servarr/radarr/default.nix @@ -0,0 +1,108 @@ +# TODO: Dir creation and file permissions in nix +{ + pkgs, + config, + lib, + ... +}: +with lib; let + cfg = config.kirk.servarr.radarr; + defaultPort = 7878; + servarr = config.kirk.servarr; + dnsServers = config.kirk.vpnnamespace.dnsServers; +in { + options.kirk.servarr.radarr = { + enable = mkOption { + type = types.bool; + default = false; + description = lib.mdDoc "Enable radarr"; + }; + + stateDir = mkOption { + type = types.path; + default = "${servarr.stateDir}/servarr/radarr"; + description = lib.mdDoc "The state directory for radarr"; + }; + + useVpn = mkOption { + type = types.bool; + default = false; + description = lib.mdDoc "Use VPN with radarr"; + }; + }; + + config = mkIf cfg.enable { + services.radarr = mkIf (!cfg.useVpn) { + enable = cfg.enable; + user = "radarr"; + group = "media"; + dataDir = cfg.stateDir; + }; + + kirk.vpnnamespace.portMappings = [( + mkIf cfg.useVpn { + From = defaultPort; + To = defaultPort; + } + )]; + + containers.radarr= mkIf cfg.useVpn { + autoStart = true; + ephemeral = true; + extraFlags = [ "--network-namespace-path=/var/run/netns/wg" ]; + + bindMounts = { + "${servarr.mediaDir}".isReadOnly = false; + "${cfg.stateDir}".isReadOnly = false; + }; + + config = { + users.groups.media = { + gid = config.users.groups.media.gid; + }; + users.users.radarr = { + uid = lib.mkForce config.users.users.radarr.uid; + isSystemUser = true; + group = "media"; + }; + + # Use systemd-resolved inside the container + # Workaround for bug https://github.com/NixOS/nixpkgs/issues/162686 + networking.useHostResolvConf = lib.mkForce false; + services.resolved.enable = true; + networking.nameservers = dnsServers; + + services.radarr = { + enable = true; + group = "media"; + dataDir = cfg.stateDir; + }; + + system.stateVersion = "23.11"; + }; + }; + + services.nginx = mkIf cfg.useVpn { + enable = true; + + recommendedTlsSettings = true; + recommendedOptimisation = true; + recommendedGzipSettings = true; + + virtualHosts."127.0.0.1:${builtins.toString defaultPort}" = { + listen = [ + { + addr = "0.0.0.0"; + port = defaultPort; + } + ]; + locations."/" = { + recommendedProxySettings = true; + proxyWebsockets = true; + proxyPass = "http://192.168.15.1:${builtins.toString defaultPort}"; + }; + }; + }; + + }; +} diff --git a/servarr/readarr/default.nix b/servarr/readarr/default.nix new file mode 100644 index 0000000..575e6af --- /dev/null +++ b/servarr/readarr/default.nix @@ -0,0 +1,104 @@ +{ + config, + lib, + ... +}: +with lib; let + cfg = config.kirk.servarr.readarr; + servarr = config.kirk.servarr; +in { + options.kirk.servarr.readarr = { + enable = mkOption { + type = types.bool; + default = false; + description = lib.mdDoc "Enable readarr"; + }; + + stateDir = mkOption { + type = types.path; + default = "${servarr.stateDir}/servarr/readarr"; + description = lib.mdDoc "The state directory for readarr"; + }; + + useVpn = mkOption { + type = types.bool; + default = false; + description = lib.mdDoc "Use VPN with prowlarr"; + }; + }; + + config = mkIf cfg.enable { + services.readarr = { + enable = cfg.enable; + user = "readarr"; + group = "media"; + dataDir = cfg.stateDir; + }; + + kirk.vpnnamespace.portMappings = [( + mkIf cfg.useVpn { + From = defaultPort; + To = defaultPort; + } + )]; + + containers.readarr = mkIf cfg.useVpn { + autoStart = true; + ephemeral = true; + extraFlags = [ "--network-namespace-path=/var/run/netns/wg" ]; + + bindMounts = { + "${servarr.mediaDir}".isReadOnly = false; + "${cfg.stateDir}".isReadOnly = false; + }; + + config = { + users.groups.media = { + gid = config.users.groups.media.gid; + }; + users.users.readarr = { + uid = lib.mkForce config.users.users.readarr.uid; + isSystemUser = true; + group = "media"; + }; + + # Use systemd-resolved inside the container + # Workaround for bug https://github.com/NixOS/nixpkgs/issues/162686 + networking.useHostResolvConf = lib.mkForce false; + services.resolved.enable = true; + networking.nameservers = dnsServers; + + services.readarr = { + enable = true; + group = "media"; + dataDir = "${cfg.stateDir}"; + }; + + system.stateVersion = "23.11"; + }; + }; + + services.nginx = mkIf cfg.useVpn { + enable = true; + + recommendedTlsSettings = true; + recommendedOptimisation = true; + recommendedGzipSettings = true; + + virtualHosts."127.0.0.1:${builtins.toString defaultPort}" = { + listen = [ + { + addr = "0.0.0.0"; + port = defaultPort; + } + ]; + locations."/" = { + recommendedProxySettings = true; + proxyWebsockets = true; + proxyPass = "http://192.168.15.1:${builtins.toString defaultPort}"; + }; + }; + }; + + }; +} diff --git a/servarr/sonarr/default.nix b/servarr/sonarr/default.nix new file mode 100644 index 0000000..695489a --- /dev/null +++ b/servarr/sonarr/default.nix @@ -0,0 +1,109 @@ +# TODO: Dir creation and file permissions in nix +{ + pkgs, + config, + lib, + ... +}: +with lib; let + cfg = config.kirk.servarr.sonarr; + defaultPort = 8989; + servarr = config.kirk.servarr; + dnsServers = config.kirk.vpnnamespace.dnsServers; +in { + options.kirk.servarr.sonarr = { + enable = mkOption { + type = types.bool; + default = false; + description = lib.mdDoc "Enable sonarr"; + }; + + stateDir = mkOption { + type = types.path; + default = "${servarr.stateDir}/sonarr"; + description = lib.mdDoc "The state directory for sonarr"; + }; + + useVpn = mkOption { + type = types.bool; + default = false; + description = lib.mdDoc "Use VPN with sonarr"; + }; + }; + + config = mkIf cfg.enable { + services.sonarr = mkIf (!cfg.useVpn) { + enable = cfg.enable; + user = "sonarr"; + group = "media"; + dataDir = cfg.stateDir; + }; + + kirk.vpnnamespace.portMappings = [ + (mkIf cfg.useVpn { + From = defaultPort; + To = defaultPort; + }) + ]; + + containers.sonarr = mkIf cfg.useVpn { + autoStart = true; + ephemeral = true; + extraFlags = [ "--network-namespace-path=/var/run/netns/wg" ]; + + bindMounts = { + "${servarr.mediaDir}".isReadOnly = false; + "${cfg.stateDir}".isReadOnly = false; + }; + + config = { + users.groups.media = { + gid = config.users.groups.media.gid; + }; + users.users.sonarr = { + uid = lib.mkForce config.users.users.sonarr.uid; + isSystemUser = true; + group = "media"; + }; + + # Use systemd-resolved inside the container + # Workaround for bug https://github.com/NixOS/nixpkgs/issues/162686 + networking.useHostResolvConf = lib.mkForce false; + services.resolved.enable = true; + networking.nameservers = dnsServers; + + users.groups.media = {}; + + services.sonarr = { + enable = cfg.enable; + group = "media"; + dataDir = cfg.stateDir; + }; + + system.stateVersion = "23.11"; + }; + }; + + services.nginx = mkIf cfg.useVpn { + enable = true; + + recommendedTlsSettings = true; + recommendedOptimisation = true; + recommendedGzipSettings = true; + + virtualHosts."127.0.0.1:${builtins.toString defaultPort}" = { + listen = [ + { + addr = "0.0.0.0"; + port = defaultPort; + } + ]; + locations."/" = { + recommendedProxySettings = true; + proxyWebsockets = true; + proxyPass = "http://192.168.15.1:${builtins.toString defaultPort}"; + }; + }; + }; + }; +} diff --git a/servarr/transmission/default.nix b/servarr/transmission/default.nix new file mode 100644 index 0000000..ac07603 --- /dev/null +++ b/servarr/transmission/default.nix @@ -0,0 +1,220 @@ +# TODO: Dir creation and file permissions in nix +{ + config, + lib, + pkgs, + ... +}: +with lib; let + cfg = config.kirk.servarr.transmission; + servarr = config.kirk.servarr; + dnsServers = config.lib.vpn.dnsServers; +in { + options.kirk.servarr.transmission = { + enable = mkOption { + type = types.bool; + default = false; + description = lib.mdDoc "Enable transmission"; + }; + + stateDir = mkOption { + type = types.path; + default = "${servarr.stateDir}/servarr/transmission"; + description = lib.mdDoc "The state directory for transmission. Only works with useVpn option."; + }; + + downloadDir = mkOption { + type = types.path; + default = "${servarr.mediaDir}/torrents"; + description = lib.mdDoc '' + The directory for transmission to download to. + ''; + }; + + useVpn = mkOption { + type = types.bool; + default = false; + description = lib.mdDoc "Run transmission through VPN"; + }; + + useFlood = mkOption { + type = types.bool; + default = false; + description = lib.mdDoc "Use the flood UI"; + }; + + peerPort = mkOption { + type = types.port; + default = 50000; + description = "transmission peer traffic port."; + }; + + uiPort = mkOption { + type = types.port; + default = 9091; + description = "transmission web-UI port."; + }; + + extraConfig = mkOption { + type = types.attrs; + default = {}; + description = "Extra settings config for the transmission service."; + }; + }; + + config = mkIf cfg.enable { + services.transmission = mkIf (!cfg.useVpn) { + enable = true; + group = "media"; + #home = cfg.stateDir; + webHome = if cfg.useFlood then pkgs.flood-for-transmission else null; + package = pkgs.transmission_4; + openRPCPort = true; + openPeerPorts = true; + settings = { + download-dir = "${servarr.mediaDir}/torrents"; + incomplete-dir-enabled = true; + incomplete-dir = "${servarr.mediaDir}/torrents/.incomplete"; + watch-dir-enabled = true; + watch-dir = "${servarr.mediaDir}/torrents/.watch"; + + rpc-port = cfg.uiPort; + rpc-whitelist-enabled = true; + rpc-whitelist = "192.168.15.1,127.0.0.1"; + rpc-authentication-required = true; + + blocklist-enabled = true; + blocklist-url = "https://github.com/Naunter/BT_BlockLists/raw/master/bt_blocklists.gz"; + + encryption = 1; + utp-enabled = true; + port-forwarding-enabled = false; + + anti-brute-force-enabled = true; + anti-brute-force-threshold = 10; + } // cfg.extraConfig; + }; + + kirk.vpnnamespace = mkIf cfg.useVpn { + portMappings = [{ + From = cfg.uiPort; + To = cfg.uiPort; + }]; + openUdpPorts = [ cfg.peerPort ]; + openTcpPorts = [ cfg.peerPort ]; + }; + + containers.transmission = mkIf cfg.useVpn { + autoStart = true; + ephemeral = true; + extraFlags = [ "--network-namespace-path=/var/run/netns/wg" ]; + + bindMounts = { + "${servarr.mediaDir}/torrents".isReadOnly = false; + "/var/lib/transmission" = { + hostPath = cfg.stateDir; + isReadOnly = false; + }; + }; + + config = { + users.groups.media = { + gid = config.users.groups.media.gid; + }; + users.users.transmission = { + uid = lib.mkForce config.users.users.transmission.uid; + isSystemUser = true; + group = "media"; + }; + + # Use systemd-resolved inside the container + # Workaround for bug https://github.com/NixOS/nixpkgs/issues/162686 + networking.useHostResolvConf = lib.mkForce false; + services.resolved.enable = true; + networking.nameservers = dnsServers; + + systemd.services.transmission.serviceConfig = { + RootDirectoryStartOnly = lib.mkForce false; + RootDirectory = lib.mkForce ""; + }; + + services.transmission = { + enable = true; + # This is maybe wrong, too afraid to fix it lol + group = "media"; + webHome = if cfg.useFlood then pkgs.flood-for-transmission else null; + package = pkgs.transmission_4; + openRPCPort = true; + openPeerPorts = true; + settings = { + download-dir = "${servarr.mediaDir}/torrents"; + incomplete-dir-enabled = true; + incomplete-dir = "${servarr.mediaDir}/torrents/.incomplete"; + watch-dir-enabled = true; + watch-dir = "${servarr.mediaDir}/torrents/.watch"; + + rpc-bind-address = "192.168.15.1"; + rpc-port = cfg.uiPort; + rpc-whitelist-enabled = false; + rpc-whitelist = "192.168.15.1,127.0.0.1"; + rpc-authentication-required = false; + + blocklist-enabled = true; + blocklist-url = "https://github.com/Naunter/BT_BlockLists/raw/master/bt_blocklists.gz"; + + peer-port = cfg.peerPort; + dht-enabled = true; + pex-enabled = true; + utp-enabled = false; + encryption = 1; + port-forwarding-enabled = false; + + anti-brute-force-enabled = true; + anti-brute-force-threshold = 10; + + # 0 = None, 1 = Critical, 2 = Error, 3 = Warn, 4 = Info, 5 = Debug, 6 = Trace + message-level = 3; + } // cfg.extraConfig; + }; + + environment.systemPackages = with pkgs; [ + curl + wget + util-linux + unixtools.ping + coreutils + curl + bash + libressl + netcat-gnu + openresolv + dig + ]; + + system.stateVersion = "23.11"; + }; + }; + + services.nginx = mkIf cfg.useVpn { + enable = true; + + recommendedTlsSettings = true; + recommendedOptimisation = true; + recommendedGzipSettings = true; + + virtualHosts."127.0.0.1:${builtins.toString cfg.uiPort}" = { + listen = [ + { + addr = "0.0.0.0"; + port = cfg.uiPort; + } + ]; + locations."/" = { + recommendedProxySettings = true; + proxyWebsockets = true; + proxyPass = "http://192.168.15.1:${builtins.toString cfg.uiPort}"; + }; + }; + }; + }; +} diff --git a/util/upnp/default.nix b/util/upnp/default.nix new file mode 100644 index 0000000..fcdd40a --- /dev/null +++ b/util/upnp/default.nix @@ -0,0 +1,104 @@ +# TODO: Dir creation and file permissions in nix +{ + pkgs, + config, + lib, + ... +}: +with lib; let + cfg = config.kirk.upnp; +in { + options.kirk.upnp = { + enable = mkEnableOption "Enable port forwarding using UPNP."; + + openTcpPorts = mkOption { + type = with types; listOf port; + default = []; + description = lib.mdDoc '' + What TCP ports to open using UPNP. + ''; + example = [ 46382 38473 ]; + }; + + openUdpPorts = mkOption { + type = with types; listOf port; + default = []; + description = lib.mdDoc '' + What UDP ports to open using UPNP. + ''; + example = [ 46382 38473 ]; + }; + }; + + config = mkIf cfg.enable { + # UPNPC firewall access, if not set, then upnpc will fail with "No IGD + # UPnP Device found !" + # + # Alternatively, I also tried allowing all traffic from the router. But + # I assume that the official way is cleaner/more secure: + # ```nix + # networking.firewall.extraCommands = '' + # iptables -I INPUT -p udp -s 192.168.1.1 -j ACCEPT + # iptables -I OUTPUT -p udp -d 192.168.1.1 -j ACCEPT + # ''; + # ``` + # + # See: + # https://github.com/miniupnp/miniupnp/blob/8ced59d384de13689d3b1c32405bcb562030b241/miniupnpc/README + # + # TODO: Understand this properly + networking.firewall.extraCommands = '' + # Rules for IPv4: + ${pkgs.ipset}/bin/ipset -exist create upnp hash:ip,port timeout 3 + iptables -A OUTPUT -d 239.255.255.250/32 -p udp -m udp --dport 1900 -j SET --add-set upnp src,src --exist + iptables -A INPUT -p udp -m set --match-set upnp dst,dst -j ACCEPT + iptables -A INPUT -d 239.255.255.250/32 -p udp -m udp --dport 1900 -j ACCEPT + + # Rules for IPv6: + ${pkgs.ipset}/bin/ipset -exist create upnp6 hash:ip,port timeout 3 family inet6 + ip6tables -A OUTPUT -d ff02::c/128 -p udp -m udp --dport 1900 -j SET --add-set upnp6 src,src --exist + ip6tables -A OUTPUT -d ff05::c/128 -p udp -m udp --dport 1900 -j SET --add-set upnp6 src,src --exist + ip6tables -A INPUT -p udp -m set --match-set upnp6 dst,dst -j ACCEPT + ip6tables -A INPUT -d ff02::c/128 -p udp -m udp --dport 1900 -j ACCEPT + ip6tables -A INPUT -d ff05::c/128 -p udp -m udp --dport 1900 -j ACCEPT + ''; + + systemd = { + services.upnpc = let + upnp-ports = pkgs.writeShellApplication { + name = "upnp-ports"; + + runtimeInputs = with pkgs; [miniupnpc]; + + text = ( + strings.concatMapStrings (x: "upnpc -r ${builtins.toString x} UDP" + "\n") cfg.openUpdPorts ++ + strings.concatMapStrings (x: "upnpc -r ${builtins.toString x} TCP" + "\n") cfg.openTcpPorts ++ + ''echo "Successfully requested upnp ports to be opened".'' + ); + }; + in mkIf cfg.upnp.enable { + enable = true; + description = "Sets port on router"; + script = "${upnp-ports}/bin/upnp-ports"; + + serviceConfig = { + User = "root"; + Type = "oneshot"; + }; + }; + + timers = { + upnpc = mkIf cfg.upnp.enable { + description = "Sets port on router"; + wantedBy = ["timers.target"]; + + timerConfig = { + OnCalendar = "hourly"; + Persistent = "true"; # Run service immediately if last window was missed + RandomizedDelaySec = "5m"; # Run service OnCalendar +- 1h + }; + }; + }; + }; + }; +} diff --git a/util/vpnNamespace/default.nix b/util/vpnNamespace/default.nix new file mode 100644 index 0000000..e87a835 --- /dev/null +++ b/util/vpnNamespace/default.nix @@ -0,0 +1,347 @@ +{ lib, pkgs, config, ... }: +# Thanks to Maroka-chan... +# TODO: Make it so you can make multiple namespaces by giving a list of +# objects with settings as attributes. Also add an option to enable whether +# the namespace should use a vpn or not. +with builtins; +with lib; +let + cfg = config.kirk.vpnnamespace; +in { + options.kirk.vpnnamespace = { + enable = mkEnableOption (lib.mdDoc "VPN Namespace") // { + description = lib.mdDoc '' + Whether to enable the VPN namespace. + + To access the namespace a veth pair is used to + connect the vpn namespace and the default namespace + through a linux bridge. One end of the pair is + connected to the linux bridge on the default namespace. + The other end is connected to the vpn namespace. + + Systemd services can be run within the namespace by + adding these options: + + bindsTo = [ "netns@wg.service" ]; + requires = [ "network-online.target" ]; + after = [ "wg.service" ]; + serviceConfig = { + NetworkNamespacePath = "/var/run/netns/wg"; + }; + ''; + }; + + accessibleFrom = mkOption { + type = types.listOf types.str; + default = [ ]; + description = lib.mdDoc '' + Subnets or specific addresses that the namespace should be accessible to. + ''; + example = [ + "10.0.2.0/24" + "192.168.1.27" + ]; + }; + + namespaceAddress = mkOption { + type = types.str; + default = "192.168.15.1"; + description = lib.mdDoc '' + The address of the veth interface connected to the vpn namespace. + + This is the address used to reach the vpn namespace from other + namespaces connected to the linux bridge. + ''; + }; + + bridgeAddress = mkOption { + type = types.str; + default = "192.168.15.5"; + description = lib.mdDoc '' + The address of the linux bridge on the default namespace. + + The linux bridge sits on the default namespace and + needs an address to make communication between the + default namespace and other namespaces on the + bridge possible. + ''; + }; + + wireguardAddressPath = mkOption { + type = types.path; + default = ""; + description = lib.mdDoc '' + The address for the wireguard interface. + It is a path to a file containing the address. + This is done so the whole wireguard config can be specified + in a secret file. + ''; + }; + + wireguardConfigFile = mkOption { + type = types.path; + default = "/etc/wireguard/wg0.conf"; + description = lib.mdDoc '' + Path to the wireguard config to use. + + Note that this is not a wg-quick config. + ''; + }; + + portMappings = mkOption { + type = with types; listOf (attrsOf port); + default = []; + description = lib.mdDoc '' + A list of pairs mapping a port from the host to a port in the namespace. + ''; + example = [{ + From = 80; + To = 80; + }]; + }; + + dnsServers = mkOption { + type = with types; nullOr (listOf str); + default = loadDns wireguardConfigFile; #[ "1.1.1.2" ]; + description = lib.mdDoc '' + YOUR VPN WILL LEAK IF THIS IS NOT SET. The dns address of your vpn. + ''; + example = [ "1.1.1.2" ]; + }; + + openTcpPorts = mkOption { + type = with types; listOf port; + default = []; + description = lib.mdDoc '' + What TCP ports to allow incoming traffic from. You need this if + you're port forwarding on your VPN provider. + ''; + example = [ 46382 38473 ]; + }; + + openUdpPorts = mkOption { + type = with types; listOf port; + default = []; + description = lib.mdDoc '' + What UDP ports to allow incoming traffic from. You need this if + you're port forwarding on your VPN provider. + ''; + example = [ 46382 38473 ]; + }; + + vpnTestService = { + enable = mkEnableOption "Enable the vpn test service."; + + port = mkOption { + type = types.port; + default = [ 12300 ]; + description = lib.mdDoc '' + The port that the vpn test service listens to. + ''; + example = [ 58403 ]; + }; + }; + }; + + config = + let + headMay = list: if list == [] then null else head list; + # Checks if string is ipv4, from SO, hope it works well + # https://stackoverflow.com/questions/53497/regular-expression-that-matches-valid-ipv6-addresses + isIpv4 = address: + let pat = "((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])?/?[0-9]?[0-9]"; + regex = match pat address; + in regex != null; + # Checks if string is ipv6, from SO, hope it works well + # https://stackoverflow.com/questions/53497/regular-expression-that-matches-valid-ipv6-addresses + isIpv6 = address: + let pat = "(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))"; + regex = match pat address; + in regex != null; + isIp = ip: (isIpv4 ip || isIpv6 ip); + in + mkIf cfg.enable { + lib.vpn = { + dnsServers = + let lines = split "\n" (readFile cfg.wireguardConfigFile); + dnsLine = headMay (filter (x: typeOf x == "string" && match ".*DNS.*" x != null) lines); + in if dnsLine == null then [] else let + ipsUnsplit = head (match "DNS ?=(.*)" dnsLine); + in if ipsUnsplit == null then [] else let + ips = filter (x: typeOf x == "string") (split "," ipsUnsplit); + ipsNoSpaces = map (replaceStrings [" "] [""]) ips; + correctIps = filter isIp ipsNoSpaces; + in + assert ( correctIps != [] ) || abort "There must be at least 1 DNS server set."; + correctIps; + }; + + boot.kernel.sysctl."net.ipv4.ip_forward" = 1; + + systemd.services = { + "netns@" = { + description = "%I network namespace"; + before = [ "network.target" ]; + serviceConfig = { + Type = "oneshot"; + RemainAfterExit = true; + ExecStart = "${pkgs.iproute2}/bin/ip netns add %I"; + ExecStop = "${pkgs.iproute2}/bin/ip netns del %I"; + }; + }; + + wg = { + description = "wg network interface"; + bindsTo = [ "netns@wg.service" ]; + requires = [ "network-online.target" ]; + after = [ "netns@wg.service" ]; + wantedBy = [ "netns@wg.service" ]; + + serviceConfig = let + lines = split "\n" (readFile cfg.wireguardConfigFile); + addrLine = headMay (filter (x: typeOf x == "string" && match ".*Address.*" x != null) lines); + in if addrLine == null then [] else let + ipsUnsplit = head (match "Address ?=(.*)" addrLine); + in if ipsUnsplit == null then [] else let + ips = filter (x: typeOf x == "string") (split "," ipsUnsplit); + ipsNoSpaces = map (replaceStrings [" "] [""]) ips; + wgIpv4Address = headMay (filter isIpv4 ipsNoSpaces); + + vpn-namespace = pkgs.writeShellApplication { + name = "vpn-namespace"; + + runtimeInputs = with pkgs; [ iproute2 wireguard-tools iptables ]; + + text = '' + # Set up the wireguard interface + tmpdir=$(mktemp -d) + cat ${cfg.wireguardConfigFile} > "$tmpdir/wg.conf" + + # Get dns servers + grep "DNS =" "$tmpdir/wg.conf" | sed 's/DNS =//g' | sed 's/,/\n/g' | sed 's/ //g' | sed 's/^/nameserver: /g' > "$tmpdir/resolv.conf" + + ip link add wg0 type wireguard + ip link set wg0 netns wg + ip -n wg address add "${wgIpv4Address}" dev wg0 + ip netns exec wg wg setconf wg0 <(wg-quick strip "$tmpdir/wg.conf") + ip -n wg link set wg0 up + ip -n wg route add default dev wg0 + + # Start the loopback interface + ip -n wg link set dev lo up + + # Create a bridge + ip link add v-net-0 type bridge + ip addr add ${cfg.bridgeAddress}/24 dev v-net-0 + ip link set dev v-net-0 up + + # Set up veth pair to link namespace with host network + ip link add veth-vpn-br type veth peer name veth-vpn netns wg + ip link set veth-vpn-br master v-net-0 + + ip -n wg addr add ${cfg.namespaceAddress}/24 dev veth-vpn + ip -n wg link set dev veth-vpn up + + echo "setting dns" + # DNS test, see: + # https://www.man7.org/linux/man-pages/man8/wg-quick.8.html + # Absolutely no luck... + #echo "nameserver 1.1.1.1" | ip netns exec wg resolvconf -a wg0 -m 0 -x + + echo "Hello test" + '' + + # Add routes to make the namespace accessible + + strings.concatMapStrings (x: + "ip -n wg route add ${x} via ${cfg.bridgeAddress}" + "\n" + ) cfg.accessibleFrom + + # Add prerouting rules + + strings.concatMapStrings (x: + "iptables -t nat -A PREROUTING -p tcp --dport ${builtins.toString x.From} -j DNAT --to-destination ${cfg.namespaceAddress}:${builtins.toString x.To}" + + "\n" + ) cfg.portMappings + + # Allow VPN TCP ports + + strings.concatMapStrings (x: + "ip netns exec wg iptables -I INPUT -p tcp --dport ${builtins.toString x} -j ACCEPT" + + "\n" + ) cfg.openTcpPorts + + # Allow VPN UDP ports + + strings.concatMapStrings (x: + "ip netns exec wg iptables -I INPUT -p udp --dport ${builtins.toString x} -j ACCEPT" + + "\n" + ) cfg.openUdpPorts; + }; + in assert ( wgIpv4Address != null ) || abort "No address found in config file."; { + Type = "oneshot"; + RemainAfterExit = true; + ExecStart = "${vpn-namespace}/bin/vpn-namespace"; + + ExecStopPost = with pkgs; writers.writeBash "wg-down" ('' + ${iproute2}/bin/ip -n wg route del default dev wg0 + ${iproute2}/bin/ip -n wg link del wg0 + ${iproute2}/bin/ip -n wg link del veth-vpn + ${iproute2}/bin/ip link del v-net-0 + + # DNS test, see: + # https://www.man7.org/linux/man-pages/man8/wg-quick.8.html + #${iproute2}/bin/ip netns exec wg resolvconf -d wg0 + '' + + # Delete prerouting rules + + strings.concatMapStrings (x: "${iptables}/bin/iptables -t nat -D PREROUTING -p tcp --dport ${builtins.toString x.From} -j DNAT --to-destination ${cfg.namespaceAddress}:${builtins.toString x.To}" + "\n") cfg.portMappings); + }; + }; + + vpn-test-service = { + enable = cfg.vpnTestService.enable; + + script = let + vpn-test = pkgs.writeShellApplication { + name = "vpn-test"; + + runtimeInputs = with pkgs; [ util-linux unixtools.ping coreutils curl bash libressl netcat-gnu openresolv dig ]; + + text = '' + cd "$(mktemp -d)" + + # Print resolv.conf + echo "/etc/resolv.conf contains:" + cat /etc/resolv.conf + + # Query resolvconf + echo "resolvconf output:" + resolvconf -l + echo "" + + # Get ip + echo "Getting IP:" + curl -s ipinfo.io + + cat /etc/test.file + + echo -ne "DNS leak test:" + curl -s https://raw.githubusercontent.com/macvk/dnsleaktest/b03ab54d574adbe322ca48cbcb0523be720ad38d/dnsleaktest.sh -o dnsleaktest.sh + chmod +x dnsleaktest.sh + ./dnsleaktest.sh + + echo "starting netcat on port ${builtins.toString cfg.vpnTestService.port}:" + nc -vnlp ${builtins.toString cfg.vpnTestService.port} + ''; + }; + in "${vpn-test}/bin/vpn-test"; + + bindsTo = [ "netns@wg.service" ]; + requires = [ "network-online.target" ]; + after = [ "wg.service" ]; + serviceConfig = { + User="prowlarr"; + NetworkNamespacePath = "/var/run/netns/wg"; + BindReadOnlyPaths=["/etc/netns/wg/resolv.conf:/etc/resolv.conf:norbind" "/data/test.file:/etc/test.file:norbind"]; + }; + }; + }; + }; +}
  • {{ .Title | markdownify }}