From a43c5024a8e14a93bdd9a261f28075b088c1696a Mon Sep 17 00:00:00 2001 From: Gabriel Arazas Date: Sat, 8 Jul 2023 19:41:30 +0800 Subject: [PATCH] docs/site: initialize the project site --- docs/.gitignore | 75 +++++++++++++ docs/Gemfile | 18 +++ docs/Gemfile.lock | 70 ++++++++++++ docs/README.adoc | 6 + docs/gemset.nix | 279 ++++++++++++++++++++++++++++++++++++++++++++++ docs/shell.nix | 23 ++++ flake.nix | 1 + 7 files changed, 472 insertions(+) create mode 100644 docs/.gitignore create mode 100644 docs/Gemfile create mode 100644 docs/Gemfile.lock create mode 100644 docs/README.adoc create mode 100644 docs/gemset.nix create mode 100644 docs/shell.nix diff --git a/docs/.gitignore b/docs/.gitignore new file mode 100644 index 00000000..b8488598 --- /dev/null +++ b/docs/.gitignore @@ -0,0 +1,75 @@ + +### Hugo ### +# Generated files by hugo +/public/ +/resources/_gen/ +/assets/jsconfig.json +hugo_stats.json + +# Executable may be added to repository +hugo.exe +hugo.darwin +hugo.linux + +# Temporary lock file while building +/.hugo_build.lock + + +### Ruby ### +*.gem +*.rbc +/.config +/coverage/ +/InstalledFiles +/pkg/ +/spec/reports/ +/spec/examples.txt +/test/tmp/ +/test/version_tmp/ +/tmp/ + +# Used by dotenv library to load environment variables. +# .env + +# Ignore Byebug command history file. +.byebug_history + +## Specific to RubyMotion: +.dat* +.repl_history +build/ +*.bridgesupport +build-iPhoneOS/ +build-iPhoneSimulator/ + +## Specific to RubyMotion (use of CocoaPods): +# +# We recommend against adding the Pods directory to your .gitignore. However +# you should judge for yourself, the pros and cons are mentioned at: +# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control +# +# vendor/Pods/ + +## Documentation cache and generated files: +/.yardoc/ +/_yardoc/ +/doc/ +/rdoc/ + +## Environment normalization: +/.bundle/ +/vendor/bundle +/lib/bundler/man/ + +# for a library or gem, you might want to ignore these files since the code is +# intended to run in multiple environments; otherwise, check them in: +# Gemfile.lock +# .ruby-version +# .ruby-gemset + +# unless supporting rvm < 1.11.0 or doing something fancy, ignore this: +.rvmrc + +# Used by RuboCop. Remote config files pulled in from inherit_from directive. +# .rubocop-https?--* + diff --git a/docs/Gemfile b/docs/Gemfile new file mode 100644 index 00000000..de32b9fd --- /dev/null +++ b/docs/Gemfile @@ -0,0 +1,18 @@ +# frozen_string_literal: true + +source 'https://rubygems.org' +gem 'asciidoctor' +gem 'asciidoctor-diagram' +gem 'asciidoctor-foodogsquared-extensions' +gem 'concurrent-ruby' +gem 'open-uri-cached' +gem 'rouge' + +group :development do + gem 'rake' + gem 'ruby-lsp', require: false +end + +group :lint do + gem 'rubocop', require: false +end diff --git a/docs/Gemfile.lock b/docs/Gemfile.lock new file mode 100644 index 00000000..5cce4439 --- /dev/null +++ b/docs/Gemfile.lock @@ -0,0 +1,70 @@ +GEM + remote: https://rubygems.org/ + specs: + asciidoctor (2.0.20) + asciidoctor-diagram (2.2.9) + asciidoctor (>= 1.5.7, < 3.x) + asciidoctor-diagram-ditaamini (~> 1.0) + asciidoctor-diagram-plantuml (~> 1.2021) + rexml + asciidoctor-diagram-ditaamini (1.0.3) + asciidoctor-diagram-plantuml (1.2023.5) + asciidoctor-foodogsquared-extensions (1.0.0) + asciidoctor (~> 2.0) + rugged (~> 1.0) + ast (2.4.2) + concurrent-ruby (1.2.2) + json (2.6.3) + language_server-protocol (3.17.0.3) + open-uri-cached (1.0.0) + parallel (1.23.0) + parser (3.2.2.3) + ast (~> 2.4.1) + racc + prettier_print (1.2.1) + racc (1.7.1) + rainbow (3.1.1) + rake (13.0.6) + regexp_parser (2.8.1) + rexml (3.2.5) + rouge (4.1.2) + rubocop (1.54.1) + json (~> 2.3) + language_server-protocol (>= 3.17.0) + parallel (~> 1.10) + parser (>= 3.2.2.3) + rainbow (>= 2.2.2, < 4.0) + regexp_parser (>= 1.8, < 3.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.28.0, < 2.0) + ruby-progressbar (~> 1.7) + unicode-display_width (>= 2.4.0, < 3.0) + rubocop-ast (1.29.0) + parser (>= 3.2.1.0) + ruby-lsp (0.6.2) + language_server-protocol (~> 3.17.0) + sorbet-runtime + syntax_tree (>= 6.1.1, < 7) + ruby-progressbar (1.13.0) + rugged (1.6.3) + sorbet-runtime (0.5.10904) + syntax_tree (6.1.1) + prettier_print (>= 1.2.0) + unicode-display_width (2.4.2) + +PLATFORMS + x86_64-linux + +DEPENDENCIES + asciidoctor + asciidoctor-diagram + asciidoctor-foodogsquared-extensions + concurrent-ruby + open-uri-cached + rake + rouge + rubocop + ruby-lsp + +BUNDLED WITH + 2.4.14 diff --git a/docs/README.adoc b/docs/README.adoc new file mode 100644 index 00000000..0243003a --- /dev/null +++ b/docs/README.adoc @@ -0,0 +1,6 @@ += Project documentation +:toc: + + +It's the documentation for my project rendered with Hugo and written with Asciidoctor format. +There are some things you need to be diff --git a/docs/gemset.nix b/docs/gemset.nix new file mode 100644 index 00000000..accd0620 --- /dev/null +++ b/docs/gemset.nix @@ -0,0 +1,279 @@ +{ + asciidoctor = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0yblqlbix3is5ihiqrpbfazb44in7ichfkjzdbsqibp48paanpl3"; + type = "gem"; + }; + version = "2.0.20"; + }; + asciidoctor-diagram = { + dependencies = ["asciidoctor" "asciidoctor-diagram-ditaamini" "asciidoctor-diagram-plantuml" "rexml"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0dln5m99ahgdbw7kncbg3lbq58qjcijjja1991nbkjmcsbmvadwj"; + type = "gem"; + }; + version = "2.2.9"; + }; + asciidoctor-diagram-ditaamini = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "13h65bfbq7hc7z3kqn0m28w9c6ap7fikpjcvsdga6jg01slb4c56"; + type = "gem"; + }; + version = "1.0.3"; + }; + asciidoctor-diagram-plantuml = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1firh66ig61ibailzvrmvnwn5n099v2wlzlfzpg0qilqs6nl9s9w"; + type = "gem"; + }; + version = "1.2023.5"; + }; + asciidoctor-foodogsquared-extensions = { + dependencies = ["asciidoctor" "rugged"]; + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0jkc89m22fwjc4qn481rxyv5yif2yqqhw3ib4d6qkqcv2a21448g"; + type = "gem"; + }; + version = "1.0.0"; + }; + ast = { + groups = ["default" "lint"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "04nc8x27hlzlrr5c2gn7mar4vdr0apw5xg22wp6m8dx3wqr04a0y"; + type = "gem"; + }; + version = "2.4.2"; + }; + concurrent-ruby = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0krcwb6mn0iklajwngwsg850nk8k9b35dhmc2qkbdqvmifdi2y9q"; + type = "gem"; + }; + version = "1.2.2"; + }; + json = { + groups = ["default" "lint"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0nalhin1gda4v8ybk6lq8f407cgfrj6qzn234yra4ipkmlbfmal6"; + type = "gem"; + }; + version = "2.6.3"; + }; + language_server-protocol = { + groups = ["default" "development" "lint"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0gvb1j8xsqxms9mww01rmdl78zkd72zgxaap56bhv8j45z05hp1x"; + type = "gem"; + }; + version = "3.17.0.3"; + }; + open-uri-cached = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "03v0if3jlvbclnd6jgjk94fbhf0h2fq1wxr0mbx7018sxzm0biwr"; + type = "gem"; + }; + version = "1.0.0"; + }; + parallel = { + groups = ["default" "lint"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0jcc512l38c0c163ni3jgskvq1vc3mr8ly5pvjijzwvfml9lf597"; + type = "gem"; + }; + version = "1.23.0"; + }; + parser = { + dependencies = ["ast" "racc"]; + groups = ["default" "lint"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1swigds85jddb5gshll1g8lkmbcgbcp9bi1d4nigwvxki8smys0h"; + type = "gem"; + }; + version = "3.2.2.3"; + }; + prettier_print = { + groups = ["default" "development"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1ybgks9862zmlx71zd4j20ky86fsrp6j6m0az4hzzb1zyaskha57"; + type = "gem"; + }; + version = "1.2.1"; + }; + racc = { + groups = ["default" "lint"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "11v3l46mwnlzlc371wr3x6yylpgafgwdf0q7hc7c1lzx6r414r5g"; + type = "gem"; + }; + version = "1.7.1"; + }; + rainbow = { + groups = ["default" "lint"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0smwg4mii0fm38pyb5fddbmrdpifwv22zv3d3px2xx497am93503"; + type = "gem"; + }; + version = "3.1.1"; + }; + rake = { + groups = ["development"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "15whn7p9nrkxangbs9hh75q585yfn66lv0v2mhj6q6dl6x8bzr2w"; + type = "gem"; + }; + version = "13.0.6"; + }; + regexp_parser = { + groups = ["default" "lint"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "136br91alxdwh1s85z912dwz23qlhm212vy6i3wkinz3z8mkxxl3"; + type = "gem"; + }; + version = "2.8.1"; + }; + rexml = { + groups = ["default" "lint"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "08ximcyfjy94pm1rhcx04ny1vx2sk0x4y185gzn86yfsbzwkng53"; + type = "gem"; + }; + version = "3.2.5"; + }; + rouge = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0pym2zjwl6dwdfvbn7rbvmds32r70jx9qddhvvi6pqy6987ack1v"; + type = "gem"; + }; + version = "4.1.2"; + }; + rubocop = { + dependencies = ["json" "language_server-protocol" "parallel" "parser" "rainbow" "regexp_parser" "rexml" "rubocop-ast" "ruby-progressbar" "unicode-display_width"]; + groups = ["lint"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1vklabd0510isqhikx4bfx5qn9g8pyj8h9jxryayp2wj8mx4kg74"; + type = "gem"; + }; + version = "1.54.1"; + }; + rubocop-ast = { + dependencies = ["parser"]; + groups = ["default" "lint"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "188bs225kkhrb17dsf3likdahs2p1i1sqn0pr3pvlx50g6r2mnni"; + type = "gem"; + }; + version = "1.29.0"; + }; + ruby-lsp = { + dependencies = ["language_server-protocol" "sorbet-runtime" "syntax_tree"]; + groups = ["development"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "03jx0157jpfrnww5ww6hnkprgzfv4m7ahiqzpjdjjrcb67jp5nh1"; + type = "gem"; + }; + version = "0.6.2"; + }; + ruby-progressbar = { + groups = ["default" "lint"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "0cwvyb7j47m7wihpfaq7rc47zwwx9k4v7iqd9s1xch5nm53rrz40"; + type = "gem"; + }; + version = "1.13.0"; + }; + rugged = { + groups = ["default"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "016bawsahkhxx7p8azxirpl7y2y7i8a027pj8910gwf6ipg329in"; + type = "gem"; + }; + version = "1.6.3"; + }; + sorbet-runtime = { + groups = ["default" "development"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1rvyynwl6wj9hpbm1ds08d3djxhj4c1mbg83wqa7dn5gw6ivsgvy"; + type = "gem"; + }; + version = "0.5.10904"; + }; + syntax_tree = { + dependencies = ["prettier_print"]; + groups = ["default" "development"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "162m5xhbiq315bncp49ziddws537dv09pqsgrzsrmhhsymhgy0zb"; + type = "gem"; + }; + version = "6.1.1"; + }; + unicode-display_width = { + groups = ["default" "lint"]; + platforms = []; + source = { + remotes = ["https://rubygems.org"]; + sha256 = "1gi82k102q7bkmfi7ggn9ciypn897ylln1jk9q67kjhr39fj043a"; + type = "gem"; + }; + version = "2.4.2"; + }; +} diff --git a/docs/shell.nix b/docs/shell.nix new file mode 100644 index 00000000..ec01ca4c --- /dev/null +++ b/docs/shell.nix @@ -0,0 +1,23 @@ +{ pkgs ? import { } }: + +with pkgs; + +let + gems = bundlerEnv { + name = "nixos-config-project-docs"; + ruby = ruby_3_1; + gemdir = ./.; + }; +in +mkShell { + packages = [ + gems + gems.wrappedRuby + bundix + + hugo + go + nodePackages.prettier + vscode-langservers-extracted + ]; +} diff --git a/flake.nix b/flake.nix index 6bb0e9b1..282da3ff 100644 --- a/flake.nix +++ b/flake.nix @@ -393,6 +393,7 @@ let pkgs = import nixpkgs { inherit system overlays; }; in { default = import ./shell.nix { inherit pkgs; }; + docs = import ./docs/shell.nix { inherit pkgs; }; } // (import ./shells { inherit pkgs; })); # Cookiecutter templates for your mama.