Compare commits
10 Commits
4a39a6d181
...
main
Author | SHA1 | Date | |
---|---|---|---|
1a1f659c8a | |||
e25a2355c0 | |||
72ea5375ab | |||
0a2e0b643a | |||
6e98bd6a47 | |||
4334ffb6b2 | |||
00c7d93f7a | |||
8a78fe393e | |||
f9570c3901 | |||
c5889d9f71 |
17
TODO.md
17
TODO.md
@@ -1,10 +1,12 @@
|
|||||||
|
|
||||||
- [+] implement MVP
|
- [+] implement MVP
|
||||||
- [+] minimal catalog
|
- [x] minimal catalog => currently 124 entries
|
||||||
- [+] search catalog
|
- [x] search catalog
|
||||||
- [+] local current versions
|
- [x] local current versions
|
||||||
- [+] latest version, github strategy
|
- [x] latest version, github strategy
|
||||||
- [+] intall, github strategy
|
- [+] intall,
|
||||||
|
- [x] github+linux+x86_64+tgz strategy
|
||||||
|
- [ ] prompt user to override current file/symlink
|
||||||
|
|
||||||
- [*] code style => blake, defaults
|
- [*] code style => blake, defaults
|
||||||
|
|
||||||
@@ -34,6 +36,11 @@
|
|||||||
- [ ] GH release
|
- [ ] GH release
|
||||||
- [ ] pypi package
|
- [ ] pypi package
|
||||||
|
|
||||||
|
- [ ] landing page
|
||||||
|
- [x] publish catalog
|
||||||
|
- [ ] replace jinja2 with [minijinja](https://github.com/mitsuhiko/minijinja/discussions/523)
|
||||||
|
|
||||||
|
|
||||||
- [ ] open an issue in managed tool forge asking to add support for `--version` and semver
|
- [ ] open an issue in managed tool forge asking to add support for `--version` and semver
|
||||||
- [ ] open an issue in managed tool forge asking to add cliget install method
|
- [ ] open an issue in managed tool forge asking to add cliget install method
|
||||||
|
|
||||||
|
34
catalog.html.j2
Normal file
34
catalog.html.j2
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
|
||||||
|
<title>Cliget Catalog</title>
|
||||||
|
<style>
|
||||||
|
{% include 'styles.css' %}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<p>{{get_context()|length}} entries</p>
|
||||||
|
<table>
|
||||||
|
<thead>
|
||||||
|
<tr><th>name</th><th>repo</th><th>description</th></tr>
|
||||||
|
<thead>
|
||||||
|
<tbody>
|
||||||
|
{% for k,o in get_context().items()%}
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<a id="{{k}}" href="#{{k}}"> </a>
|
||||||
|
{%if "website" in o%}<a href="{{o.website}}">{{k}}</a>{%else%}{{k}}{%endif%}
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
{%if "github" in o%}<a href="https://github.com/{{o.github}}">x</a>{%else%} {%endif%}
|
||||||
|
</td>
|
||||||
|
<td><p>{{o.desc}}</p></td>
|
||||||
|
</tr>
|
||||||
|
{% endfor %}
|
||||||
|
</tbody>
|
||||||
|
<table>
|
||||||
|
<p>{{get_context()|length}} entries</p>
|
||||||
|
</body>
|
||||||
|
</html>
|
112
catalog.yaml
112
catalog.yaml
@@ -3,6 +3,12 @@ ab:
|
|||||||
desc: a tool for benchmarking your Apache Hypertext Transfer Protocol (HTTP) server
|
desc: a tool for benchmarking your Apache Hypertext Transfer Protocol (HTTP) server
|
||||||
website: https://httpd.apache.org/docs/2.4/programs/ab.html
|
website: https://httpd.apache.org/docs/2.4/programs/ab.html
|
||||||
|
|
||||||
|
amber:
|
||||||
|
website: https://amber-lang.com/
|
||||||
|
desc: a programming language transpiled into Bash Script
|
||||||
|
github: Ph0enixKM/Amber
|
||||||
|
tags: rust
|
||||||
|
|
||||||
arc:
|
arc:
|
||||||
desc: Easily create & extract archives, and compress & decompress files of various formats
|
desc: Easily create & extract archives, and compress & decompress files of various formats
|
||||||
github: mholt/archiver
|
github: mholt/archiver
|
||||||
@@ -24,6 +30,10 @@ atuin:
|
|||||||
desc: Magical shell history
|
desc: Magical shell history
|
||||||
github: ellie/atuin
|
github: ellie/atuin
|
||||||
|
|
||||||
|
axel:
|
||||||
|
desc: Lightweight CLI download accelerator
|
||||||
|
github: axel-download-accelerator/axel
|
||||||
|
|
||||||
bat:
|
bat:
|
||||||
desc: A cat(1) clone with syntax highlighting and Git integration
|
desc: A cat(1) clone with syntax highlighting and Git integration
|
||||||
github: sharkdp/bat
|
github: sharkdp/bat
|
||||||
@@ -71,6 +81,12 @@ diagram:
|
|||||||
github: esimov/diagram
|
github: esimov/diagram
|
||||||
tags: Go, diagram, ascii
|
tags: Go, diagram, ascii
|
||||||
|
|
||||||
|
difft:
|
||||||
|
desc: diff tool that compares files based on their syntax, not line-by-line
|
||||||
|
website: https://difftastic.wilfred.me.uk/
|
||||||
|
github: Wilfred/difftastic
|
||||||
|
tags: Rust, AST, tree-sitter
|
||||||
|
|
||||||
diskonaut:
|
diskonaut:
|
||||||
desc: Terminal disk space navigator, disk tree-map
|
desc: Terminal disk space navigator, disk tree-map
|
||||||
github: imsnif/diskonaut
|
github: imsnif/diskonaut
|
||||||
@@ -83,7 +99,7 @@ dt:
|
|||||||
desc: duct tape for your unix pipes
|
desc: duct tape for your unix pipes
|
||||||
website: https://dt.plumbing/
|
website: https://dt.plumbing/
|
||||||
github: so-dang-cool/dt
|
github: so-dang-cool/dt
|
||||||
tag: text-processing, Zig
|
tags: text-processing, Zig
|
||||||
|
|
||||||
dua:
|
dua:
|
||||||
desc: View disk space usage and delete unwanted data, fast.
|
desc: View disk space usage and delete unwanted data, fast.
|
||||||
@@ -111,6 +127,12 @@ feh:
|
|||||||
website: https://feh.finalrewind.org/
|
website: https://feh.finalrewind.org/
|
||||||
tags: C
|
tags: C
|
||||||
|
|
||||||
|
fend:
|
||||||
|
desc: Arbitrary-precision unit-aware calculator
|
||||||
|
website: https://printfn.github.io/fend/
|
||||||
|
github: printfn/fend
|
||||||
|
cargo:
|
||||||
|
|
||||||
ffmpeg:
|
ffmpeg:
|
||||||
desc: A complete, cross-platform solution to record, convert and stream audio and video
|
desc: A complete, cross-platform solution to record, convert and stream audio and video
|
||||||
releases: http://ffmpeg.org/releases/
|
releases: http://ffmpeg.org/releases/
|
||||||
@@ -127,7 +149,7 @@ flyscrap:
|
|||||||
desc: A standalone and scriptable web scraper in Go
|
desc: A standalone and scriptable web scraper in Go
|
||||||
github: philippta/flyscrape
|
github: philippta/flyscrape
|
||||||
website: https://flyscrape.com/
|
website: https://flyscrape.com/
|
||||||
tag: Go, scrapping
|
tags: Go, scrapping
|
||||||
|
|
||||||
fq:
|
fq:
|
||||||
desc: jq for binary formats - tool, language and decoders for working with binary and text formats
|
desc: jq for binary formats - tool, language and decoders for working with binary and text formats
|
||||||
@@ -181,19 +203,39 @@ httpx:
|
|||||||
pip:
|
pip:
|
||||||
tags: curl
|
tags: curl
|
||||||
|
|
||||||
|
hurl:
|
||||||
|
desc: run HTTP requests defined in a simple plain text format
|
||||||
|
github: Orange-OpenSource/hurl
|
||||||
|
website: https://hurl.dev/
|
||||||
|
|
||||||
hx:
|
hx:
|
||||||
fullname: helix
|
fullname: helix
|
||||||
desc: text editor, inspired by vim
|
desc: text editor, inspired by vim
|
||||||
|
|
||||||
|
ijq:
|
||||||
|
desc: interactive jq tool. Like jqplay for the commandline
|
||||||
|
repo: https://sr.ht/~gpanders/ijq/
|
||||||
|
website: https://gpanders.com/blog/making-ijq-fast
|
||||||
|
tags: Go
|
||||||
|
|
||||||
jaq:
|
jaq:
|
||||||
desc: A jq clone focussed on correctness, speed, and simplicity
|
desc: A jq clone focussed on correctness, speed, and simplicity
|
||||||
tag: rust
|
tags: rust
|
||||||
github: 01mf02/jaq
|
github: 01mf02/jaq
|
||||||
|
|
||||||
|
jc:
|
||||||
|
desc: converts the output of popular command-line tools, file-types, and common strings to JSON
|
||||||
|
github: kellyjonbrazil/jc
|
||||||
|
pip: jc
|
||||||
|
|
||||||
|
jinja2:
|
||||||
|
desc: CLI for Jinja2
|
||||||
|
github: mattrobenolt/jinja2-cli
|
||||||
|
|
||||||
jj:
|
jj:
|
||||||
desc: A Git-compatible DVCS that is both simple and powerful
|
desc: A Git-compatible DVCS that is both simple and powerful
|
||||||
github: martinvonz/jj
|
github: martinvonz/jj
|
||||||
tag: rust
|
tags: rust
|
||||||
|
|
||||||
|
|
||||||
jless:
|
jless:
|
||||||
@@ -208,13 +250,18 @@ jq:
|
|||||||
desc: json query
|
desc: json query
|
||||||
github: stedolan/jq
|
github: stedolan/jq
|
||||||
|
|
||||||
|
jqp:
|
||||||
|
desc: a TUI playground to experiment with jq
|
||||||
|
github: noahgorstein/jqp
|
||||||
|
tags: Go
|
||||||
|
|
||||||
just:
|
just:
|
||||||
desc: a handy way to save and run project-specific commands.
|
desc: a handy way to save and run project-specific commands.
|
||||||
github: casey/just
|
github: casey/just
|
||||||
tags: task runner, rust
|
tags: task runner, rust
|
||||||
|
|
||||||
k3d:
|
k3d:
|
||||||
desc: a lightweight wrapper to run k3s (Rancher Lab’s minimal Kubernetes distribution) in docker.
|
desc: a lightweight wrapper to run k3s (Rancher Lab's minimal Kubernetes distribution) in docker.
|
||||||
website: https://k3d.io/
|
website: https://k3d.io/
|
||||||
github: k3d-io/k3d
|
github: k3d-io/k3d
|
||||||
status: not a tar.gz
|
status: not a tar.gz
|
||||||
@@ -244,7 +291,7 @@ litestream:
|
|||||||
|
|
||||||
lnav:
|
lnav:
|
||||||
desc: An advanced log file viewer for the small-scale
|
desc: An advanced log file viewer for the small-scale
|
||||||
name: The Logfile Navigator
|
fullname: The Logfile Navigator
|
||||||
website: https://lnav.org/
|
website: https://lnav.org/
|
||||||
github: tstack/lnav
|
github: tstack/lnav
|
||||||
|
|
||||||
@@ -256,13 +303,18 @@ minify:
|
|||||||
desc: minifiers for web formats
|
desc: minifiers for web formats
|
||||||
website: https://go.tacodewolff.nl/minify
|
website: https://go.tacodewolff.nl/minify
|
||||||
github: tdewolff/minify
|
github: tdewolff/minify
|
||||||
tag: Go
|
tags: Go
|
||||||
|
|
||||||
minijail:
|
minijail:
|
||||||
desc: sandboxing and containment tool used in ChromeOS and Android
|
desc: sandboxing and containment tool used in ChromeOS and Android
|
||||||
website: https://google.github.io/minijail/
|
website: https://google.github.io/minijail/
|
||||||
github: google/minijail
|
github: google/minijail
|
||||||
|
|
||||||
|
minijinja:
|
||||||
|
desc: a powerful template engine for Rust with minimal dependencies based on the syntax and behavior of the Jinja2 template engine for Python
|
||||||
|
github: mitsuhiko/minijinja
|
||||||
|
website: https://docs.rs/minijinja/
|
||||||
|
tags: Rust
|
||||||
|
|
||||||
mintotp:
|
mintotp:
|
||||||
desc: generate TOTP from the terminal
|
desc: generate TOTP from the terminal
|
||||||
@@ -273,7 +325,7 @@ mintproxy:
|
|||||||
|
|
||||||
mlr:
|
mlr:
|
||||||
desc: Miller is like awk, sed, cut, join, and sort for name-indexed data such as CSV, TSV, and tabular JSON
|
desc: Miller is like awk, sed, cut, join, and sort for name-indexed data such as CSV, TSV, and tabular JSON
|
||||||
name: miller
|
fullname: miller
|
||||||
github: johnkerl/miller
|
github: johnkerl/miller
|
||||||
|
|
||||||
mosh:
|
mosh:
|
||||||
@@ -284,7 +336,7 @@ mosh:
|
|||||||
navi:
|
navi:
|
||||||
desc: Interactive cheatsheet tool for the command-line
|
desc: Interactive cheatsheet tool for the command-line
|
||||||
github: denisidoro/navi
|
github: denisidoro/navi
|
||||||
tag: rust
|
tags: rust
|
||||||
|
|
||||||
ndcu:
|
ndcu:
|
||||||
desc: a disk usage analyzer with an ncurses interface
|
desc: a disk usage analyzer with an ncurses interface
|
||||||
@@ -328,22 +380,26 @@ pylufic:
|
|||||||
qjs:
|
qjs:
|
||||||
desc: a small and embeddable Javascript engine.
|
desc: a small and embeddable Javascript engine.
|
||||||
fullname: QuiskJS
|
fullname: QuiskJS
|
||||||
releases: http://ffmpeg.org/releases/
|
website: https://bellard.org/quickjs/
|
||||||
|
|
||||||
|
|
||||||
qr:
|
qr:
|
||||||
desc: generate qr code
|
desc: generate qr code
|
||||||
github: Y2Z/qr
|
github: Y2Z/qr
|
||||||
|
|
||||||
|
qsv:
|
||||||
|
desc: CSV sliced, diced & analyzed
|
||||||
|
github: jqnatividad/qsv
|
||||||
|
tags: Rust
|
||||||
|
|
||||||
redo:
|
redo:
|
||||||
desc: create reusable functions from your history in an interactive way
|
desc: create reusable functions from your history in an interactive way
|
||||||
github: barthr/redo
|
github: barthr/redo
|
||||||
|
|
||||||
relpipe:
|
relpipe:
|
||||||
name: Relational pipes
|
fullname: Relational pipes
|
||||||
website: https://relational-pipes.globalcode.info/
|
website: https://relational-pipes.globalcode.info/
|
||||||
desc: Relational pipes are an open data format designed for streaming structured data between two processes.
|
desc: Relational pipes are an open data format designed for streaming structured data between two processes.
|
||||||
tag: text-processing
|
tags: text-processing
|
||||||
|
|
||||||
rlwrap:
|
rlwrap:
|
||||||
desc: A readline wrapper, with history and completion
|
desc: A readline wrapper, with history and completion
|
||||||
@@ -364,6 +420,24 @@ sake:
|
|||||||
github: alajmo/sake
|
github: alajmo/sake
|
||||||
website: https://sakecli.com/
|
website: https://sakecli.com/
|
||||||
|
|
||||||
|
semgrep:
|
||||||
|
desc: Lightweight static analysis for many languages. Find bug variants with patterns that look like source code.
|
||||||
|
website: https://semgrep.dev/
|
||||||
|
github: semgrep/semgrep
|
||||||
|
tags: ocaml, pattern
|
||||||
|
|
||||||
|
semgrepx:
|
||||||
|
desc: xargs for semgrep
|
||||||
|
github: icholy/semgrepx
|
||||||
|
tags: Go
|
||||||
|
|
||||||
|
sg:
|
||||||
|
fullname: ast-grep
|
||||||
|
desc: fast and polyglot tool for code structural search, lint, rewriting at large scale
|
||||||
|
github: ast-grep/ast-grep
|
||||||
|
website: https://ast-grep.github.io/
|
||||||
|
tags: rust
|
||||||
|
|
||||||
slugify:
|
slugify:
|
||||||
desc: generate sluged version of input
|
desc: generate sluged version of input
|
||||||
github: un33k/python-slugify
|
github: un33k/python-slugify
|
||||||
@@ -377,11 +451,13 @@ sk:
|
|||||||
desc: general fuzzy finder
|
desc: general fuzzy finder
|
||||||
github: lotabout/skim
|
github: lotabout/skim
|
||||||
cargo: skim
|
cargo: skim
|
||||||
tag: rust
|
tags: rust
|
||||||
|
|
||||||
so:
|
so:
|
||||||
desc: A terminal interface for Stack Overflow
|
desc: A terminal interface for Stack Overflow
|
||||||
github: samtay/so
|
github: samtay/so
|
||||||
|
cargo:
|
||||||
|
tags: rust
|
||||||
|
|
||||||
sqlite-utils:
|
sqlite-utils:
|
||||||
desc: manipulate sqlite db (ETL)
|
desc: manipulate sqlite db (ETL)
|
||||||
@@ -438,10 +514,16 @@ up:
|
|||||||
fullname: Ultimate Plumber
|
fullname: Ultimate Plumber
|
||||||
github: akavel/up
|
github: akavel/up
|
||||||
|
|
||||||
|
ugrep:
|
||||||
|
desc: a more powerful, ultra fast, user-friendly, compatible grep
|
||||||
|
github: Genivia/ugrep
|
||||||
|
website: https://ugrep.com/
|
||||||
|
tags: cpp
|
||||||
|
|
||||||
ups:
|
ups:
|
||||||
desc: Command line tools for manipulating UPS patch files
|
desc: Command line tools for manipulating UPS patch files
|
||||||
githb: rameshvarun/ups
|
githb: rameshvarun/ups
|
||||||
tag: language:go
|
tags: go
|
||||||
|
|
||||||
vd:
|
vd:
|
||||||
fullname: VisiData
|
fullname: VisiData
|
||||||
|
4
cmd.txt
4
cmd.txt
@@ -1,4 +1,6 @@
|
|||||||
|
|
||||||
. ./.venv/bin/activate
|
. ./.venv/bin/activate
|
||||||
|
|
||||||
|
jinja2 catalog.html.j2 catalog.yaml >| cliget.html
|
||||||
|
brotli -f -q 11 -S br cliget.html
|
||||||
|
./upload.sh
|
||||||
|
40
styles.css
Normal file
40
styles.css
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
:root {
|
||||||
|
--accent-bg: #F5F7FF;
|
||||||
|
--border: #D8DAE1;
|
||||||
|
--main-foreground: #5b4636;
|
||||||
|
--main-background: #f4f4f4;
|
||||||
|
}
|
||||||
|
|
||||||
|
body{max-width:80ch;padding:2ch;margin:auto;
|
||||||
|
color:var(--main-foreground);
|
||||||
|
background-color:var(--main-background);
|
||||||
|
}
|
||||||
|
|
||||||
|
a:link{text-decoration:none}
|
||||||
|
|
||||||
|
/* Format tables */
|
||||||
|
table {
|
||||||
|
border-collapse: collapse;
|
||||||
|
width: 100%
|
||||||
|
}
|
||||||
|
|
||||||
|
td,
|
||||||
|
th {
|
||||||
|
border: 1px solid var(--border);
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
th {
|
||||||
|
background: var(--accent-bg);
|
||||||
|
font-weight: bold;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
table td:nth-child(2) {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
tr:nth-child(even) {
|
||||||
|
/* Set every other cell slightly darker. Improves readability. */
|
||||||
|
background: var(--accent-bg);
|
||||||
|
}
|
Reference in New Issue
Block a user