more doc-work

This commit is contained in:
Peder Bergebakken Sundt 2023-02-26 06:11:55 +01:00
parent b1d987763c
commit 91dc6fa2a5
10 changed files with 63 additions and 24 deletions

View File

@ -7,6 +7,7 @@
* https://nixos.wiki/wiki/Flakes * https://nixos.wiki/wiki/Flakes
* https://teu5us.github.io/nix-lib.html * https://teu5us.github.io/nix-lib.html
* https://ryantm.github.io/nixpkgs/builders/trivial-builders/ * https://ryantm.github.io/nixpkgs/builders/trivial-builders/
* https://nixos.wiki/wiki/Nix-writers
# TODOs: # TODOs:

View File

@ -4,7 +4,7 @@
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-22.11-small"; inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-22.11-small";
inputs.unstable.url = "github:NixOS/nixpkgs/nixos-unstable-small"; inputs.unstable.url = "github:NixOS/nixpkgs/nixos-unstable-small";
inputs.nur.url = "github:nix-community/NUR"; inputs.nur.url = "github:nix-community/NUR";
inputs.home-manager.url = "github:nix-community/home-manager"; inputs.home-manager.url = "github:nix-community/home-manager"; #/release-22.11";
inputs.home-manager.inputs.nixpkgs.follows = "nixpkgs"; inputs.home-manager.inputs.nixpkgs.follows = "nixpkgs";
inputs.nixos-hardware.url = "github:NixOS/nixos-hardware"; inputs.nixos-hardware.url = "github:NixOS/nixos-hardware";

View File

@ -48,9 +48,11 @@
#../../profiles/web/services/openspeedtest #../../profiles/web/services/openspeedtest
../../profiles/web/docs ../../profiles/web/docs
../../profiles/web/docs/pdoc ../../profiles/web/docs/pdoc.nix
../../profiles/web/docs/python-docs ../../profiles/web/docs/python-docs.nix
../../profiles/web/docs/yagcd ../../profiles/web/docs/nixpkgs.nix
../../profiles/web/docs/linux-docs.nix
../../profiles/web/docs/yagcd.nix
../../profiles/web/sites/linktree-pbsds ../../profiles/web/sites/linktree-pbsds
../../profiles/web/sites/refleksjon-no ../../profiles/web/sites/refleksjon-no

View File

@ -5,10 +5,16 @@
services.docs-to-host.docs = mkOption { services.docs-to-host.docs = mkOption {
type = types.listOf (types.submodule { type = types.listOf (types.submodule {
options = { options = {
subdir = mkOption { dirname = mkOption {
type = types.str; type = types.str;
example = "pdoc"; example = "linux-doc";
description = lib.mdDoc "The path at which the documentation will be linked"; description = lib.mdDoc "The relative dirname at which the documentation will be linked";
};
basename = mkOption {
type = types.str;
example = "foobar.html";
default = "";
description = lib.mdDoc "The basename at which the documentation will be linked";
}; };
path = mkOption { path = mkOption {
type = types.path; type = types.path;
@ -29,8 +35,8 @@
config = let config = let
cfg = config.services.docs-to-host; cfg = config.services.docs-to-host;
mkRow = {subdir, path, desc}: ''<tr><td><a href="${subdir}/">${subdir}/</a><td>${desc}''; mkRow = {dirname, basename, path, desc}: ''<tr><td><a href="${dirname}/${basename}">${dirname}</a><td>${desc}'';
mkEntry = {subdir, path, desc}: { name = subdir; path = path; }; mkEntry = {dirname, basename, path, desc}: { name = dirname; path = path; };
in { in {
services.nginx.virtualHosts.${mkDomain "docs"} = { services.nginx.virtualHosts.${mkDomain "docs"} = {
forceSSL = true; # addSSL = true; forceSSL = true; # addSSL = true;

View File

@ -0,0 +1,8 @@
{ config, pkgs, lib, ... }:
{
services.docs-to-host.docs = [{
desc = "Linux kernel html documentation";
dirname = "linux-docs";
path = "${pkgs.linux-doc}/share/doc/linux-doc";
}];
}

View File

@ -0,0 +1,21 @@
{ config, pkgs, lib, inputs, ... }:
let
# https://stackoverflow.com/a/60232211
nixpkgs-manual = import "${inputs.nixpkgs}/doc" { inherit pkgs; };
nixos-manual = (import "${inputs.nixpkgs}/nixos/release.nix" { inherit (inputs) nixpkgs; }).manualHTML.${config.nixpkgs.system};
in
{
services.docs-to-host.docs = [
{
dirname = "nixpkgs-manual";
basename= "manual.html";
path = "${nixpkgs-manual}/share/doc/nixpkgs";
desc = "Officia nixpkgs manual";
}
{
dirname = "nixos-manual";
path = "${nixos-manual}/share/doc/nixos";
desc = "Officia Nixos manual";
}
];
}

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, mkDomain, ... }: { config, pkgs, lib, ... }:
let let
# pdoc data # pdoc data
@ -257,14 +257,14 @@ in {
services.docs-to-host.docs = [ services.docs-to-host.docs = [
{ {
subdir = "pdoc-docs"; dirname = "pdoc-docs";
path = mkPdocs false; path = mkPdocs false;
desc = "Documentation for various python modules, generated with pdoc"; desc = "Documentation for various python modules, generated with pdoc";
} }
{ {
subdir = "pdoc3-docs"; dirname = "pdoc3-docs";
path = mkPdocs true; path = mkPdocs true;
desc = "Documentation for various python modules, generated with pdoc"; desc = "Documentation for various python modules, generated with pdoc3";
} }
]; ];

View File

@ -2,9 +2,9 @@
let let
python-versions = lib.attrNames (lib.filterAttrs (k: v: lib.isDerivation v) pkgs.pythonDocs.html); python-versions = lib.attrNames (lib.filterAttrs (k: v: lib.isDerivation v) pkgs.pythonDocs.html);
mkDocsEntry = python-version: { mkDocsEntry = python-version: {
subdir = "${python-version}"; dirname = "${python-version}";
path = "${builtins.toString pkgs.pythonDocs.html.${python-version}}/share/doc/${python-version}/html"; path = "${builtins.toString pkgs.pythonDocs.html.${python-version}}/share/doc/${python-version}/html";
desc = "Documentation for Python ${pkgs.${python-version}.version}"; desc = "Documentation for Python ${pkgs.${python-version}.version}";
}; };
in in
{ {

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, mkDomain, ... }: { config, pkgs, lib, ... }:
let let
yagcd = pkgs.fetchzip { yagcd = pkgs.fetchzip {
url = "http://hitmen.c02.at/files/yagcd/yagcd.tar.gz"; url = "http://hitmen.c02.at/files/yagcd/yagcd.tar.gz";
@ -8,9 +8,9 @@ let
in in
{ {
services.docs-to-host.docs = [{ services.docs-to-host.docs = [{
desc = "Yet another Gamecube Documentation"; desc = "Yet another Gamecube Documentation";
subdir = "yagcd"; dirname = "yagcd";
path = "${yagcd}/yagcd"; path = "${yagcd}/yagcd";
}]; }];
/** / /** /

View File

@ -227,7 +227,8 @@
programs.exa.enable = true; programs.exa.enable = true;
programs.exa.enableAliases = true; programs.exa.enableAliases = true;
programs.direnv.enable = true; programs.direnv.enable = true;
#programs.mpv.bindings programs.mpv.bindings."SHIFT+n" = "sub-seek -1";
programs.mpv.bindings."n" = "sub-seek 1";
#programs.mpv.config #programs.mpv.config
# TODO: implement programs.bat.enableAliases # TODO: implement programs.bat.enableAliases