This is a morph of the `pkgs.lib.generators.toINIWithGlobalSection`
function, which is simplified, inlined, and takes lists instead of
attrsets. This makes the key ordering stable and is easy to generate
from dhall.
Ideally I’d upstream it at one point (in the sense that
`generators.toINI` can also take lists), but that will be a lot more
work that is not necessary atm.
Change-Id: I7d6c129cfee9faedb62f69d479e59a6e05bb7ac6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5529
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
It’s often not obvious what dhall command to run to (type)-check the
dhall files directly without the nix roundtrip.
Now we just print the command, easy to copy.
Change-Id: I704a647bff13f73d5a1b1d33b00a46bcb1a9de4e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5528
Reviewed-by: Profpatsch <mail@profpatsch.de>
Tested-by: BuildkiteCI
Use the dhall/dhall-nix from nixpkgs, override with current master
plus one commit that fixes dhall-nix.
We might want switch back to dhall from nixpkgs for the dhall packages
instead of using the static binaries.
Change-Id: I76b900e85e1a9e9ef8d1512c15b830e3aa798baa
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5523
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
aerc is a mail client. It needs some ini files to work.
This is an initial attempt at generating them.
Change-Id: I087955f19d2c4527275500a1e13eeb071c98a7b9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5526
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
If no type annotation is given, debugging errors gets a lot harder
because there is nothing to compare it against.
But we can tell dhall to print the type first (this means double
evaluation, but that’s an optimization problem to be solved later).
Change-Id: Icf793828070cd6bb8daeb4c07de3162a5e064653
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5525
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
nix-shell pollutes the environment with all sorts of variables. Let's
just add the tools to the PATH?
This also papers over the various differences in users `use_nix`
implementations by not using it at all.
Change-Id: If4282531fd6b7453b3611fe50217beacadc08bb5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5524
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
I figured out that the problem came from me installing alacritty in my
home profile, which was out of sync with my system closure’s opengl.
Updating the home profile “fixed” it.
Change-Id: I1e2b3a91da9a3ab8c47182e0e0a8e69b9285c75b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5522
Reviewed-by: Profpatsch <mail@profpatsch.de>
Reviewed-by: sterni <sternenseemann@systemli.org>
Tested-by: BuildkiteCI
org is now bundled, so the expression becomes a bit simpler
Change-Id: Ic287ae4500bb5a277694b66e5858a75b454cc9aa
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5517
Tested-by: BuildkiteCI
Autosubmit: sterni <sternenseemann@systemli.org>
Reviewed-by: grfn <grfn@gws.fyi>
This adds the //nix/lazy-deps tool at //lazy-deps in tvl-kit.
A CI step is added for the kit that uses this to lazily build an
example tool (magrathea).
Change-Id: Ibd6d69c83b87bd6e0766942d73297621f2593113
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5514
Tested-by: BuildkiteCI
Reviewed-by: ezemtsov <eugene.zemtsov@gmail.com>
This modifies the envrc configuration to add the result of building
//tools/depot-deps to $PATH, instead of dispatching through the
manually maintained list of symlinks.
While at it, I've cleaned up some stuff from that list that is no
longer actually used.
Change-Id: If345c44da75b23c06b7c7f435be0cb02f99aaac5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5513
Tested-by: BuildkiteCI
Reviewed-by: ezemtsov <eugene.zemtsov@gmail.com>
There is a reoccuring problem in readTree-type repositories that use
nix-shell, where evaluation of the full set of dependencies that
should be made available to users takes a noticeable amount of time,
slowing down operations when `direnv` is involved.
In depot, we have so far fixed this by maintaining a manual `//bin`
directory which contains a set of symlinks to a central dispatch
script that can dispatch to various tools in depot lazily.
This script can instead be generated ad-hoc by Nix (pretty fast if we
can make assumptions like `git` and `nix-build` existing on user's
machines already) and added to $PATH.
The function introduced in this commit implements the logic for that.
The structure of the script is based on the existing
`//bin/__dispatch`.
This does not yet switch depot's envrc to use this new method of
installing dependencies lazily.
Change-Id: I92efcd9bb6aa51aa2709ad910a464e9dac97ee89
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5512
Tested-by: BuildkiteCI
Reviewed-by: ezemtsov <eugene.zemtsov@gmail.com>
in some cases, users might want to pass through flags for
nix-build (such as `-j`).
magrathea now accepts these as arguments to `mg build`, as long as
they are separated by `--`.
the arguments passed to `mg build` are parsed into a proper record,
which enables us to show users very clear error messages in case they
forget to use the `--` separator and keeping us future-compatible with
more potential arguments to magrathea itself.
Change-Id: I81f5d9db52779a5cc3b8bbdd975316274fffe5fc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5507
Tested-by: BuildkiteCI
Reviewed-by: ezemtsov <eugene.zemtsov@gmail.com>
Reviewed-by: asmundo <asmundo@gmail.com>
Some things were kinda out of date ...
Change-Id: Idc8430299c76423a41fb6d952caff4696cc4d71f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5508
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
* //3p/farmhash: drop, as it is unused and started to fail
* //3p/overlays/tvl:
- patch barrier to work with gcc 11
- disable outdated test suite for python38Packages.backports-zoneinfo
which still assumes zoneinfo 2020a.
* //3p/overlays/haskell: patch generic-arbitrary to avoid neg resizes
* //users/grfn/achilles: disable CI due to linking trouble (ugh).
* //users/grfn/system/home/games: Disable DFHack for dwarf fortress as
it's now failing to build
Refs: ENG-328
Change-Id: I4e1ee8fd9525d4868b82f9bad8ca5f09e7fdb9d0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5506
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
undo-tree recently change dsome behaviour and started barfing "history
backup files" all over the place. These are really annoying and this
commit disables them completely.
Change-Id: I1c4ac0b12ba12d1f45c3f0516d16ba4f1f090700
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5504
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
This PR fixed issues with build user management by waiting for in-use
build users to become available instead of failing the build:
https://github.com/NixOS/nix/pull/3564
I backported it to 2.3 in the Github repository this commit points to.
Change-Id: Id22ba202c675a20203bdbcdc776c1c2ee7c0fc68
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5488
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Changes:
* updated keycloak configuration for new version
* migrate to emacs28 outside of //users, re-add emacs27 but with a
warning attached urging people to migrate
Change-Id: I3e5765a63934541f72f6c4a8673d3b4671850c93
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5501
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: wpcarro <wpcarro@gmail.com>
Cleans up a whole bunch of things I wanted to get out of the door
right away:
* depot internal references to //third_party/nixery have been replaced
with //tools/nixery
* cleaned up files from Github
* fixed SPDX & Copyright headers
* code formatting and inclusion in //tools/depotfmt checks
Change-Id: Iea79f0fdf3aa04f71741d4f4032f88605ae415bb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5486
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
This does not fully change the build structure of Nixery to be
depot-compatible yet, but should allow most targets to be built in
depot CI.
This contains some hacks to work around surface incompatibilities
which we'll clear away later.
Change-Id: I84e7734334abbe299983956f528c0897f49fa8c2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5485
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>
This absorbs a josh-filtered Nix subtree into depot, at
//tools/nixery.
This subtree was created through `josh-filter ':prefix=tools/nixery'`,
which allows a filter on tools/nixery to yield the same commit hashes
as the original Nixery repository (allowing for history continuity).
Change-Id: Icc1a99bf1248226b91f437b0a90361d36fb0d327
When quoting a post containing a tgsa quote, the entire quote was
previously erased. Doing it this way will leave the Telegram link in it.
Change-Id: I53bfadd0615734f7e219b20509858d9b73c908a4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5482
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
The link shortening was in place because posts with image URLs that
were too long would not get recognised as valid image links.
astral has fixed this after my report:
https://forums.somethingawful.com/showthread.php?threadid=3999866
I verified this with the example post that has a bunch of images and
such in it.
Thanks astral!
Change-Id: I60e90fd52020ee5464c931a4dde91382c8a149ab
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5481
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Audio can not be embedded on these stupid dead comedy forums, but
people can click through to listen.
Change-Id: I6e28636e69e424bb8cbc6b92963d1b28b3c04bf6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5478
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
I couldn't figure out how to get the ID for the `single=1` mode for
linking to a video directly, but linking to the post in embed mode
should also work.
Change-Id: Iebbd62724c36cee227a7c24968617ab418e8bd0c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5467
Tested-by: BuildkiteCI
Reviewed-by: tazjin <tazjin@tvl.su>