depot/users/Profpatsch/nixpkgs-rewriter, branch refs/r/3091 monorepo for the virus lounge http://code.tvl.fyi/depot/atom?h=refs%2Fr%2F3091 2021-11-23T14:42:08+00:00 refactor(readTree): Move 'drvTargets' into readTree 2021-11-23T14:42:08+00:00 Vincent Ambo mail@tazj.in 2021-11-23T13:31:17+00:00 urn:sha1:4f1249e46fb816cfd299ae27385a63746f914c3f This function is also generally useful for readTree consumers that have the concept of subtargets. Change-Id: Ic7fc03380dec6953fb288763a28e50ab3624d233 feat(tools): add rust-crates-advisory 2021-05-17T23:00:57+00:00 Profpatsch mail@profpatsch.de 2021-04-04T02:04:20+00:00 urn:sha1:952afb7da9a4b563f4e6478aec73f304827c2777 We have a bunch of crates in `third_party/rust-crates`; it would be great if we could check them for existing CVEs. This tool does that, it takes the rust security advisory database, parses the applicable CVEs, and cross-checks them against the actual crate versions we list in our package database. The dumb parser we wrote is tested against all entries in the database, so we will notice when upstream breaks their shit. Checking the semver stuff is easy enough with the semver crate. If an advisory matches, it prints the whole thing and fails the build. Change-Id: I9e912c43d37a685d9d7a4424defc467a171ea3c4 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2818 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: sterni <sternenseemann@systemli.org> feat(users/Profpatsch): build attrset members on CI 2021-03-15T22:16:19+00:00 sterni sternenseemann@systemli.org 2021-03-15T21:32:16+00:00 urn:sha1:5d8490d2fc7a735f747704792d4fc7d779d6e471 Setting meta.targets to include all derivations in the different package sets in Profpatsch's user folder makes them checked by CI until they do the readTree refactor as promised. To reduce code duplication we handle this in a simple function which is exposed from nix.utils which may be a good place for depot specific bits and bops we accumulate over time. To get around the issue of too nested sets we perform the following renames: * users.Profpatsch.tests gets moved into its own directory * users.Profpatsch.arglib.netencode now lives in its own file instead of the default.nix * users.Profpatsch.netstring.tests gets moved into its own directory Change-Id: Icd039c29d7760a711c1c53554504d6b0cd19e120 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2603 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de> feat(users/Profpatsch): add script for randomly evaling nixpkgs 2021-01-11T08:58:57+00:00 Profpatsch mail@profpatsch.de 2021-01-10T20:41:33+00:00 urn:sha1:04f91b59575ede2b230c3f563cc163c6014275e0 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> feat(users/Profpatsch): add a rewriter for lib.stdenv changes 2021-01-10T20:03:45+00:00 Profpatsch mail@profpatsch.de 2021-01-10T19:56:52+00:00 urn:sha1:2f807d7f141068d2d60676a89213eaa5353ca6e0 This is in order to advance the rewriting from stdenv.lib to lib. https://github.com/NixOS/nixpkgs/issues/108938 The hard part about changing the argument is that a package might not include lib in its arguments, which is why I use hnix to check whether lib is included and add it to the import list if it doesn’t already exist there. So far, only the really common pattern of meta = with stdenv.lib; is rewritten. Change-Id: I370f0a321b0e5a5bd21ec21fc7cefdd65ec845ed Reviewed-on: https://cl.tvl.fyi/c/depot/+/2345 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de>
This XML file does not appear to have any style information associated with it. The document tree is shown below.
<feed xmlns="http://www.w3.org/2005/Atom">
<title>depot/users/Profpatsch/nixpkgs-rewriter, branch refs/r/3091</title>
<subtitle>monorepo for the virus lounge</subtitle>
<id>http://code.tvl.fyi/depot/atom?h=refs%2Fr%2F3091</id>
<link rel="self" href="http://code.tvl.fyi/depot/atom?h=refs%2Fr%2F3091"/>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/"/>
<updated>2021-11-23T14:42:08+00:00</updated>
<entry>
<title>refactor(readTree): Move 'drvTargets' into readTree</title>
<updated>2021-11-23T14:42:08+00:00</updated>
<author>
<name>Vincent Ambo</name>
<email>mail@tazj.in</email>
</author>
<published>2021-11-23T13:31:17+00:00</published>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/commit/?id=4f1249e46fb816cfd299ae27385a63746f914c3f"/>
<id>urn:sha1:4f1249e46fb816cfd299ae27385a63746f914c3f</id>
<content type="text"> This function is also generally useful for readTree consumers that have the concept of subtargets. Change-Id: Ic7fc03380dec6953fb288763a28e50ab3624d233 </content>
</entry>
<entry>
<title>feat(tools): add rust-crates-advisory</title>
<updated>2021-05-17T23:00:57+00:00</updated>
<author>
<name>Profpatsch</name>
<email>mail@profpatsch.de</email>
</author>
<published>2021-04-04T02:04:20+00:00</published>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/commit/?id=952afb7da9a4b563f4e6478aec73f304827c2777"/>
<id>urn:sha1:952afb7da9a4b563f4e6478aec73f304827c2777</id>
<content type="text"> We have a bunch of crates in `third_party/rust-crates`; it would be great if we could check them for existing CVEs. This tool does that, it takes the rust security advisory database, parses the applicable CVEs, and cross-checks them against the actual crate versions we list in our package database. The dumb parser we wrote is tested against all entries in the database, so we will notice when upstream breaks their shit. Checking the semver stuff is easy enough with the semver crate. If an advisory matches, it prints the whole thing and fails the build. Change-Id: I9e912c43d37a685d9d7a4424defc467a171ea3c4 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2818 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in> Reviewed-by: sterni <sternenseemann@systemli.org> </content>
</entry>
<entry>
<title>feat(users/Profpatsch): build attrset members on CI</title>
<updated>2021-03-15T22:16:19+00:00</updated>
<author>
<name>sterni</name>
<email>sternenseemann@systemli.org</email>
</author>
<published>2021-03-15T21:32:16+00:00</published>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/commit/?id=5d8490d2fc7a735f747704792d4fc7d779d6e471"/>
<id>urn:sha1:5d8490d2fc7a735f747704792d4fc7d779d6e471</id>
<content type="text"> Setting meta.targets to include all derivations in the different package sets in Profpatsch's user folder makes them checked by CI until they do the readTree refactor as promised. To reduce code duplication we handle this in a simple function which is exposed from nix.utils which may be a good place for depot specific bits and bops we accumulate over time. To get around the issue of too nested sets we perform the following renames: * users.Profpatsch.tests gets moved into its own directory * users.Profpatsch.arglib.netencode now lives in its own file instead of the default.nix * users.Profpatsch.netstring.tests gets moved into its own directory Change-Id: Icd039c29d7760a711c1c53554504d6b0cd19e120 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2603 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de> </content>
</entry>
<entry>
<title>feat(users/Profpatsch): add script for randomly evaling nixpkgs</title>
<updated>2021-01-11T08:58:57+00:00</updated>
<author>
<name>Profpatsch</name>
<email>mail@profpatsch.de</email>
</author>
<published>2021-01-10T20:41:33+00:00</published>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/commit/?id=04f91b59575ede2b230c3f563cc163c6014275e0"/>
<id>urn:sha1:04f91b59575ede2b230c3f563cc163c6014275e0</id>
<content type="text"> 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> </content>
</entry>
<entry>
<title>feat(users/Profpatsch): add a rewriter for lib.stdenv changes</title>
<updated>2021-01-10T20:03:45+00:00</updated>
<author>
<name>Profpatsch</name>
<email>mail@profpatsch.de</email>
</author>
<published>2021-01-10T19:56:52+00:00</published>
<link rel="alternate" type="text/html" href="http://code.tvl.fyi/commit/?id=2f807d7f141068d2d60676a89213eaa5353ca6e0"/>
<id>urn:sha1:2f807d7f141068d2d60676a89213eaa5353ca6e0</id>
<content type="text"> This is in order to advance the rewriting from stdenv.lib to lib. https://github.com/NixOS/nixpkgs/issues/108938 The hard part about changing the argument is that a package might not include lib in its arguments, which is why I use hnix to check whether lib is included and add it to the import list if it doesn’t already exist there. So far, only the really common pattern of meta = with stdenv.lib; is rewritten. Change-Id: I370f0a321b0e5a5bd21ec21fc7cefdd65ec845ed Reviewed-on: https://cl.tvl.fyi/c/depot/+/2345 Tested-by: BuildkiteCI Reviewed-by: Profpatsch <mail@profpatsch.de> </content>
</entry>
</feed>