config | ||
cookiecutter/haskell | ||
githooks | ||
home-manager | ||
maint | ||
nixpkgs | ||
prog | ||
text/gemini | ||
vim-plugins | ||
.envrc | ||
.gitignore | ||
default.nix | ||
git-subtree.json | ||
overlays.nix | ||
README.markdown | ||
treefmt.toml |
Dmitry Bogatov's mono repository
This repository contains most of my projects, configuration files, and some vendored dependencies. You can read my reasoning for this unconventional approach in my blog post
Here is the index of things you can find in this repository:
-
Source of the gemlog that is currently hosted at gemini://tilde.pink/~kaction (also available via http proxy)
-
Collection of dot files together with declarative Nix profile containing programs that use these dotfiles. Also some useful scripts can be found in ./config/bin, although documentation is scarce.
-
Patched versions of someone's else projects:
-
Several of my own projects:
- Haskell bindings to GNU dbm
- Haskell interface to linux capabilities
- commune -- offline-first interface to github and gitea issues.
- run-many -- command line tool to run multiple commands with interleaved output.
- a5 -- collection of well-typeprinted solutions to high-school math tasks.
- capwrap -- wrapper that executes command with linux capabilities.
-
Collection of scripts and git hooks used to maintain this repository. Documentation is in script header.
-
Many abandoned and bit-rotten projects:
- Experiments to save couple kilobytes from binaries created by gcc.
- Some allocation-free C code.
- Several projects to write schema for real-world configurations in Dhall.
- Emacs plugin to update buffer environment with correct
shell.nix
. - Command line interface for the sourcehut forge. Superseded by tool maintained by sourcehut's developers.
- GNU Bash plugin to write .bashrc with lisp
- Nix function to import every file in the path into Nix store individually to maximize path sharing.
- Haskell library for explicitly "execute once" IO actions.
-
Multitude of experiments in different languages that never reached even 0.0.1 version.
Communication.
If you want to talk or send me a patch, you can use following email addresses:
$ echo fmthY3Rpb24vcHVibGljLWluYm94QGxpc3RzLnNyLmh0Cg== | base64 -d # this is public list address (preferred)
$ echo a2FjdGlvbkBkaXNyb290Lm9yZwo= | base64 -d # this is personal email address