about summary refs log tree commit diff
path: root/third_party
AgeCommit message (Collapse)AuthorFilesLines
2021-04-03 r/2422 refactor(3p/rust-crates): use imported buildRustCrate everywheresterni1-28/+28
A bit less noisy in the definitions and the nix parser can already detect it being misspelled. Change-Id: I979da11471187e36cde5c015aaf654f925757a8b Reviewed-on: https://cl.tvl.fyi/c/depot/+/2814 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2021-04-03 r/2421 feat(3p/rust-crates): get dependencies from the depot fix pointsterni1-1/+3
I think it is good practice to always get dependencies from the depot fix point if they are exposed. The reasoning for this is that if we improve the support for overriding in depot, say by introducing a depot.extend functions or even full blown overlay support, this will already work as expected. Change-Id: Ibb8dffcf32e8f46817a2db2da26139fabdce55bc Reviewed-on: https://cl.tvl.fyi/c/depot/+/2770 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2021-04-03 r/2419 chore: move all 3p buildRustCrate derivations to //third_partysterni2-0/+276
Profpatsch and me are basically the only users of depot.users.Profpatsch.writers.rustSimple*. To pull in the odd dependency we usually use buildRustCrate which is rather convenient. However we've picked up the bad habit of inlining these in a let somewhere instead of managing them in a more central location although there has been an (unsuccesful) attempt at this in //users/Profpatsch/rust-crates.nix. This CL moves all buildRustCrate based derivations into third_party.rust-crates and deletes any duplicate derivations we have accumulated in the tree. Change-Id: I8f68b95ebd546708e9af07dca36d72dba9ca8c77 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2769 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: Profpatsch <mail@profpatsch.de>
2021-04-03 r/2418 feat(3p/apereo-cas): add the LDAP DN to the list of attributesLuke Granger-Brown1-2/+4
Panettone currently uses the LDAP DN as the user key, so we collect it here so that we can later make sure its exposed to Panettone. Change-Id: Ia2048cb479a2afe6fe9f47181115ae7ec13dedf3 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2811 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: glittershark <grfn@gws.fyi>
2021-04-03 r/2417 chore(3p/apereo-cas): move TVL configLuke Granger-Brown1-0/+3
There's some non-secret config that made its way into the secrets file. This CL moves it into git so we can track it properly. Change-Id: I3f5bf5e1f7addabb199997fb7b1f805b9157fbbe Reviewed-on: https://cl.tvl.fyi/c/depot/+/2810 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2021-04-03 r/2415 chore(3p/gerrit_plugins): init oauthLuke Granger-Brown3-0/+72
Add the OAuth gerrit plugin to our mini collection of Gerrit plugins. This includes a patch to make the plugin work correctly with CAS 6.x, which has changed the attributes into a JSON object with the attributes nested inside, instead of a JSON list. Change-Id: I4741f137cca9c8eb45b9ea660fb4cbf6962be9a4 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2782 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2021-04-03 r/2413 feat(3p/lisp): Add cl-smtpGriffin Smith2-0/+29
Change-Id: Idbf63e346b696fb6704390d7a76a2f2b2d3bc190 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2802 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2021-04-03 r/2412 chore(3p/gerrit_plugins): attempt to stabilise hashes a bitLuke Granger-Brown1-7/+3
I'm dropping the leaveDotGit and deepClone bits; they were set like that purely to try to make the build stamping work. In practice, not only does the build stamping not work, but it also means we hit some inconveniently-different hashes from time to time when gitiles does... something??? on its backend. I'm also putting some gcroots for these on whitby, which should also help a bit, although it's a bit of a hack. Change-Id: Ie6082248393e62795c18b1971fc2d16f4e8cc81d Reviewed-on: https://cl.tvl.fyi/c/depot/+/2781 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2021-04-02 r/2400 feat(3p/cgit): limit width of div#summary, i. e. /about/**sterni2-0/+5
Decreased text width for the /about pages should increase readability considerably as jumping back to the beginning is hard for longer lines. The result is still not perfect as the font size for the /about pages is rather small and many lines thus get broken somewhat awkwardly. We could probably migitate that using a larger font size. The implementation choice of adding a tvl-extra.css which we inject into cgit.css in preBuild is for simplicity: We don't need to worry about routing an extra CSS file and loading it from the right location via extra cgit head entries and serving it at the correct location using either nginx or thttpd. A drawback of this is however that iteration is slowed down by cgit's compilation time. Additionally, this should be the basis for implementing a bubblegum themed cgit for Profpatsch. Change-Id: I18060f735167acd623cef7a17c83408978461249 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2756 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2021-04-02 r/2397 feat(3p/cgit): enableParallelBuildingsterni1-0/+2
This gives a decent compilation speedup even on slow machines, so seems worth it. Let's hope the cgit build process is not racy. Change-Id: Ic4ae72789da2ccae16fd48e46aec624244b25035 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2755 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2021-04-01 r/2394 feat(web/bubblegum): nix CGI programming frameworksterni1-0/+1
So here is what has been keeping me up at night: At some point I realized that nix actually made a somewhat passable language for CGI programming: * That `builtins.getEnv` exists as one of the impurities of Nix is perfect as environment variables are the main way of communication from the web server to the CGI application. * We can actually read from the filesystem via builtins.readDir and builtins.readFile with bearable overhead if we avoid importing the used paths into the nix store. * Templating and routing are convenient to implement via indented strings and attribute sets respectively. Of course there are obvious limitation: * The overhead of derivations is probably much to great for them to be useful via IfD. * Even without derivations, nix evaluation is very slow to the point were a trivial application takes between 100ms and 400ms to produce a response. * We can't really cause effects other than producing a response which makes it not viable for a lot of applications. There are some ways around this: * With a custom interpreter we could have streaming and multiplexed I/O (using lazy lists emulated via attrsets) to cause such effects, but it would probably perform terribly. * We can use builtins.fetchurl to call other HTTP-based microservices, but only in very limited constraints, i. e. only GET, no headers, and only if the tarball ttl is set to 0 in the global nix.conf. * Terrible error handling capabilities because builtins.tryEval actually doesn't catch a lot of errors. To prove that it actually works, there are some demo applications, which I invite you to run and potentially break horribly: nix-build -A web.bubblegum.examples && ./result # navigate to http://localhost:9000 The setup uses thttpd and executes the nix CGI scripts using users.sterni.nint which automatically passed `depot`, so they can import the cgi library. Change-Id: I3a22a749612211627e5f8301c31ec2e7a872812c Reviewed-on: https://cl.tvl.fyi/c/depot/+/2746 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2021-04-01 r/2390 chore(third_party/cgit): use lib instead of stdenv.libFlorian Klink1-5/+6
Getting `lib` from `stdenv.lib` is deprecated, and throws warnings. Change-Id: Ic925818c1b5a67d15d6d40ad784554328cd603e0 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2751 Reviewed-by: lukegb <lukegb@tvl.fyi> Reviewed-by: glittershark <grfn@gws.fyi> Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2021-04-01 r/2384 feat(third_party): init hii at 1.0.0Profpatsch1-0/+3
`hii` is a derived rewrite of suckless’s `ii`. It is not backwards compatible. Change-Id: Ife2a43863b5b6ba38333d7ae5f2cb9bd4787b5fc Reviewed-on: https://cl.tvl.fyi/c/depot/+/2706 Tested-by: BuildkiteCI Reviewed-by: lukegb <lukegb@tvl.fyi> Reviewed-by: sterni <sternenseemann@systemli.org>
2021-04-01 r/2383 feat(third_party): add dhall packages from easy-dhall-nixProfpatsch1-1/+20
About to do some dhalllll! \o/ Change-Id: Ie58c335d80f4a5abeb8296ece5a24377f07e6369 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2585 Tested-by: BuildkiteCI Reviewed-by: lukegb <lukegb@tvl.fyi>
2021-03-31 r/2372 chore(tvix): Add doc build infrastructureadisbladis1-0/+1
Change-Id: I2cf67df085d0c008b5ff5efff2235a670207024a Reviewed-on: https://cl.tvl.fyi/c/depot/+/2711 Tested-by: BuildkiteCI Reviewed-by: flokli <flokli@flokli.de> Reviewed-by: tazjin <mail@tazj.in>
2021-03-29 r/2358 feat(gws.fyi): Add some very light CSSGriffin Smith1-0/+1
web-brutalism is so 3 years ago, bro but seriously, I'd like to start putting some actual stuff here, so let's make it look halfway-decent. Change-Id: Ic78d725b3755c2307c7ea155af8d0f90e287830c Reviewed-on: https://cl.tvl.fyi/c/depot/+/2697 Reviewed-by: glittershark <grfn@gws.fyi> Tested-by: BuildkiteCI
2021-03-27 r/2351 fix(3p/lisp/puri): Use fetchgit for source, update versionGriffin Smith1-4/+3
Something changed in the upstream we fetch this source from that's causing the fetch to fail - I can only assume it's a yanked rev, but I'm not really sure. fetchgit from nixpkgs appears to be a little bit more robust than builtins.fetchGit, so let's switch to that, and also upgrade to a rev that we know is present. Fixes: b/96 Change-Id: I8983c2df11ab4fa20f60915f950c6a7378efd2fd Reviewed-on: https://cl.tvl.fyi/c/depot/+/2691 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org>
2021-03-26 r/2333 chore(3p): use haskell-language-server from nixpkgssterni3-298/+0
Upstream haskellPackages has a newer haskell-language-server than we had and it is always in sync with the default GHC version of that package set which we incidentally use to build all haskell derivations in depot. I hope this will not cause us more trouble in the future, but I've gotten the impression that maralorn makes an effort to prevent haskell-language-server from being broken in haskellPackages, so ideally we'll never have to worry about hls again. If we do have to, we may need to switch to easy-hls-nix. Note that I haven't had the time yet to verify that the shells actually work since it's kinda late now and the rebuilds are many. Change-Id: I74c192d57355904cfa45bb76d70346792ba05af5 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2662 Tested-by: BuildkiteCI Reviewed-by: glittershark <grfn@gws.fyi>
2021-03-26 r/2330 chore(3p): bump NixOS channels to 2021-03-25sterni3-8/+11
OpenSSL released an update which fixes two severity high security issues: * https://mta.openssl.org/pipermail/openssl-announce/2021-March/000197.html * https://mta.openssl.org/pipermail/openssl-announce/2021-March/000198.html Update to the nixpkgs (currently still master) commits updating OpenSSL. Other changes: * Use GHC 8.8.4 for haskell-language-server as GHC 8.8.3 got removed from nixpkgs last friday. Change-Id: Ic1b2f49284e78193a4330da4bb4b718a797f5ab1 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2653 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: lukegb <lukegb@tvl.fyi> Reviewed-by: glittershark <grfn@gws.fyi>
2021-03-25 r/2328 chore(3p): Clean up unused third-party packagesVincent Ambo77-3838/+0
Removes the following currently unused packages: * terraform-gcp * cpp.googleapis * nixery Change-Id: I02c38f0e6d23b1b9008706ca5a3b9db51cc9b689 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2650 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org> Reviewed-by: glittershark <grfn@gws.fyi>
2021-03-24 r/2327 fix(gemma): Fix build by backporting Elm 0.18Vincent Ambo1-0/+15
Backports an old version of the Elm language (before the release where they made everyone rewrite their programs), from the same old nixpkgs commit as was previously used in overrides (see CL/2646). Change-Id: I0ae4cc611aa40269b290651ab982c1db93518d8a Reviewed-on: https://cl.tvl.fyi/c/depot/+/2649 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org>
2021-03-23 r/2323 chore(3p/gopkgs): 'depot.buildGo' -> 'depot.nix.buildGo'Vincent Ambo31-31/+31
This makes it possible to deprecate the previous alias. Change-Id: I6efe73a21dc771cfa28094bbac434a188aebfd45 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2647 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org>
2021-03-21 r/2304 chore(3p/gerrit_plugins): Build plugins separately in CIVincent Ambo1-2/+1
Change-Id: I76aeaa879e43b1fd08440f60a4f320bb7b48c6ab Reviewed-on: https://cl.tvl.fyi/c/depot/+/2630 Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI
2021-03-21 r/2303 chore(3p/gerrit): Update pinned dependency hashVincent Ambo2-3/+3
Change-Id: I1807ac1771d23b00e3a78cc36fb2f82a12900993 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2629 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org>
2021-03-21 r/2297 feat(3p): Import nix-community/impermanence moduleVincent Ambo1-0/+12
Change-Id: I5b9386b1db74dafe921d7957bc726cfba403c155 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2618 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org>
2021-03-20 r/2291 chore(gs/achilles): Integrate with the depot buildGriffin Smith1-0/+1
Get achilles building in Nix as part of the depot's build tree. This involved making it work with stable rust, since the depot only exposes stable rust to sub-packages, which turned out to be fairly straightforward. Also adds libffi as a new top-level expose, since it's required to build achilles Change-Id: I5f6dedb26c0b81ec258aedde1973e74903c07ece Reviewed-on: https://cl.tvl.fyi/c/depot/+/2612 Reviewed-by: sterni <sternenseemann@systemli.org> Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2021-03-20 r/2290 chore(3p/exposed): Add glittershark to OWNERSGriffin Smith1-0/+1
Change-Id: I17474fbee75666d825b4c4db1af37fff1e214818 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2611 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: sterni <sternenseemann@systemli.org>
2021-03-19 r/2289 fix(gs/xanthous): update xanthous.cabal, make CI catch such errorssterni1-6/+16
Since xanthous has a checked-in package.yaml and cabal file, the haskellPackages build infrastructure will use the package.yaml file for all builds. The resulting problem is that our CI won't actually catch build failures that would be observable with cabal or when building from the sdist. We fix that by filtering out the package.yaml file in pkg.nix additionally to the filters specified in .gitignore. For this we need gitignoreFilter from gitignore.nix which we expose as part of a functor set from third_party.gitignoreSource to maintain interface compatibility. Change-Id: I337185f484d2027341f38031dcd78898706904eb Reviewed-on: https://cl.tvl.fyi/c/depot/+/2609 Tested-by: BuildkiteCI Reviewed-by: glittershark <grfn@gws.fyi> Reviewed-by: tazjin <mail@tazj.in>
2021-03-19 r/2288 chore(gs/xanthous): fix for hgeometry 0.12.0.1sterni1-15/+1
The breaking removal of triangulationEdges was not that big of a deal after all: It was just renamed to edgesAsPoints apparently, so the fix is easy enough and we can save one override. hgeometry-combinatorial's doctests seem to trigger some kind of GHC dynamic linking bug (https://github.com/noinia/hgeometry/issues/132) so we disable the tests. Change-Id: Iba2a64cade4d1a55fa4b81846e1116f282d4590a Reviewed-on: https://cl.tvl.fyi/c/depot/+/2608 Tested-by: BuildkiteCI Reviewed-by: glittershark <grfn@gws.fyi>
2021-03-19 r/2286 fix(gs/xanthous): fix build failures caused by dependency updatessterni1-0/+26
The following changes in dependencies of xanthous broke the build and have been fixed in this CL. Thus we can reenable CI for xanthous. * random 1.2.0 removed the Read instance for StdGen, so we need use System.Random.Internal to un-newtype StdGen into an SMGen in the appropriate places as that type still has a Show and Read instance. Requires a new direct dependency on splitmix as well. * witherable 4.0 renamed Data.Witherable into Witherable and no longer exports Filter. * random 1.2.0 probably also broke the Function instance for GameState which contains a StdGen. I'm not exactly sure which change exactly triggered this, but the fix is easy enough: We implement a Function instance for SMGen using functionShow allowing us to write a Function instance for StdGen using functionMap. I've put these instances into Xanthous.Orphans. * hgeometry 0.12.0.0 removes the triangulationEdges function (which is also not mentioned in the changelog, so I'm not sure if there's a replacement yet). Fix by pinning to 0.11.0.0 for now. * hedgehog-classes: relax bounds on semirings Change-Id: I3617d8916d753b386c9fa80062be6bcbdfee0131 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2607 Tested-by: BuildkiteCI Reviewed-by: glittershark <grfn@gws.fyi>
2021-03-19 r/2285 chore(3p/haskell_overlay): remove obsolete overridessterni3-253/+0
I actually wanted to check up on regex-tdfa-text in owothia, but realized it was actually in a dependency. When porting the patch for chatter to nixpkgs, I wondered if we could get rid of other overrides or if we need to fix anything else in upstream. * aeson, attoparsec, cassava, psqueues, hedgehog: jailbreaks are no longer necessary * fgl, fgl-arbitrary: upstream has the versions pinned by now * hgeometry, hgeometry-combinatoral: upstream has moved past the pinned versions, but we don't need to keep them downgraded as xanthous's build is not broken by them. * random-source: the upstream compiler shouldn't crash anymore, additionally upstream has the version pinned here currently * semialign: upstream also has 1.1.0.1 by now * splitmix: splitmix has been fixed upstream and haskellPackages has moved past 0.1 * hspec-core: test suite passes or upstream has disabled it as well * QuickCheck: upstream advanced to the same version * vinyl: upstream moved past the pinned version, causes no build failures * comonad-extras: has been fixed upstream Change-Id: I34eff81ceaac005f2ad90dd9c1d3e623b8da91c0 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2606 Tested-by: BuildkiteCI Reviewed-by: glittershark <grfn@gws.fyi>
2021-03-19 r/2284 chore(3p): bump NixOS channels to 2021-03-18sterni3-9/+9
Making this a monthly service apparently. Necessary changes: * 3p: expose emacs27 instead of emacs26 which got removed users/tazjin/{camden, frog}: switch from emacs26 to emacs27 * 3p/lieer: google_api_python_client got renamed to google-api-python-client Change-Id: I1011665d10eebc99990addbef6a8a6b000b93896 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2605 Tested-by: BuildkiteCI Reviewed-by: glittershark <grfn@gws.fyi> Reviewed-by: tazjin <mail@tazj.in>
2021-03-15 r/2280 feat(ops/dns): Import tvl.fyi DNS zone into depotVincent Ambo1-0/+1
Imports the current state of the tvl.fyi zone and configures simple CI checks on the file format. No deployment automation exists for this (yet?). Change-Id: Ia7d72e02b9f6d3adef994c5dc1898cc0df9dfcfb Reviewed-on: https://cl.tvl.fyi/c/depot/+/2600 Tested-by: BuildkiteCI Reviewed-by: glittershark <grfn@gws.fyi> Reviewed-by: sterni <sternenseemann@systemli.org>
2021-03-11 r/2276 feat(users/sterni/htmlman): static site generator for manual pagessterni2-0/+2
htmlman is a very simple nix based static site generator which is intended for rendering HTML representations for man pages plus an index page listing all available pages. For the sake of simplicity (and unlike previous iterations of this piece of code) other documentation artifacts and formats are not supported. Usually web services like GitHub and depot's web interface are pretty good at displaying "normal" documentation artifacts like markdown files, but man pages are usually not rendered — with the additional problem that it's source is virtually unreadable. htmlman should provide a simple static site generator which can be plugged into GitHub actions or the like to automatically generate rendered version of man pages tracked in version control. Change-Id: Ib53292964b3ff84c32d70c5fde257a2edb8c2122 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2596 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: Profpatsch <mail@profpatsch.de> Reviewed-by: sterni <sternenseemann@systemli.org>
2021-02-19 r/2223 chore(3p): Remove git-bugVincent Ambo1-37/+0
We stopped using this in favour of //web/panettone quite a while ago, so lets clean it up. Change-Id: I8aa8d86288933d470ab3962ffbb60294eaddd27b Reviewed-on: https://cl.tvl.fyi/c/depot/+/2540 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org> Reviewed-by: lukegb <lukegb@tvl.fyi>
2021-02-19 r/2221 chore(3p): Bump NixOS channels to 2021-02-18sterni6-18/+9
Main motivation for this is to get the openldap update that fixes 10 CVEs: CVE-2020-36221 to including CVE-2020-36230. See also this issue which lists them all: https://github.com/NixOS/nixpkgs/issues/113490 Someone should also redeploy whitby as soon as this lands in canon and all build failures have been fixed. Things done to resolve upstream breakages: * grpc no longer takes abseil-cpp as an input, it has also been removed in the override. * Upgrade glittershark's kernel to 5.11 since the linuxPackages_5_9 attribute has been removed by upstream and the patch used by them is available for 5.11 as well. * The fixed output hash for third_patry.apereo-cas changed for some reason. * Remove the pin of haskellPackages.vector from the haskell overlay. It broke as the most recent version of vector in nixos-unstable no longer depends on semigroups. This effectively updates vector from 0.12.1.2 to 0.12.2.0. * Align two comments in tvix/libstore/worker-protocol.hh because the updated clang-format now demands that. Change-Id: I2ecf10a98de935e9222acf1feaea447d4c11ed2d Reviewed-on: https://cl.tvl.fyi/c/depot/+/2538 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: glittershark <grfn@gws.fyi> Reviewed-by: sterni <sternenseemann@systemli.org>
2021-02-02 r/2179 docs(tvix): fix path in build instructions, add note about testssterni1-1/+4
Change-Id: If9dcd8e39f416c11460e66454df9f53096691699 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2484 Tested-by: BuildkiteCI Reviewed-by: glittershark <grfn@gws.fyi>
2021-02-02 r/2178 fix(tvix/libexpr): backport fix for functionArgs failing on primopssterni5-3/+18
Nix internally differentiates between lambdas and primops, but their type in the nix expression language is the same (lambda). The implementation of builtins.functionArgs only checks if the given expression is of type tLambda and fails if the type is tPrimop or tPrimopApp which are also functions. This most notably breaks lib.generators.toPretty when called on a builtin making for example yants fail if a primop is typechecked and an error message is generated. This fix generates an empty set for primops like for plain lambdas and is based upstream commit b2748c6e99239ff6803ba0da76c362790c8be192. Additionally we add to two tests: * eval-okay-functionargs now includes a few test cases checking that builtins.functionArgs always returns an empty set for builtins and also works as expected for normal functions. * eval-okay-types now also checks if builtins are functions. Future work would be to make builtins.functionArgs work as users would expect for builtins like builtins.fetchurl, builtins.fetchGit etc. which take a set as an argument. These currently don't register as formal arguments, but it would be an usability improvement at least if they did. See also https://github.com/NixOS/nix/pull/3626#issuecomment-698546704 Change-Id: I2bf4cb80d44a4b72ade13d3e0dbd7dfb1d049f32 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2477 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de> Reviewed-by: glittershark <grfn@gws.fyi>
2021-02-01 r/2177 chore(3p/gerrit_plugins): fix fixed-output sha256 of checksterni1-1/+1
Once again the sha256 of the fetchgit fixed output derivation for check changed which was brought to light by the recent GC on whitby. Change-Id: Ib3c3b5b489717ac6d73631282f27e4363d4ac5c1 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2481 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2021-01-30 r/2159 chore(3p|nix): Remove typed GoVincent Ambo2-30/+1
Nobody has actually done any experimentation with typed Go, so we're getting rid of it for now - it's causing annoying IFD during build graph generation. Change-Id: Ibac3dea98ebed1b3ee08acda184d24c500cf695d Reviewed-on: https://cl.tvl.fyi/c/depot/+/2458 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org> Reviewed-by: lukegb <lukegb@tvl.fyi> Reviewed-by: Profpatsch <mail@profpatsch.de>
2021-01-26 r/2146 feat(3p/telega): Pin tdlib version used for telegaVincent Ambo2-4/+23
Recent channel updates have caused some issues for telega.el, mostly because the version of tdlib (the C++ library for Telegram) and the Emacs package are out of sync. This overrides the version used in the Emacs package to a "known good" commit. It would be useful to change the tdlib derivation in nixpkgs to make this version mismatch a hard build error. Change-Id: I9c994f783e1cc17e933432507cd13b65697efd4a Reviewed-on: https://cl.tvl.fyi/c/depot/+/2445 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2021-01-19 r/2134 chore(3p): Bump NixOS channels to 2021-01-19Vincent Ambo1-6/+6
Change-Id: I07b0d4991a07e15b1ab1ec8f371542868874eda5 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2421 Tested-by: BuildkiteCI Reviewed-by: lukegb <lukegb@tvl.fyi> Reviewed-by: Profpatsch <mail@profpatsch.de>
2021-01-19 r/2133 chore: Remove banned userV3-35/+0
Change-Id: Icd61f7c567a327c74a4f381168e94737b2b30702 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2422 Tested-by: BuildkiteCI Reviewed-by: edef <edef@edef.eu> Reviewed-by: tazjin <mail@tazj.in>
2021-01-17 r/2121 feat(users/Profpatsch): set up a file watcher for tree sitterProfpatsch1-0/+4
Uses inotify to watch a file and print when it is modified, so we can update the parser and display the sexp on the terminal. Now the setup is good enough to start experiementing with queries on the syntax tree. Change-Id: I091587fc495ff627c79a69a52915aaaa8c51fcd2 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2411 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
2021-01-13 r/2078 chore(3p): Bump NixOS channels to 2021-01-09Vincent Ambo1-6/+9
Your regularly scheduled channel update, but slightly more regular than before. Included fixes: * 3p/emacs: Pick telega.el from stable channel, unstable is broken. * glittershark/fprintd: Compile with gcc9, since build fails with the new default of gcc10 * glittershark/fprintd: Use a global overlay for the fprintd package until https://github.com/NixOS/nixpkgs/pull/108962 lands in nixos-unstable * glittershark/home: Don't install rr, as it's not building with gcc10 Co-Author: Griffin Smith <grfn@gws.fyi> Change-Id: Ia715fef64a405a220049fc540017356fa7370e0b Reviewed-on: https://cl.tvl.fyi/c/depot/+/2341 Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: glittershark <grfn@gws.fyi> Reviewed-by: lukegb <lukegb@tvl.fyi> Tested-by: BuildkiteCI
2021-01-11 r/2075 chore(third_party): move nixkpgs-exposed to subdir to fix OWNERSProfpatsch9-12/+13
The owners plugin should in theory be able to match on subdirs (at least according to its documentation, but it doesn’t and nobody has any idea how to debug it. We already know that subdirectories work just fine, so let’s go the path of least resistance because frankly, I couldn’t care any less. The haskell overlay also moves to the subdir, this way both can be changed in the same go by the same people. Change-Id: I7d98f48afa649ad2c58e38e674e1c4df09039c1c Reviewed-on: https://cl.tvl.fyi/c/depot/+/2347 Tested-by: BuildkiteCI Reviewed-by: kanepyork <rikingcoding@gmail.com> Reviewed-by: lukegb <lukegb@tvl.fyi>
2021-01-11 r/2071 feat(users/Profpatsch): add script for randomly evaling nixpkgsProfpatsch1-0/+2
Running this after a codified refactor acts as a good smoke test, if a big subset of packages is broken or any central packages are broken, this should find them quite quickly, thanks to randomness™. Just let it run for a few minutes and check the errors that pop up. Change-Id: I1505dd31ca25b29254474a15cd6cb71d9743038a Reviewed-on: https://cl.tvl.fyi/c/depot/+/2346 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de> Reviewed-by: lukegb <lukegb@tvl.fyi>
2021-01-10 r/2068 refactor(3p/exwm): Inline build instructions instead of overridingVincent Ambo1-3/+18
Change-Id: If16a57e8dd905c8f709bee70dac575509dd22b02 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2343 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
2021-01-09 r/2066 fix(3p/exwm): Work around Chrome input focus issueVincent Ambo1-1/+2
In recent Chrome versions, EXWM has some issue around handing focus back to the application. There is a Github issue about this and this commit implements the suggested workaround, which I've verified locally. Change-Id: Ib451e8d8b34921665c3015853850d12e04612929 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2342 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
2021-01-09 r/2065 chore(3p): Bump NixOS channels to 2020-12-28Vincent Ambo4-9/+14
Changes: * ops/nixos/tvl-slapd: The NixOS module for OpenLDAP has removed the ability to configure OpenLDAP directly and now forces users to use some kind of weird Nix->OLC mapping that is mostly undocumented. This moves the config we need to the new format in a way that may or may not work and does the other arbitrary dance steps that someone decided to impose on us. Note that this now throws lots of warnings, but I can't be bothered to fix them. * 3p: Random package removals accomodated * users/glittershark: Pin grfn's kernel to 5.9, because the CK patch is not yet updated for 5.10 * users/glittershark: Update vendor hash for pg-dump-upsert, I suspect this changed because of something in the Go build machinery in nixpkgs. The deleteVendor flag also has no effect anymore and has been removed. * users/glittershark: agda build is broken, commenting out development home-manager environment until it can be fixed * third_party/haskell_overlay: updating random needs upper boundarles of a few dependencies relaxed (curse them) * third_party/gerrit_plugins: for some cursed reason the fixed-output hash of the gerrit owners plugin fetchgit changed, updated. Same for the checks plugin. Change-Id: Ica37995fe8039d3ba80eab643867f98795c56734 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2295 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de> Reviewed-by: glittershark <grfn@gws.fyi> Reviewed-by: tazjin <mail@tazj.in>