From 3ac9c63a0100b15de6eec65e6f95d136c4b9490b Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Fri, 13 Jan 2023 18:06:55 +0100 Subject: [PATCH] Remove generated committed code, update --- docs/antora.yml | 1 + docs/flake-module.nix | 45 +- docs/modules/ROOT/pages/options.adoc | 6 +- docs/modules/ROOT/partials/NixOSOptions.adoc | 1320 ------------------ flake.lock | 8 +- flake.nix | 2 +- src/nix/lib.nix | 3 +- src/nix/modules/composition/composition.nix | 2 +- update-options | 9 - 9 files changed, 37 insertions(+), 1359 deletions(-) delete mode 100644 docs/modules/ROOT/partials/NixOSOptions.adoc delete mode 100755 update-options diff --git a/docs/antora.yml b/docs/antora.yml index cc452f5..52c5f4c 100644 --- a/docs/antora.yml +++ b/docs/antora.yml @@ -4,3 +4,4 @@ version: 'master' nav: - modules/ROOT/nav.adoc - modules/reference/nav.adoc +nix: true diff --git a/docs/flake-module.nix b/docs/flake-module.nix index a442d5d..0ac6ba3 100644 --- a/docs/flake-module.nix +++ b/docs/flake-module.nix @@ -1,20 +1,31 @@ { - perSystem = { config, pkgs, ... }: - let - doc-options = import ./options.nix { }; + perSystem = { config, pkgs, lib, ... }: { + packages.generated-option-doc-arion = + # TODO: use the render pipeline in flake-parts, + # which has support for things like {options}`foo`. + let + eval = lib.evalModules { + modules = import ../src/nix/modules.nix; + }; + in + (pkgs.nixosOptionsDoc + { + options = eval.options; + }).optionsCommonMark; - in - { - packages.doc-options = pkgs.callPackage ./options.nix { }; - - checks.doc-options = pkgs.runCommand "doc-options-check" { } '' - if diff --color -u ${./modules/ROOT/partials/NixOSOptions.adoc} ${config.packages.doc-options}; then - touch $out - else - echo 1>&2 "The doc options have changed and need to be added." - echo 1>&2 "Please run ./update-options in the root of your arion clone." - exit 1 - fi - ''; - }; + packages.generated-antora-files = + pkgs.runCommand "generated-antora-files" + { + nativeBuildInputs = [ pkgs.pandoc ]; + doc_arion = config.packages.generated-option-doc-arion; + } + # TODO: use the render pipeline in flake-parts, + # which has support for things like {options}`foo`. + '' + mkdir -p $out/modules/ROOT/partials + pandoc --from=markdown --to=asciidoc \ + < $doc_arion \ + > $out/modules/ROOT/partials/arion-options.adoc + ''; + }; } diff --git a/docs/modules/ROOT/pages/options.adoc b/docs/modules/ROOT/pages/options.adoc index db59485..9311ab6 100644 --- a/docs/modules/ROOT/pages/options.adoc +++ b/docs/modules/ROOT/pages/options.adoc @@ -1,5 +1 @@ -// To update option descriptions -// - use git grep or github search -// - or browse through src/nix/modules - -include::partial$NixOSOptions.adoc[] +include::partial$arion-options.adoc[] diff --git a/docs/modules/ROOT/partials/NixOSOptions.adoc b/docs/modules/ROOT/partials/NixOSOptions.adoc deleted file mode 100644 index 68bbcd9..0000000 --- a/docs/modules/ROOT/partials/NixOSOptions.adoc +++ /dev/null @@ -1,1320 +0,0 @@ -= Arion options - -== docker-compose.extended - -Attribute set that will be turned into the x-arion section of the docker-compose.yaml file. - -[discrete] -=== details - -Type:: attribute set -No Default:: {blank} - -No Example:: {blank} - -== docker-compose.raw - -Attribute set that will be turned into the docker-compose.yaml file, using Nix's toJSON builtin. - -[discrete] -=== details - -Type:: attribute set -No Default:: {blank} - -No Example:: {blank} - -== enableDefaultNetwork - -Whether to define the default network: - -```nix -networks.default = { - name = config.project.name; -}; -``` - - -[discrete] -=== details - -Type:: boolean -Default:: -+ ----- -true ----- - - -No Example:: {blank} - -== host.nixStorePrefix - -Prefixes store paths on the host, allowing the Nix store to be -stored at an alternate location without altering the format of -store paths. - -For example: instead of mounting the host's /nix/store as the -container's /nix/store, this will mount /mnt/foo/nix/store -as the container's /nix/store. - - -[discrete] -=== details - -Type:: string -Default:: -+ ----- -"" ----- - - -Example:: -+ ----- -"/mnt/foo" ----- - - -== host.uid - -The numeric user id (UID) of the user running arion. - -This lets you to write modules that interact with the host -user's files, which is helpful for local development, but not -intended for production-like deployment scenarios. - - -[discrete] -=== details - -Type:: signed integer -No Default:: {blank} - -No Example:: {blank} - -== networks - -See link:https://docs.docker.com/compose/compose-file/#networks-top-level-element[Docker Compose#networks-top-level-element] - - -[discrete] -=== details - -Type:: lazy attribute set of (submodule) -No Default:: {blank} - -No Example:: {blank} - -== networks..attachable - -See link:https://docs.docker.com/compose/compose-file/#attachable[Docker Compose#attachable] - - -[discrete] -=== details - -Type:: boolean -No Default:: {blank} - -Example:: -+ ----- -true ----- - - -== networks..driver - -`"none"`, `"host"`, or a platform-specific value. -See link:https://docs.docker.com/compose/compose-file/#driver[Docker Compose#driver] - - -[discrete] -=== details - -Type:: string -No Default:: {blank} - -No Example:: {blank} - -== networks..driver_opts - -See link:https://docs.docker.com/compose/compose-file/#driver_opts[Docker Compose#driver_opts] - - -[discrete] -=== details - -Type:: lazy attribute set of raw value -No Default:: {blank} - -No Example:: {blank} - -== networks..enable_ipv6 - -Whether we've entered the 21st century yet. - -See link:https://docs.docker.com/compose/compose-file/#enable_ipv6[Docker Compose#enable_ipv6] - - -[discrete] -=== details - -Type:: boolean -No Default:: {blank} - -No Example:: {blank} - -== networks..external - -When `true`, don't create or destroy the network, but assume that it -exists. - -See link:https://docs.docker.com/compose/compose-file/#external[Docker Compose#external] - - -[discrete] -=== details - -Type:: boolean -No Default:: {blank} - -No Example:: {blank} - -== networks..internal - -Achieves "external isolation". - -See link:https://docs.docker.com/compose/compose-file/#internal[Docker Compose#internal] - - -[discrete] -=== details - -Type:: boolean -Default:: -+ ----- -false ----- - - -No Example:: {blank} - -== networks..ipam - -Manage IP addresses. - -See link:https://docs.docker.com/compose/compose-file/#ipam[Docker Compose#ipam] - - -[discrete] -=== details - -Type:: raw value -No Default:: {blank} - -No Example:: {blank} - -== networks..labels - -Metadata. - -See link:https://docs.docker.com/compose/compose-file/#labels[Docker Compose#labels] - - -[discrete] -=== details - -Type:: attribute set of string -No Default:: {blank} - -No Example:: {blank} - -== networks..name - -Set a custom name for the network. - -It shares a namespace with other projects' networks. `name` is used as-is. - -Note the `default` network's default `name` is set to `project.name` by Arion. - -See link:https://docs.docker.com/compose/compose-file/#name[Docker Compose#name] - - -[discrete] -=== details - -Type:: string -No Default:: {blank} - -No Example:: {blank} - -== out.dockerComposeYaml - -A derivation that produces a docker-compose.yaml file for this composition. - -[discrete] -=== details - -Type:: package -No Default:: {blank} -Read Only:: {blank} -No Example:: {blank} - -== out.dockerComposeYamlAttrs - -The text of out.dockerComposeYaml. - -[discrete] -=== details - -Type:: attribute set of unspecified value -No Default:: {blank} -Read Only:: {blank} -No Example:: {blank} - -== out.dockerComposeYamlText - -The text of out.dockerComposeYaml. - -[discrete] -=== details - -Type:: string -No Default:: {blank} -Read Only:: {blank} -No Example:: {blank} - -== project.name - -Name of the project. - -See link:https://docs.docker.com/compose/reference/envvars/#compose_project_name[COMPOSE_PROJECT_NAME] - -This is not optional, because getting the project name from a directory name tends to produce different results for different repo checkout location names. - - -[discrete] -=== details - -Type:: string -No Default:: {blank} - -No Example:: {blank} - -== services - -An attribute set of service configurations. A service specifies how to run an image as a container. - -[discrete] -=== details - -Type:: attribute set of (submodule) -No Default:: {blank} - -No Example:: {blank} - -== services..composition - -The composition configuration. - - -[discrete] -=== details - -Type:: attribute set -No Default:: {blank} -Read Only:: {blank} -No Example:: {blank} - -== services..host - -The composition-level host option values. - - -[discrete] -=== details - -Type:: attribute set -No Default:: {blank} -Read Only:: {blank} -No Example:: {blank} - -== services..image.command - - - -[discrete] -=== details - -Type:: list of string -Default:: -+ ----- -[] ----- - - -No Example:: {blank} - -== services..image.contents - -Top level paths in the container. - - -[discrete] -=== details - -Type:: list of package -Default:: -+ ----- -[] ----- - - -No Example:: {blank} - -== services..image.enableRecommendedContents - -Add the `/bin/sh` and `/usr/bin/env` symlinks and some lightweight -files. - - -[discrete] -=== details - -Type:: boolean -Default:: -+ ----- -false ----- - - -No Example:: {blank} - -== services..image.name - -A human readable name for the docker image. - -Shows up in the `docker ps` output in the -`IMAGE` column, among other places. - - -[discrete] -=== details - -Type:: string -Default:: -+ ----- -{"_type":"literalExpression","text":"\"localhost/\" + config.service.name"} ----- - - -No Example:: {blank} - -== services..image.nixBuild - -Whether to build this image with Nixpkgs' -`dockerTools.buildLayeredImage` -and then load it with `docker load`. - -By default, an image will be built with Nix unless `service.image` -is set. See also `image.name`, which defaults to -the service name. - - -[discrete] -=== details - -Type:: boolean -No Default:: {blank} - -No Example:: {blank} - -== services..image.rawConfig - -This is a low-level fallback for when a container option has not -been modeled in the Arion module system. - -This attribute set does not have an appropriate merge function. -Please use the specific `image` options instead. - -Run-time configuration of the container. A full list of the -options is available in the https://github.com/moby/moby/blob/master/image/spec/v1.2.md#image-json-field-descriptions[Docker Image Specification -v1.2.0]. - - -[discrete] -=== details - -Type:: attribute set of unspecified value -Default:: -+ ----- -{} ----- - - -No Example:: {blank} - -== services..nixos.build - -NixOS build products from `config.system.build`, such as `toplevel` and `etc`. - -This option is unused by default, because not all images use NixOS. - -One way to use this is to enable `nixos.useSystemd`, but the -NixOS configuration can be used in other ways. - - -[discrete] -=== details - -Type:: attribute set -No Default:: {blank} -Read Only:: {blank} -No Example:: {blank} - -== services..nixos.configuration - -Modules to add to the NixOS configuration. - -This option is unused by default, because not all images use NixOS. - -One way to use this is to enable `nixos.useSystemd`, but the -NixOS configuration can be used in other ways. - - -[discrete] -=== details - -Type:: (list of unspecified value) or unspecified value convertible to it -Default:: -+ ----- -{} ----- - - -No Example:: {blank} - -== services..nixos.evaluatedConfig - -Evaluated NixOS configuration, to be read by service-level modules. - -This option is unused by default, because not all images use NixOS. - -One way to use this is to enable `nixos.useSystemd`, but the -NixOS configuration can be used in other ways. - - -[discrete] -=== details - -Type:: attribute set -No Default:: {blank} -Read Only:: {blank} -No Example:: {blank} - -== services..nixos.useSystemd - -When enabled, call the NixOS systemd-based init system. - -Configure NixOS with the `nixos.configuration` option. - - -[discrete] -=== details - -Type:: boolean -Default:: -+ ----- -false ----- - - -No Example:: {blank} - -== services..out.extendedInfo - -Information about a service to include in the Docker Compose file, -but that will not be used by the `docker-compose`> command -itself. - -It will be inserted in `x-arion.serviceInfo.`. - - -[discrete] -=== details - -Type:: attribute set of unspecified value -Default:: -+ ----- -{} ----- - - -No Example:: {blank} - -== services..out.service - -Raw input for the service in `docker-compose.yaml`. - -You should not need to use this option. If anything is -missing, please contribute the missing option. - -This option is user accessible because it may serve as an -escape hatch for some. - - -[discrete] -=== details - -Type:: attribute set of unspecified value -No Default:: {blank} - -No Example:: {blank} - -== services..service.build.context - -Locates a Dockerfile to use for creating an image to use in this service. - -See link:https://docs.docker.com/compose/compose-file/#context[Docker Compose#context] - - -[discrete] -=== details - -Type:: null or string -Default:: -+ ----- -null ----- - - -No Example:: {blank} - -== services..service.capabilities - -Enable/disable linux capabilities, or pick Docker's default. - -Setting a capability to `true` means that it will be -"added". Setting it to `false` means that it will be "dropped". -See link:https://docs.docker.com/compose/compose-file/#cap_add-cap_drop[Docker Compose#cap_add-cap_drop] - -Omitted and `null` capabilities will therefore be set -according to Docker's link:https://docs.docker.com/engine/reference/run/#runtime-privilege-and-linux-capabilities[default list of capabilities.] - - -[discrete] -=== details - -Type:: attribute set of (null or boolean) -Default:: -+ ----- -{} ----- - - -Example:: -+ ----- -{"ALL":true,"NET_ADMIN":false,"SYS_ADMIN":false} ----- - - -== services..service.command - -See link:https://docs.docker.com/compose/compose-file/#command[Docker Compose#command] - -[discrete] -=== details - -Type:: null or unspecified value -Default:: -+ ----- -null ----- - - -No Example:: {blank} - -== services..service.container_name - -See link:https://docs.docker.com/compose/compose-file/#container_name[Docker Compose#container_name] - -[discrete] -=== details - -Type:: null or string -Default:: -+ ----- -null ----- - - -No Example:: {blank} - -== services..service.defaultExec - -Container program and arguments to invoke when calling -`arion exec ` without further arguments. - - -[discrete] -=== details - -Type:: list of string -Default:: -+ ----- -["/bin/sh"] ----- - - -No Example:: {blank} - -== services..service.depends_on - -See link:https://docs.docker.com/compose/compose-file/#depends_on[Docker Compose#depends_on] - -[discrete] -=== details - -Type:: (list of string) or attribute set of (submodule) -Default:: -+ ----- -[] ----- - - -No Example:: {blank} - -== services..service.devices - -See link:https://docs.docker.com/engine/reference/run/#runtime-privilege-and-linux-capabilities[`docker run --device` documentation] - -See link:https://docs.docker.com/compose/compose-file/#devices[Docker Compose#devices] - - -[discrete] -=== details - -Type:: list of string -Default:: -+ ----- -[] ----- - - -No Example:: {blank} - -== services..service.dns - -See link:https://docs.docker.com/compose/compose-file/#dns[Docker Compose#dns] - -[discrete] -=== details - -Type:: list of string -Default:: -+ ----- -[] ----- - - -Example:: -+ ----- -["8.8.8.8","8.8.4.4"] ----- - - -== services..service.entrypoint - -See link:https://docs.docker.com/compose/compose-file/#entrypoint[Docker Compose#entrypoint] - -[discrete] -=== details - -Type:: null or string -Default:: -+ ----- -null ----- - - -No Example:: {blank} - -== services..service.env_file - -See link:https://docs.docker.com/compose/compose-file/#env_file[Docker Compose#env_file] - -[discrete] -=== details - -Type:: list of string -Default:: -+ ----- -[] ----- - - -No Example:: {blank} - -== services..service.environment - -See link:https://docs.docker.com/compose/compose-file/#environment[Docker Compose#environment] - -[discrete] -=== details - -Type:: attribute set of (string or signed integer) -Default:: -+ ----- -{} ----- - - -No Example:: {blank} - -== services..service.expose - -See link:https://docs.docker.com/compose/compose-file/#expose[Docker Compose#expose] - -[discrete] -=== details - -Type:: list of string -Default:: -+ ----- -[] ----- - - -No Example:: {blank} - -== services..service.external_links - -See link:https://docs.docker.com/compose/compose-file/#external_links[Docker Compose#external_links] - -[discrete] -=== details - -Type:: list of string -Default:: -+ ----- -[] ----- - - -No Example:: {blank} - -== services..service.extra_hosts - -See link:https://docs.docker.com/compose/compose-file/#extra_hosts[Docker Compose#extra_hosts] - -[discrete] -=== details - -Type:: list of string -Default:: -+ ----- -[] ----- - - -No Example:: {blank} - -== services..service.healthcheck - -See link:https://docs.docker.com/compose/compose-file/#healthcheck[Docker Compose#healthcheck] - -[discrete] -=== details - -Type:: submodule -No Default:: {blank} - -No Example:: {blank} - -== services..service.healthcheck.interval - -See link:https://docs.docker.com/compose/compose-file/#healthcheck[Docker Compose#healthcheck] - -[discrete] -=== details - -Type:: string -Default:: -+ ----- -"30s" ----- - - -Example:: -+ ----- -"1m" ----- - - -== services..service.healthcheck.retries - -See link:https://docs.docker.com/compose/compose-file/#healthcheck[Docker Compose#healthcheck] - -[discrete] -=== details - -Type:: signed integer -Default:: -+ ----- -3 ----- - - -No Example:: {blank} - -== services..service.healthcheck.start_period - -See link:https://docs.docker.com/compose/compose-file/#healthcheck[Docker Compose#healthcheck] - -[discrete] -=== details - -Type:: string -Default:: -+ ----- -"0s" ----- - - -Example:: -+ ----- -"30s" ----- - - -== services..service.healthcheck.test - -See link:https://docs.docker.com/compose/compose-file/#healthcheck[Docker Compose#healthcheck] - -[discrete] -=== details - -Type:: null or (list of string) -Default:: -+ ----- -null ----- - - -Example:: -+ ----- -["CMD","pg_isready"] ----- - - -== services..service.healthcheck.timeout - -See link:https://docs.docker.com/compose/compose-file/#healthcheck[Docker Compose#healthcheck] - -[discrete] -=== details - -Type:: string -Default:: -+ ----- -"30s" ----- - - -Example:: -+ ----- -"10s" ----- - - -== services..service.hostStoreAsReadOnly - -Adds a ':ro' (read-only) access mode to the host nix store bind mount. - -[discrete] -=== details - -Type:: boolean -Default:: -+ ----- -true ----- - - -No Example:: {blank} - -== services..service.hostname - -Analogous to the `docker run` counterpart. - -See link:https://docs.docker.com/compose/compose-file/#domainname-hostname-ipc-mac_address-privileged-read_only-shm_size-stdin_open-tty-user-working_dir[Docker Compose#domainname-hostname-ipc-mac_address-privileged-read_only-shm_size-stdin_open-tty-user-working_dir] - - -[discrete] -=== details - -Type:: null or string -Default:: -+ ----- -null ----- - - -No Example:: {blank} - -== services..service.image - -See link:https://docs.docker.com/compose/compose-file/#image[Docker Compose#image] - -[discrete] -=== details - -Type:: string -No Default:: {blank} - -No Example:: {blank} - -== services..service.labels - -See link:https://docs.docker.com/compose/compose-file/#labels[Docker Compose#labels] - -[discrete] -=== details - -Type:: attribute set of string -Default:: -+ ----- -{} ----- - - -Example:: -+ ----- -{"com.example.foo":"bar","traefik.enable":"true","traefik.http.routers.my-service.entrypoints":"web","traefik.http.routers.my-service.rule":"Host(`my-service.localhost`)"} ----- - - -== services..service.links - -See link:https://docs.docker.com/compose/compose-file/#links[Docker Compose#links] - -[discrete] -=== details - -Type:: list of string -Default:: -+ ----- -[] ----- - - -No Example:: {blank} - -== services..service.name - -The name of the service - `` in the composition-level `services.` - - -[discrete] -=== details - -Type:: string -No Default:: {blank} -Read Only:: {blank} -No Example:: {blank} - -== services..service.network_mode - -See link:https://docs.docker.com/compose/compose-file/#network_mode[Docker Compose#network_mode] - -[discrete] -=== details - -Type:: null or string -Default:: -+ ----- -null ----- - - -No Example:: {blank} - -== services..service.networks - -See link:https://docs.docker.com/compose/compose-file/#networks[Docker Compose#networks] - -[discrete] -=== details - -Type:: null or (list of string) -Default:: -+ ----- -null ----- - - -No Example:: {blank} - -== services..service.ports - -Expose ports on host. "host:container" or structured. - -See link:https://docs.docker.com/compose/compose-file/#ports[Docker Compose#ports] - - -[discrete] -=== details - -Type:: list of unspecified value -Default:: -+ ----- -[] ----- - - -No Example:: {blank} - -== services..service.privileged - -Analogous to the `docker run` counterpart. - -See link:https://docs.docker.com/compose/compose-file/#domainname-hostname-ipc-mac_address-privileged-read_only-shm_size-stdin_open-tty-user-working_dir[Docker Compose#domainname-hostname-ipc-mac_address-privileged-read_only-shm_size-stdin_open-tty-user-working_dir] - - -[discrete] -=== details - -Type:: null or boolean -Default:: -+ ----- -null ----- - - -No Example:: {blank} - -== services..service.restart - -See link:https://docs.docker.com/compose/compose-file/#restart[Docker Compose#restart] - -[discrete] -=== details - -Type:: null or string -Default:: -+ ----- -null ----- - - -No Example:: {blank} - -== services..service.stop_signal - -See link:https://docs.docker.com/compose/compose-file/#stop_signal[Docker Compose#stop_signal] - -[discrete] -=== details - -Type:: null or string -Default:: -+ ----- -null ----- - - -No Example:: {blank} - -== services..service.sysctls - -See link:https://docs.docker.com/compose/compose-file/#sysctls[Docker Compose#sysctls] - -[discrete] -=== details - -Type:: attribute set of (string or signed integer) -Default:: -+ ----- -{} ----- - - -No Example:: {blank} - -== services..service.tmpfs - -See link:https://docs.docker.com/compose/compose-file/#tmpfs[Docker Compose#tmpfs] - -[discrete] -=== details - -Type:: list of string -Default:: -+ ----- -[] ----- - - -No Example:: {blank} - -== services..service.tty - -Analogous to the `docker run` counterpart. - -See link:https://docs.docker.com/compose/compose-file/#domainname-hostname-ipc-mac_address-privileged-read_only-shm_size-stdin_open-tty-user-working_dir[Docker Compose#domainname-hostname-ipc-mac_address-privileged-read_only-shm_size-stdin_open-tty-user-working_dir] - - -[discrete] -=== details - -Type:: null or boolean -Default:: -+ ----- -null ----- - - -No Example:: {blank} - -== services..service.useHostNixDaemon - -Make the host Nix daemon available. - -[discrete] -=== details - -Type:: boolean -Default:: -+ ----- -false ----- - - -No Example:: {blank} - -== services..service.useHostStore - -Bind mounts the host store if enabled, avoiding copying. - -[discrete] -=== details - -Type:: boolean -Default:: -+ ----- -false ----- - - -No Example:: {blank} - -== services..service.user - -Analogous to the `docker run` counterpart. - -See link:https://docs.docker.com/compose/compose-file/#domainname-hostname-ipc-mac_address-privileged-read_only-shm_size-stdin_open-tty-user-working_dir[Docker Compose#domainname-hostname-ipc-mac_address-privileged-read_only-shm_size-stdin_open-tty-user-working_dir] - - -[discrete] -=== details - -Type:: null or string -Default:: -+ ----- -null ----- - - -No Example:: {blank} - -== services..service.volumes - -See link:https://docs.docker.com/compose/compose-file/#volumes[Docker Compose#volumes] - -[discrete] -=== details - -Type:: list of unspecified value -Default:: -+ ----- -[] ----- - - -No Example:: {blank} - -== services..service.working_dir - -Analogous to the `docker run` counterpart. - -See link:https://docs.docker.com/compose/compose-file/#domainname-hostname-ipc-mac_address-privileged-read_only-shm_size-stdin_open-tty-user-working_dir[Docker Compose#domainname-hostname-ipc-mac_address-privileged-read_only-shm_size-stdin_open-tty-user-working_dir] - - -[discrete] -=== details - -Type:: null or string -Default:: -+ ----- -null ----- - - -No Example:: {blank} - diff --git a/flake.lock b/flake.lock index 0cf6ff1..efed274 100644 --- a/flake.lock +++ b/flake.lock @@ -37,16 +37,16 @@ }, "nixpkgs": { "locked": { - "lastModified": 1669980218, - "narHash": "sha256-HBK1tIqarj7ZsSwQEKGlyvbAIFnglytG7FxuS4K3nY8=", + "lastModified": 1673450908, + "narHash": "sha256-b8em+kwrNtnB7gR8SyVf6WuTyQ+6tHS6dzt9D9wgKF0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "da7988fe440ef5b8779d4f76340ad7dc79ff3b33", + "rev": "6c8644fc37b6e141cbfa6c7dc8d98846c4ff0c2e", "type": "github" }, "original": { "owner": "NixOS", - "ref": "haskell-updates", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } diff --git a/flake.nix b/flake.nix index f5633d0..4ca2b3c 100644 --- a/flake.nix +++ b/flake.nix @@ -2,7 +2,7 @@ description = "Arion - use Docker Compose via Nix"; inputs = { - nixpkgs.url = "github:NixOS/nixpkgs/haskell-updates"; + nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; haskell-flake.url = "github:srid/haskell-flake"; flake-parts.url = "github:hercules-ci/flake-parts"; flake-parts.inputs.nixpkgs-lib.follows = "nixpkgs"; diff --git a/src/nix/lib.nix b/src/nix/lib.nix index 1e3ede6..9cfd1dc 100644 --- a/src/nix/lib.nix +++ b/src/nix/lib.nix @@ -1,8 +1,7 @@ { lib }: let - link = url: text: - ''link:${url}[${text}]''; + link = url: text: ''[${text}](${url})''; dockerComposeRef = fragment: ''See ${link "https://docs.docker.com/compose/compose-file/#${fragment}" "Docker Compose#${fragment}"}''; diff --git a/src/nix/modules/composition/composition.nix b/src/nix/modules/composition/composition.nix index 8b53882..2d8954b 100644 --- a/src/nix/modules/composition/composition.nix +++ b/src/nix/modules/composition/composition.nix @@ -3,7 +3,7 @@ let inherit (lib) types mkOption; link = url: text: - ''link:${url}[${text}]''; + ''[${text}](${url})''; in { diff --git a/update-options b/update-options deleted file mode 100755 index 0e7a02c..0000000 --- a/update-options +++ /dev/null @@ -1,9 +0,0 @@ -#!/usr/bin/env nix-shell -#!nix-shell -i bash -p jq - -set -eu -o pipefail - -cd "$(dirname ${BASH_SOURCE[0]})" - -doc_options="$(nix build .#doc-options --json | jq -r .[].outputs.out)" -cat "$doc_options" >docs/modules/ROOT/partials/NixOSOptions.adoc