about summary refs log tree commit diff
path: root/tools
AgeCommit message (Collapse)AuthorFilesLines
2019-12-21 r/276 feat(tools/cheddar): Check in new syntax highlighting toolVincent Ambo7-0/+772
The first step with this tool will be to use it as a source-filter for cgit. The second step is to use it as the Markdown renderer by depending on one of the Markdown libraries, with integration for rendering code snippets directly.
2019-12-20 r/237 chore: Significantly restructure folder layoutVincent Ambo26-2181/+0
This moves the various projects from "type-based" folders (such as "services" or "tools") into more appropriate semantic folders (such as "nix", "ops" or "web"). Deprecated projects (nixcon-demo & gotest) which only existed for testing/demonstration purposes have been removed. (Note: *all* builds are broken with this commit)
2019-12-20 r/235 feat(journaldriver): Add Naersk-based build configurationVincent Ambo1-0/+9
2019-12-20 r/233 merge(journaldriver): Merge journaldriver into tools/journaldriverVincent Ambo7-0/+1758
2019-12-20 chore(tools/journaldriver): Prepare tree for depot mergeVincent Ambo7-0/+1758
2019-12-20 r/209 fix(tools): Correctly resolve kms_pass->passVincent Ambo1-1/+2
The binary name doesn't match the one inside of the derivation, but this is intentional.
2019-12-20 r/208 fix(emacs.d): Correctly restore default font size in randr-singleVincent Ambo1-1/+1
2019-12-19 r/200 feat(emacs.d): Add key binding for opening telegaVincent Ambo1-1/+5
2019-12-19 r/199 feat(emacs): Add telega.el supportVincent Ambo2-0/+7
Packages the telega-server binary and adds the required mode into Emacs. Unread message count is displayed in the modeline, which is neat. Probably need to figure out some key bindings for this.
2019-12-19 r/198 fix(nix-util): Correctly enable lexical scope in this libraryVincent Ambo2-1/+2
2019-12-19 r/197 feat(emacs-pkgs): Introduce nix-util helper libraryVincent Ambo3-2/+80
Adds an Emacs library with so far a grand total of one helper function that can prefetch and insert a git repository at point. This is very useful for the various Go repo imports I am doing at the moment.
2019-12-17 r/179 feat(emacs.d): Set screen-specific default text scalesVincent Ambo1-3/+5
2019-12-17 r/178 feat(emacs.d): Add functions & bindings to manage global font sizeVincent Ambo2-4/+33
This makes it possible to quickly adjust the size of text in all frames using one keyboard shortcut. Each of these functions understands a prefix argument to mean "please only operate on the current buffer", hence the following bindings and effects: Global: * `C-=`: Increase the global font size (chosen because `+` lies on the `=` key) * `C--`: Decrease the global font size * `C-x C-0`: Restore the global default font size Local: * `C-u C-=`: Increase the local font size * `C-u C--`: Decrease the local font size * `C-u C-x C-0`: Restore the local default font size
2019-12-17 r/177 chore(emacs.d): Clean up unused functionsVincent Ambo1-23/+0
2019-12-17 r/176 feat(emacs.d): Add function to insert TODO commentsVincent Ambo2-0/+15
2019-12-17 r/175 chore(emacs.d): Include all git repos under ~/ in magitVincent Ambo1-1/+1
2019-12-17 r/174 fix(emacs.d): Fix regex passing in counsel-rgVincent Ambo1-1/+4
2019-12-17 r/173 refactor(emacs.d): Move ivy configuration to use-packageVincent Ambo3-21/+31
2019-12-17 r/172 fix(emacs.d): Disable C-x C-cVincent Ambo1-0/+1
2019-12-17 r/171 fix(emacs.d): Change binding for ivy-browse-repositoriesVincent Ambo1-1/+1
This avoids a conflict with some work tooling.
2019-12-17 r/170 fix(emacs): `withLocalEmacs` now loads packages via $EMACSLOADPATHVincent Ambo1-2/+4
For some reason setting the initial load-path via `--directory` does not work and leads to an Emacs without any packages.
2019-12-16 feat(emacs): Add 'withLocalEmacs' override functionVincent Ambo1-0/+12
This function makes it possible to build an Emacs instance that, instead of launching an Emacs built by Nix, configures an Emacs already present on the system to use the packages built by Nix. This **requires** that the versions of the two Emacsen (i.e. the one used by Nix to build and the one used to run the packages) are kept in sync, otherwise byte-code incompatibilities may lead to undefined behaviour.
2019-12-16 feat(emacs): Install 'request.el', an HTTP clientVincent Ambo1-0/+1
2019-12-16 r/167 feat(emacs): Add `withLocalConfig` override functionVincent Ambo2-8/+17
This function makes it possible to pass in a folder with additional local configuration from somewhere downstream.
2019-12-16 r/165 feat(emacs): Make list of packages overridableVincent Ambo1-5/+6
Exposes an `overrideEmacs` which can take a package function that receives the current package list and can make arbitrary modifications to it. This makes it possible for me to maintain a private overlay for e.g. work purposes with packages that should not be visible in my public repos.
2019-12-16 r/164 feat(emacs.d): Install refineVincent Ambo1-3/+2
2019-12-16 r/163 fix(emacs.d): Set correct magit-repository-directories pathVincent Ambo1-1/+2
This was set to my old home directory name from a different machine and I had low-key been wondering why it didn't work, but not enough to go do something about it.
2019-12-16 r/162 fix(term-switcher): Add dependency on vtermVincent Ambo2-2/+3
2019-12-16 r/161 fix(emacs.d): Only highlight current line in prog-modesVincent Ambo2-3/+1
This is extremely annoying in vterms, so now it's gone!
2019-12-16 feat(term-switcher): Use emacs-libvterm instead of launching X-termsVincent Ambo1-39/+22
2019-12-16 feat(emacs.d): Install and configure emacs-libvtermVincent Ambo2-0/+14
This incredible package provides a fully functional, libvterm based terminal emulator inside of Emacs. Killer feature: It's possible to switch the buffer into a full Emacs text mode (read-only) for selections and such.
2019-12-16 r/158 feat(aoc2019): Add solutions for day4Vincent Ambo1-0/+73
Finally an excuse to use some cl-defstruct magic in Elisp!
2019-12-16 r/157 feat(aoc2019): Add solution for day3/2Vincent Ambo1-17/+23
2019-12-15 chore(emacs.d): Use local term-switcher packageVincent Ambo3-3/+3
2019-12-15 refactor(emacs-pkgs): Extract term-switcher into separate emacs pkgVincent Ambo3-36/+86
2019-12-15 chore(emacs.d): Remove smartparensVincent Ambo3-4/+1
I actually find a lot of its behaviour very annoying, rather than smart. Good old electric-pair-mode usually does what I want.
2019-12-15 fix(emacs.d): Fix uses use-package's :config instead of :initVincent Ambo1-10/+10
In several places I used `:init` instead of `:config` and things worked due to lazy loading anyways. That's no excuse not to fix it though ...
2019-12-15 refactor(emacs.d): Use dottime from my dottime packageVincent Ambo3-17/+4
Instead of locally advicing format-time-string, use my dottime package.
2019-12-15 feat(emacs-pkgs): Check in separate dottime packageVincent Ambo2-0/+66
This package adds a toggle for displaying modeline time in dottime, as well as a function for formatting time as dottime generically.
2019-12-15 chore(emacs): Move carp-mode to third-partyVincent Ambo1-20/+2
2019-12-15 r/155 feat(emacs.d): Introduce custom mc/mark-dwim cursor markerVincent Ambo2-0/+28
Adds a "do what I mean" multiple-cursor selection with the logic that I find most useful: * If there is no active region, mark the next line (or lines, based on prefix argument) * If there is an active region that spans multiple lines, call `mc/edit-lines` * If there is an active region on a single line, trigger a custom selection hydra with functionality equivalent to `mc/mark-more-like-this-extended` but a slightly improved user experience Hopefully this will make it easier to get into the habit of actually using multiple-cursors without calling the mc commands via M-x
2019-12-15 r/154 chore(emacs.d): Comment out not-currently-used email bindingsVincent Ambo1-3/+3
2019-12-14 r/152 chore(tools): Add 'rink'Vincent Ambo2-0/+4
2019-12-14 r/151 refactor(tools): __dispatch.sh now uses relative pathsVincent Ambo2-3/+3
This enables usage of __dispatch.sh from anywhere, even outside of the depot. Specifically this means I can add `~/depot/bin` to my $PATH and all the registered tools work from anywhere.
2019-12-14 r/150 fix(emacs.d): Fix loading of custom.elVincent Ambo1-3/+2
2019-12-14 r/149 feat(emacs.d): Add function to open depot in magitVincent Ambo1-3/+3
2019-12-14 r/147 chore(emacs.d): Clean up <tab> bindingsVincent Ambo2-20/+9
One simple rule to rule them all: In prog-mode, <tab> tries to invoke company.
2019-12-14 r/146 fix(emacs.d): Let emacs write to customize configurationVincent Ambo1-3/+10
Configures Emacs' `customize` to write directly to my Emacs configuration. This comes with the caveat that the new config will only be loaded if my Emacs is rebuilt.
2019-12-14 r/145 feat(tools/emacs): Build fully pre-configured EmacsVincent Ambo1-13/+12
Builds an Emacs that is not only configured with the required packages but with the entire Emacs configuration for my personal setup. This means that `nix-env -iA tools.emacs` will install a fully-configured Emacs that can be launched as the window manager from my ~/.xsession.
2019-12-14 r/144 chore(emacs.d): Move init/* to config/*Vincent Ambo11-23/+17