)]}'
{"id":"depot~2576","triplet_id":"depot~canon~Ic24efe6b05eb761e19e4434f689c73ea2d075605","project":"depot","branch":"canon","attention_set":{},"removed_from_attention_set":{"1000034":{"account":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"last_update":"2021-07-16 20:18:41.000000000","reason":"Change was marked work in progress"},"1000001":{"account":{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},"last_update":"2021-07-16 20:18:41.000000000","reason":"Change was marked work in progress"},"1000013":{"account":{"_account_id":1000013,"name":"Profpatsch","email":"mail@profpatsch.de","username":"Profpatsch"},"last_update":"2021-07-16 20:18:41.000000000","reason":"Change was marked work in progress"}},"hashtags":[],"change_id":"Ic24efe6b05eb761e19e4434f689c73ea2d075605","subject":"feat(nix/buildC): pure nix build system for C","status":"ABANDONED","created":"2021-02-28 18:52:51.000000000","updated":"2022-05-04 13:20:35.000000000","total_comment_count":23,"unresolved_comment_count":8,"work_in_progress":true,"has_review_started":true,"meta_rev_id":"82d9c65b7bc2b78aa459c0787111e55afc1032f0","_number":2576,"virtual_id_number":2576,"owner":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"actions":{},"labels":{"Code-Review":{"all":[{"value":0,"permitted_voting_range":{"min":-2,"max":2},"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},{"value":0,"permitted_voting_range":{"min":-2,"max":2},"_account_id":1000013,"name":"Profpatsch","email":"mail@profpatsch.de","username":"Profpatsch"}],"values":{"-2":"This shall not be merged","-1":"I would prefer this is not merged as is"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me, approved"},"description":"","default_value":0},"Verified":{"approved":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"all":[{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},{"value":1,"date":"2021-07-11 19:11:44.000000000","permitted_voting_range":{"min":-1,"max":1},"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},{"_account_id":1000013,"name":"Profpatsch","email":"mail@profpatsch.de","username":"Profpatsch"}],"values":{"-1":"Fails"," 0":"No score","+1":"Verified"},"description":"","default_value":0},"Autosubmit":{"all":[{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},{"_account_id":1000013,"name":"Profpatsch","email":"mail@profpatsch.de","username":"Profpatsch"}],"values":{" 0":"Submit manually","+1":"Submit automatically"},"description":"","default_value":0,"optional":true},"All-Comments-Resolved":{},"Conformant-Commit-Message":{"approved":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"}}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},{"_account_id":1000013,"name":"Profpatsch","email":"mail@profpatsch.de","username":"Profpatsch"},{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2021-02-28 18:53:48.000000000","updated_by":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"reviewer":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2021-04-05 14:11:28.000000000","updated_by":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"reviewer":{"_account_id":1000001,"name":"tazjin","email":"tazjin@tvl.su","username":"tazjin"},"state":"REVIEWER"},{"updated":"2021-04-05 20:50:01.000000000","updated_by":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"reviewer":{"_account_id":1000013,"name":"Profpatsch","email":"mail@profpatsch.de","username":"Profpatsch"},"state":"REVIEWER"}],"messages":[{"id":"1858fb232f6b5b8172bf7e4defc1b329c25c200a","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-02-28 18:52:51.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"6ec24f6f1c8e551ba4e45205c99dad4f91eccfbb","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-02-28 18:53:42.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"70ce09e0fa8c0b937192e59456466d725f4ae123","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-02-28 18:53:48.000000000","message":"Patch Set 1: Verified+1\n\nBuild of patchset 1 passed: https://buildkite.com/tvl/depot/builds/5255","accounts_in_message":[],"_revision_number":1},{"id":"4eb4ee0bfaef3f7e0e0edb73bf92a884c60767fd","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-02-28 18:54:41.000000000","message":"Patch Set 2: Verified+1\n\nBuild of patchset 2 passed: https://buildkite.com/tvl/depot/builds/5256","accounts_in_message":[],"_revision_number":2},{"id":"5d37175f7c98126d37257a121503e3d0c1e80bb5","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-02-28 20:50:39.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"54bb36aef9c04b8e8a7cf576d109c608486ab948","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-02-28 20:51:34.000000000","message":"Patch Set 3: Verified+1\n\nBuild of patchset 3 passed: https://buildkite.com/tvl/depot/builds/5257","accounts_in_message":[],"_revision_number":3},{"id":"a62464e01bbb75557bf3647c7a8accb5186b0255","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-03-01 00:49:42.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"9a7d9044b69fb00bcda7e90b8a84e04becc9bcd6","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-03-01 00:50:50.000000000","message":"Patch Set 4: Verified+1\n\nBuild of patchset 4 passed: https://buildkite.com/tvl/depot/builds/5258","accounts_in_message":[],"_revision_number":4},{"id":"f8cc5182d74f213ce7e879c8808e968afd37c158","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-03-13 01:19:05.000000000","message":"Uploaded patch set 5.","accounts_in_message":[],"_revision_number":5},{"id":"02b471de3e3ffab398637ac727eaa58e3bd79f33","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-03-13 01:21:03.000000000","message":"Patch Set 5: Verified+1\n\nBuild of patchset 5 passed: https://buildkite.com/tvl/depot/builds/5340","accounts_in_message":[],"_revision_number":5},{"id":"c3ee9797befa4f136c85c27bbb00bd9522ec922e","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-03-17 14:12:28.000000000","message":"Uploaded patch set 6.","accounts_in_message":[],"_revision_number":6},{"id":"4157e9da68960f89faacaaa198297d7b7cc910d2","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-03-17 14:13:32.000000000","message":"Patch Set 6: Verified+1\n\nBuild of patchset 6 passed: https://buildkite.com/tvl/depot/builds/5369","accounts_in_message":[],"_revision_number":6},{"id":"b9df9aa12961ef3f1e9546e7e5d69b2a9fd99667","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-03-17 16:00:25.000000000","message":"Uploaded patch set 7.","accounts_in_message":[],"_revision_number":7},{"id":"019de8dd4a580607a1f79547c63ee5878f3ab7bc","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-03-17 16:01:41.000000000","message":"Patch Set 7: Verified+1\n\nBuild of patchset 7 passed: https://buildkite.com/tvl/depot/builds/5371","accounts_in_message":[],"_revision_number":7},{"id":"9f3a85c52f78af36006fed97165207e597c7423a","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-03-17 16:10:17.000000000","message":"Uploaded patch set 8.","accounts_in_message":[],"_revision_number":8},{"id":"24e3394e0f08ae1385ed59dbd7fa888e6ef699ee","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-03-17 16:11:19.000000000","message":"Patch Set 8: Verified+1\n\nBuild of patchset 8 passed: https://buildkite.com/tvl/depot/builds/5373","accounts_in_message":[],"_revision_number":8},{"id":"3e912ba31285eb32333ae61ba6b0677feccc00d6","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-03-18 20:12:54.000000000","message":"Uploaded patch set 9.","accounts_in_message":[],"_revision_number":9},{"id":"219922af48ec40b79dee30f9c495d21281992f84","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-03-18 20:14:16.000000000","message":"Patch Set 9: Verified+1\n\nBuild of patchset 9 passed: https://buildkite.com/tvl/depot/builds/5375","accounts_in_message":[],"_revision_number":9},{"id":"bb16802d8986fcf271e4cf1669acb52c6064e9af","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-03-20 17:43:57.000000000","message":"Uploaded patch set 10.","accounts_in_message":[],"_revision_number":10},{"id":"653e97827be61045d86e53735068869e4ea78bfe","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-03-20 17:45:00.000000000","message":"Patch Set 10: Verified+1\n\nBuild of patchset 10 passed: https://buildkite.com/tvl/depot/builds/5411","accounts_in_message":[],"_revision_number":10},{"id":"362e02e8742e3494bc35015d5b312efe6af9525c","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-03-22 23:47:52.000000000","message":"Uploaded patch set 11.","accounts_in_message":[],"_revision_number":11},{"id":"9787c1d0064168493d2c0fcd89ebb346fb0a1133","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-03-22 23:49:22.000000000","message":"Patch Set 11: Verified+1\n\nBuild of patchset 11 passed: https://buildkite.com/tvl/depot/builds/5529","accounts_in_message":[],"_revision_number":11},{"id":"dd1cb1436d626b7510542eb6624933da0c5edae0","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-03-23 21:21:00.000000000","message":"Uploaded patch set 12: Patch Set 11 was rebased.","accounts_in_message":[],"_revision_number":12},{"id":"128eded0ccffb7e95674c7f71a31442e206bf505","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-03-23 21:22:50.000000000","message":"Patch Set 12: Verified+1\n\nBuild of patchset 12 passed: https://buildkite.com/tvl/depot/builds/5546","accounts_in_message":[],"_revision_number":12},{"id":"d24695686bdb0054786f64eaa616962e4fb2f1ed","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-03-24 14:51:50.000000000","message":"Uploaded patch set 13: Patch Set 12 was rebased.","accounts_in_message":[],"_revision_number":13},{"id":"cbeaf75de4e9e3f43086ced5da43331024cffc06","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-03-24 14:53:22.000000000","message":"Patch Set 13: Verified+1\n\nBuild of patchset 13 passed: https://buildkite.com/tvl/depot/builds/5572","accounts_in_message":[],"_revision_number":13},{"id":"78401989e08844453870c8f3881b14a32c277b96","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-03-24 19:06:16.000000000","message":"Uploaded patch set 14: New patch set was added with same tree, parent, and commit message as Patch Set 13.","accounts_in_message":[],"_revision_number":14},{"id":"8bcac14fc234dd2591b84f0f09c463acadf31ce9","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-03-24 19:08:06.000000000","message":"Patch Set 14:\n\nBuild of patchset 14 passed: https://buildkite.com/tvl/depot/builds/5580","accounts_in_message":[],"_revision_number":14},{"id":"9a1cb3417f1a78ff5b2cf8b344977e3d6b37947b","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-03-26 10:20:41.000000000","message":"Uploaded patch set 15: Patch Set 14 was rebased.","accounts_in_message":[],"_revision_number":15},{"id":"086a27815050d2dda6a4d8d7961b88f7d77d9216","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-03-26 10:23:19.000000000","message":"Patch Set 15: Verified+1\n\nBuild of patchset 15 passed: https://buildkite.com/tvl/depot/builds/5624","accounts_in_message":[],"_revision_number":15},{"id":"cb2135882379fdfaa9a5896c8f2b64f26358cc47","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-03-27 23:24:46.000000000","message":"Uploaded patch set 16.","accounts_in_message":[],"_revision_number":16},{"id":"41cd420d0924f8224ee58d771cafc40c743a87db","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-03-27 23:25:46.000000000","message":"Patch Set 16: Verified+1\n\nBuild of patchset 16 passed: https://buildkite.com/tvl/depot/builds/5691","accounts_in_message":[],"_revision_number":16},{"id":"7ddc6072c94bf87faa6e6fd0ca1a864badc0b586","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-03-29 23:41:33.000000000","message":"Uploaded patch set 17.","accounts_in_message":[],"_revision_number":17},{"id":"33781dd5562a6e96a5ed30469b9b4b8407b0bb96","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-03-29 23:41:43.000000000","message":"Uploaded patch set 18: Patch Set 17 was rebased.","accounts_in_message":[],"_revision_number":18},{"id":"05e208d15f4b56ce48e723b29b188e8cbb92ad74","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-03-29 23:43:55.000000000","message":"Patch Set 17: Verified+1\n\nBuild of patchset 17 passed: https://buildkite.com/tvl/depot/builds/5728","accounts_in_message":[],"_revision_number":17},{"id":"c1550522a0d83a6ed355eb1770e1f39db186b763","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-03-29 23:46:17.000000000","message":"Patch Set 18: Verified+1\n\nBuild of patchset 18 passed: https://buildkite.com/tvl/depot/builds/5734","accounts_in_message":[],"_revision_number":18},{"id":"f7cb811f800a9687d15191bb04b85dfb25e9f9ea","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-03-31 14:54:41.000000000","message":"Uploaded patch set 19.","accounts_in_message":[],"_revision_number":19},{"id":"a073e8e12d3a4af9ff366c1e83707832d699c68c","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-03-31 14:56:50.000000000","message":"Patch Set 19: Verified+1\n\nBuild of patchset 19 passed: https://buildkite.com/tvl/depot/builds/5769","accounts_in_message":[],"_revision_number":19},{"id":"0f1bdce0cedaf879900cdc643b614226f498e9f2","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-03-31 22:59:27.000000000","message":"Uploaded patch set 20: Patch Set 19 was rebased.","accounts_in_message":[],"_revision_number":20},{"id":"5749b2d244a9148748351514bc211b9ee3c6d38a","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-03-31 23:02:29.000000000","message":"Patch Set 20: Verified+1\n\nBuild of patchset 20 passed: https://buildkite.com/tvl/depot/builds/5833","accounts_in_message":[],"_revision_number":20},{"id":"d81793595262022762fff679e799450b5ad3a048","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-02 20:05:15.000000000","message":"Uploaded patch set 21: Patch Set 20 was rebased.","accounts_in_message":[],"_revision_number":21},{"id":"7b18e53fda76ebd34c4385d028d7484c7c1a62f4","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-02 20:07:24.000000000","message":"Patch Set 21: Verified+1\n\nBuild of patchset 21 passed: https://buildkite.com/tvl/depot/builds/5956","accounts_in_message":[],"_revision_number":21},{"id":"64a6d0de1d0ce9b01c0b89b39a73fc8c933be6fc","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-03 22:13:43.000000000","message":"Uploaded patch set 22.","accounts_in_message":[],"_revision_number":22},{"id":"62f02618d771f445cffe02c1a8b63e46f925bb81","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-03 22:13:57.000000000","message":"Patch Set 22: Verified-1\n\nBuild of patchset 22 failed: https://buildkite.com/tvl/depot/builds/6033","accounts_in_message":[],"_revision_number":22},{"id":"04e0daeef016a0832b421a0160aee6446c0b93f2","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-03 22:18:46.000000000","message":"Uploaded patch set 23: Patch Set 22 was rebased.","accounts_in_message":[],"_revision_number":23},{"id":"fc7ce84708a9b1778e0666d3056c9e07d9737790","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-03 22:19:09.000000000","message":"Patch Set 23: Verified-1\n\nBuild of patchset 23 failed: https://buildkite.com/tvl/depot/builds/6039","accounts_in_message":[],"_revision_number":23},{"id":"0d7421a41c54b2bd6c54f039eda6ecf7745f0a31","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-03 22:23:15.000000000","message":"Uploaded patch set 24: Patch Set 23 was rebased.","accounts_in_message":[],"_revision_number":24},{"id":"fed519eccdd74cb53965ec2a2896bde29e3b7e54","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-03 22:23:28.000000000","message":"Patch Set 24: Verified-1\n\nBuild of patchset 24 failed: https://buildkite.com/tvl/depot/builds/6042","accounts_in_message":[],"_revision_number":24},{"id":"5f9dc3235d3a25578b6090199f98a24b3d0df48b","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-03 22:45:44.000000000","message":"Uploaded patch set 25.","accounts_in_message":[],"_revision_number":25},{"id":"00752711d72c2391f373a03cfc2454dcb5be87ec","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-03 22:46:46.000000000","message":"Patch Set 25: Verified+1\n\nBuild of patchset 25 passed: https://buildkite.com/tvl/depot/builds/6050","accounts_in_message":[],"_revision_number":25},{"id":"07a43f607514808f6b1ddc64d107dbdf4be8ead5","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-04 15:43:00.000000000","message":"Uploaded patch set 26.","accounts_in_message":[],"_revision_number":26},{"id":"277dcbdd6f9928f6a40237fac3c94585e8962a82","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-04 15:44:03.000000000","message":"Patch Set 26: Verified+1\n\nBuild of patchset 26 passed: https://buildkite.com/tvl/depot/builds/6124","accounts_in_message":[],"_revision_number":26},{"id":"8988ba72075b639b73a3fb2afe8b5fa5dd2fe976","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-05 00:00:33.000000000","message":"Uploaded patch set 27: Patch Set 26 was rebased.","accounts_in_message":[],"_revision_number":27},{"id":"4d8a64ed93d08adf55db204438d39daa80bdca92","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-05 00:01:34.000000000","message":"Patch Set 27: Verified+1\n\nBuild of patchset 27 passed: https://buildkite.com/tvl/depot/builds/6139","accounts_in_message":[],"_revision_number":27},{"id":"ca8edf6807b7ed1a82afd59f0212c88951da2dac","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-05 00:43:40.000000000","message":"Uploaded patch set 28.","accounts_in_message":[],"_revision_number":28},{"id":"13260752dd98933ba8b7880aea1af13186d64464","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-05 00:45:16.000000000","message":"Patch Set 28: Verified+1\n\nBuild of patchset 28 passed: https://buildkite.com/tvl/depot/builds/6147","accounts_in_message":[],"_revision_number":28},{"id":"5cfb771dc78f522f9361525022de385cd5f7f10b","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-05 00:50:26.000000000","message":"Uploaded patch set 29.","accounts_in_message":[],"_revision_number":29},{"id":"4681fcb354cf59d54b6a54f70ebad9f285cfb2d4","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-05 00:51:25.000000000","message":"Patch Set 29: Verified+1\n\nBuild of patchset 29 passed: https://buildkite.com/tvl/depot/builds/6150","accounts_in_message":[],"_revision_number":29},{"id":"a7aaa5a1660bdf7b4d56aabcaceb92612a55fe33","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-05 10:51:58.000000000","message":"Uploaded patch set 30: Patch Set 29 was rebased.","accounts_in_message":[],"_revision_number":30},{"id":"2c651adf0602e8b1deaea6ae00fe60e2c361f2da","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-05 10:53:43.000000000","message":"Patch Set 30: Verified+1\n\nBuild of patchset 30 passed: https://buildkite.com/tvl/depot/builds/6159","accounts_in_message":[],"_revision_number":30},{"id":"86c52778d90f770d2e3103e542a387790daeab29","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-05 14:08:07.000000000","message":"Uploaded patch set 31.","accounts_in_message":[],"_revision_number":31},{"id":"af88290d2388f8e927bcf9a249ca1ba532ab4ca2","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-05 14:09:10.000000000","message":"Patch Set 31: Verified+1\n\nBuild of patchset 31 passed: https://buildkite.com/tvl/depot/builds/6166","accounts_in_message":[],"_revision_number":31},{"id":"6eea9fd354674bc9ad086ba97f96a601799d16bb","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-05 14:11:28.000000000","message":"Patch Set 31:\n\nThis change is ready for review.","accounts_in_message":[],"_revision_number":31},{"id":"7c471d65ca173015a9c16c7976e0de954ba92534","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-09 23:52:50.000000000","message":"Uploaded patch set 32: Patch Set 31 was rebased.","accounts_in_message":[],"_revision_number":32},{"id":"14a9735ad015bc9036b1d722ade3cc5b0cd610cb","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-09 23:54:00.000000000","message":"Patch Set 32: Verified+1\n\nBuild of patchset 32 passed: https://buildkite.com/tvl/depot/builds/6282","accounts_in_message":[],"_revision_number":32},{"id":"dcb382e92773dbfd6cf01c864cc831a72559f18e","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-09 23:55:22.000000000","message":"Uploaded patch set 33.","accounts_in_message":[],"_revision_number":33},{"id":"d5d7e873ef1121ab854da6bc34961610e640b6c1","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-09 23:56:55.000000000","message":"Patch Set 33: Verified+1\n\nBuild of patchset 33 passed: https://buildkite.com/tvl/depot/builds/6287","accounts_in_message":[],"_revision_number":33},{"id":"b686857e81c25f1128fde6cda78c698c88eb678f","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-10 09:29:08.000000000","message":"Uploaded patch set 34.","accounts_in_message":[],"_revision_number":34},{"id":"680885176131a9d47e7c5229515e3f2c847de128","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-10 09:30:17.000000000","message":"Patch Set 34: Verified-1\n\nBuild of patchset 34 failed: https://buildkite.com/tvl/depot/builds/6294","accounts_in_message":[],"_revision_number":34},{"id":"c8463ad5a9c88d975761094461189609bd7eb8e1","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-10 09:30:50.000000000","message":"Uploaded patch set 35.","accounts_in_message":[],"_revision_number":35},{"id":"7f4a941f59e02793256924d34586dccdbbd7efab","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-10 09:32:05.000000000","message":"Patch Set 35: Verified+1\n\nBuild of patchset 35 passed: https://buildkite.com/tvl/depot/builds/6298","accounts_in_message":[],"_revision_number":35},{"id":"19ae4082eb53626c1cd5cd954cbbadbea0b798f4","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-10 17:10:25.000000000","message":"Uploaded patch set 36: Patch Set 35 was rebased.","accounts_in_message":[],"_revision_number":36},{"id":"2bbd88367dff9bcfef28e331173d71195e26a941","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-10 17:11:31.000000000","message":"Uploaded patch set 37: Patch Set 36 was rebased.","accounts_in_message":[],"_revision_number":37},{"id":"b4934cfcad75ad4280acd9408469f9a0795b5f57","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-10 17:51:17.000000000","message":"Patch Set 36: Verified+1\n\nBuild of patchset 36 passed: https://buildkite.com/tvl/depot/builds/6363","accounts_in_message":[],"_revision_number":36},{"id":"1d7897fa15a743c0c552aa22b04e5698cdc99801","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-10 17:51:18.000000000","message":"Patch Set 37: Verified+1\n\nBuild of patchset 37 passed: https://buildkite.com/tvl/depot/builds/6368","accounts_in_message":[],"_revision_number":37},{"id":"d1db0b3463313f3d5cd344db77a36f12bf574dff","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-10 20:16:25.000000000","message":"Uploaded patch set 38: Patch Set 37 was rebased.","accounts_in_message":[],"_revision_number":38},{"id":"a6b73d98803e2ec00d4b2f5a6f1c9786cd85e3f6","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-10 21:57:57.000000000","message":"Uploaded patch set 39.","accounts_in_message":[],"_revision_number":39},{"id":"08df4ef53b9b4c9e9a5bfe7d6dd4db651da9c15e","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-10 21:59:13.000000000","message":"Patch Set 39: Verified+1\n\nBuild of patchset 39 passed: https://buildkite.com/tvl/depot/builds/6403","accounts_in_message":[],"_revision_number":39},{"id":"99edc1c30f0f42247e6b7f9b82df66eb30ffb2b2","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-15 20:16:34.000000000","message":"Uploaded patch set 40.","accounts_in_message":[],"_revision_number":40},{"id":"6779f5e17d8a14200671da696bac047343a4827b","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-15 20:18:21.000000000","message":"Patch Set 40: Verified+1\n\nBuild of patchset 40 passed: https://buildkite.com/tvl/depot/builds/6639","accounts_in_message":[],"_revision_number":40},{"id":"a15f87ae3ab28af8a1a84abb8b7cbc1eb0b4a6dc","author":{"_account_id":1000013,"name":"Profpatsch","email":"mail@profpatsch.de","username":"Profpatsch"},"date":"2021-04-18 13:02:31.000000000","message":"Patch Set 40:\n\n(14 comments)","accounts_in_message":[],"_revision_number":40},{"id":"cf3f9e881107025a877f241a1883d713354cb53b","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-20 08:32:08.000000000","message":"Uploaded patch set 41.","accounts_in_message":[],"_revision_number":41},{"id":"a3843d7876b070c69a65eb09ff38eef6187e6f88","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-20 08:34:16.000000000","message":"Patch Set 41: Verified+1\n\nBuild of patchset 41 passed: https://buildkite.com/tvl/depot/builds/6729","accounts_in_message":[],"_revision_number":41},{"id":"de66c30056636f59cfa95b5d5f65b4bbd74b92d7","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-20 08:37:38.000000000","message":"Uploaded patch set 42: Patch Set 41 was rebased.","accounts_in_message":[],"_revision_number":42},{"id":"8392c3fd4e696954c0d3c9dd24f4b2a13540e95c","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-20 08:40:16.000000000","message":"Patch Set 42: Verified+1\n\nBuild of patchset 42 passed: https://buildkite.com/tvl/depot/builds/6737","accounts_in_message":[],"_revision_number":42},{"id":"3d113350aa018dd87238b21782b175e57dcea751","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-20 10:17:16.000000000","message":"Uploaded patch set 43.","accounts_in_message":[],"_revision_number":43},{"id":"f152a9acf6a101cbfdf04ea27d897ab12e591501","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-20 10:17:25.000000000","message":"Patch Set 42:\n\n(9 comments)","accounts_in_message":[],"_revision_number":42},{"id":"c4cc7e050fede32f205cdc3d3dca8d911f61ca73","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-20 10:18:47.000000000","message":"Patch Set 43: Verified+1\n\nBuild of patchset 43 passed: https://buildkite.com/tvl/depot/builds/6747","accounts_in_message":[],"_revision_number":43},{"id":"c8e5ec658380f71cedd54ad7f7b3caa7623d505f","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-04-25 21:33:47.000000000","message":"Uploaded patch set 44: Patch Set 43 was rebased.","accounts_in_message":[],"_revision_number":44},{"id":"9858c9f10d740f674f634b9769dd6a8c90549f4c","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-04-25 21:35:11.000000000","message":"Patch Set 44: Verified+1\n\nBuild of patchset 44 passed: https://buildkite.com/tvl/depot/builds/6878","accounts_in_message":[],"_revision_number":44},{"id":"49f2118ba2e0f8f7db4a3422e3232a3418f85b16","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-07-11 19:07:28.000000000","message":"Uploaded patch set 45.","accounts_in_message":[],"_revision_number":45},{"id":"f0f22e33b1316476eb311d1beda1a7a51184b139","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-07-11 19:08:56.000000000","message":"Patch Set 45: Verified-1\n\nBuild of patchset 45 failed: https://buildkite.com/tvl/depot/builds/7455","accounts_in_message":[],"_revision_number":45},{"id":"7ef1ac783276a879a2bf67fdca4cbffb5dc28d76","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-07-11 19:10:26.000000000","message":"Uploaded patch set 46.","accounts_in_message":[],"_revision_number":46},{"id":"52f0440f00da0e3c51a9b919e8d45f64013028ee","author":{"_account_id":1000014,"name":"BuildkiteCI","username":"buildkite","tags":["SERVICE_USER"]},"date":"2021-07-11 19:11:44.000000000","message":"Patch Set 46: Verified+1\n\nBuild of patchset 46 passed: https://buildkite.com/tvl/depot/builds/7459","accounts_in_message":[],"_revision_number":46},{"id":"6e3c52479e73c6710fc5b458fbed68c6d38e9690","tag":"autogenerated:gerrit:setWorkInProgress","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2021-07-16 20:18:41.000000000","message":"Set Work In Progress","accounts_in_message":[],"_revision_number":46},{"id":"82d9c65b7bc2b78aa459c0787111e55afc1032f0","tag":"autogenerated:gerrit:abandon","author":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"date":"2022-05-04 13:20:35.000000000","message":"Abandoned\n\nI lost interest in this. It could be finished (properly even), but you\u0027d still probably want a configuration system. Just use autotools or (even better) meson.","accounts_in_message":[],"_revision_number":46}],"current_revision_number":46,"current_revision":"6a5578226e1e333fb0730d0dddda28460a5d384c","revisions":{"3dee4b98a5e9f5049c2e1c28e84cf8f6a947097f":{"kind":"REWORK","_number":1,"created":"2021-02-28 18:52:51.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/1","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/1","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/1"}}},"commit":{"parents":[{"commit":"ee974b3eddffa47d0d16beeada6658f37a21a8d4","subject":"feat(tazjin/rlox): Bootstrap rough shape of bytecode compiler","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dee974b3eddffa47d0d16beeada6658f37a21a8d4"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"subject":"feat(users/sterni/nix/buildC): pure nix build system for C","message":"feat(users/sterni/nix/buildC): pure nix build system for C\n\nThis is somewhat limited and needs to be fleshed out in the future.\nBuilding shared objects and C++ could be supported in the future. Static\nlinking needs to be tested (I hope pkgsStatic.llvmPackages.stdenv just\nworks™).\n\nThe basic idea is based on buildLisp: We take a bunch of files and mash\nthem together. Changes in headers causes everything to be rebuild (which\nis probably the only sane way to handle header changes except for\nmanually specifying dependencies which is annoying). Objects are built\nindividually, so rebuilding big projects should be cheap if headers are\nnot changed (to be tested).\n\nFuture work is mainly figuring nice support for testing (probably via\ndrvSeqL) and smoothing out the rough edges. Also figuring out when / if\nthis is ready to be put into //nix/buildC.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d3dee4b98a5e9f5049c2e1c28e84cf8f6a947097f"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d3dee4b98a5e9f5049c2e1c28e84cf8f6a947097f"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"ee974b3eddffa47d0d16beeada6658f37a21a8d4","is_merged_in_target_branch":true,"change_id":"Icfa0bd4729d9df786e08f7e49a25cba1b9989a91","change_number":2556,"patch_set_number":3,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"610b194e929e7b2bf1a6fc07133531c231a7f015":{"kind":"REWORK","_number":2,"created":"2021-02-28 18:53:42.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/2","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/2","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/2"}}},"commit":{"parents":[{"commit":"ee974b3eddffa47d0d16beeada6658f37a21a8d4","subject":"feat(tazjin/rlox): Bootstrap rough shape of bytecode compiler","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dee974b3eddffa47d0d16beeada6658f37a21a8d4"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:53:34.000000000","tz":60},"subject":"feat(users/sterni/nix/buildC): pure nix build system for C","message":"feat(users/sterni/nix/buildC): pure nix build system for C\n\nThis is somewhat limited and needs to be fleshed out in the future.\nBuilding shared objects and C++ could be supported in the future. Static\nlinking needs to be tested (I hope pkgsStatic.llvmPackages.stdenv just\nworks™).\n\nThe basic idea is based on buildLisp: We take a bunch of files and mash\nthem together. Changes in headers causes everything to be rebuild (which\nis probably the only sane way to handle header changes except for\nmanually specifying dependencies which is annoying). Objects are built\nindividually, so rebuilding big projects should be cheap if headers are\nnot changed (to be tested).\n\nFuture work is mainly figuring nice support for testing (probably via\ndrvSeqL) and smoothing out the rough edges. Also figuring out when / if\nthis is ready to be put into //nix/buildC.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d610b194e929e7b2bf1a6fc07133531c231a7f015"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d610b194e929e7b2bf1a6fc07133531c231a7f015"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"ee974b3eddffa47d0d16beeada6658f37a21a8d4","is_merged_in_target_branch":true,"change_id":"Icfa0bd4729d9df786e08f7e49a25cba1b9989a91","change_number":2556,"patch_set_number":3,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"0f0e6f62d89b56670c8906008e837b7396455d12":{"kind":"REWORK","_number":3,"created":"2021-02-28 20:50:39.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/3","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/3","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/3"}}},"commit":{"parents":[{"commit":"ee974b3eddffa47d0d16beeada6658f37a21a8d4","subject":"feat(tazjin/rlox): Bootstrap rough shape of bytecode compiler","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dee974b3eddffa47d0d16beeada6658f37a21a8d4"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 20:50:36.000000000","tz":60},"subject":"feat(users/sterni/nix/buildC): pure nix build system for C","message":"feat(users/sterni/nix/buildC): pure nix build system for C\n\nThis is somewhat limited and needs to be fleshed out in the future.\nBuilding shared objects and C++ could be supported in the future. Static\nlinking needs to be tested (I hope pkgsStatic.llvmPackages.stdenv just\nworks™).\n\nThe basic idea is based on buildLisp: We take a bunch of files and mash\nthem together. Changes in headers causes everything to be rebuild (which\nis probably the only sane way to handle header changes except for\nmanually specifying dependencies which is annoying). Objects are built\nindividually, so rebuilding big projects should be cheap if headers are\nnot changed (to be tested).\n\nFuture work is mainly figuring nice support for testing (probably via\ndrvSeqL) and smoothing out the rough edges. Also figuring out when / if\nthis is ready to be put into //nix/buildC.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d0f0e6f62d89b56670c8906008e837b7396455d12"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d0f0e6f62d89b56670c8906008e837b7396455d12"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"ee974b3eddffa47d0d16beeada6658f37a21a8d4","is_merged_in_target_branch":true,"change_id":"Icfa0bd4729d9df786e08f7e49a25cba1b9989a91","change_number":2556,"patch_set_number":3,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"40ba287be8de21aec83ca396601318a15756b6a0":{"kind":"REWORK","_number":4,"created":"2021-03-01 00:49:42.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/4","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/4","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/4"}}},"commit":{"parents":[{"commit":"ee974b3eddffa47d0d16beeada6658f37a21a8d4","subject":"feat(tazjin/rlox): Bootstrap rough shape of bytecode compiler","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dee974b3eddffa47d0d16beeada6658f37a21a8d4"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-03-01 00:49:39.000000000","tz":60},"subject":"feat(users/sterni/nix/buildC): pure nix build system for C","message":"feat(users/sterni/nix/buildC): pure nix build system for C\n\nThis is somewhat limited and needs to be fleshed out in the future.\nBuilding shared objects and C++ could be supported in the future. Static\nlinking needs to be tested (I hope pkgsStatic.llvmPackages.stdenv just\nworks™).\n\nThe basic idea is based on buildLisp: We take a bunch of files and mash\nthem together. Changes in headers causes everything to be rebuild (which\nis probably the only sane way to handle header changes except for\nmanually specifying dependencies which is annoying). Objects are built\nindividually, so rebuilding big projects should be cheap if headers are\nnot changed (to be tested).\n\nFuture work is mainly figuring nice support for testing (probably via\ndrvSeqL) and smoothing out the rough edges. Also figuring out when / if\nthis is ready to be put into //nix/buildC.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d40ba287be8de21aec83ca396601318a15756b6a0"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d40ba287be8de21aec83ca396601318a15756b6a0"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"ee974b3eddffa47d0d16beeada6658f37a21a8d4","is_merged_in_target_branch":true,"change_id":"Icfa0bd4729d9df786e08f7e49a25cba1b9989a91","change_number":2556,"patch_set_number":3,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"d141488eecf40aee83c86e7945ee0432b8faedf1":{"kind":"REWORK","_number":5,"created":"2021-03-13 01:19:05.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/5","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/5","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/5"}}},"commit":{"parents":[{"commit":"b3f686995fe3321b7f62f0247391cc2afd8b4d8c","subject":"feat(users/sterni/htmlman): hyperlink .Xr macro in output","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003db3f686995fe3321b7f62f0247391cc2afd8b4d8c"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-03-13 01:10:51.000000000","tz":60},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nThis is somewhat limited and needs to be fleshed out in the future.\n\nThe basic idea is based on buildLisp: We take a bunch of files and mash\nthem together. Changes in headers causes everything to be rebuild (which\nis probably the only sane way to handle header changes except for\nmanually specifying dependencies which is annoying). Objects are built\nindividually, so rebuilding big projects should be cheap if headers are\nnot changed (to be tested).\n\nWe support building shared and static objects, however static linking\nrequires more work: We need to a) propagate dependencies, probably by\nrecoursing into a tree and b) actually link binaries statically which is\nhindered by -static -lc not working with default stdenvs.\n\nTesting (probably via drvSeqL) will also have to be added.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dd141488eecf40aee83c86e7945ee0432b8faedf1"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dd141488eecf40aee83c86e7945ee0432b8faedf1"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"b3f686995fe3321b7f62f0247391cc2afd8b4d8c","is_merged_in_target_branch":true,"change_id":"I1363b9dfdda25cb7383c7310b8115c335444bd3d","change_number":2597,"patch_set_number":3,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"6b84769b80f408d6d55850905be724e67de60ddb":{"kind":"REWORK","_number":6,"created":"2021-03-17 14:12:28.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/6","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/6","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/6"}}},"commit":{"parents":[{"commit":"5b9229186face34fb612b8ecc1e4f94eed598bc9","subject":"feat(ops/dns): Configure tvl.su zone","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d5b9229186face34fb612b8ecc1e4f94eed598bc9"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-03-17 14:11:38.000000000","tz":60},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nThis is somewhat limited and needs to be fleshed out in the future.\n\nThe basic idea is based on buildLisp: We take a bunch of files and mash\nthem together. Changes in headers causes everything to be rebuild (which\nis probably the only sane way to handle header changes except for\nmanually specifying dependencies which is annoying). Objects are built\nindividually, so rebuilding big projects should be cheap if headers are\nnot changed (to be tested).\n\nWe support building shared and static objects, however static linking\nrequires more work: We need to a) propagate dependencies, probably by\nrecoursing into a tree and b) actually link binaries statically which\nneeds some linker figuring out and maybe even dedicated libcs.\n\nTesting (probably via drvSeqL) will also have to be added.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d6b84769b80f408d6d55850905be724e67de60ddb"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d6b84769b80f408d6d55850905be724e67de60ddb"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"5b9229186face34fb612b8ecc1e4f94eed598bc9","is_merged_in_target_branch":true,"change_id":"I6016d92e9c231a257e06644dfcf44a4aaa12ac4d","change_number":2601,"patch_set_number":4,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"4a001822b06867234d9d68f66d75587330895d32":{"kind":"REWORK","_number":7,"created":"2021-03-17 16:00:25.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/7","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/7","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/7 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/7 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/7 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/7"}}},"commit":{"parents":[{"commit":"5b9229186face34fb612b8ecc1e4f94eed598bc9","subject":"feat(ops/dns): Configure tvl.su zone","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d5b9229186face34fb612b8ecc1e4f94eed598bc9"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-03-17 15:59:54.000000000","tz":60},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nThis is somewhat limited and needs to be fleshed out in the future.\n\nThe basic idea is based on buildLisp: We take a bunch of files and mash\nthem together. Changes in headers causes everything to be rebuild (which\nis probably the only sane way to handle header changes except for\nmanually specifying dependencies which is annoying). Objects are built\nindividually, so rebuilding big projects should be cheap if headers are\nnot changed (to be tested).\n\nWe support building shared and static objects, however static linking\nrequires more work: We need to a) propagate dependencies, probably by\nrecoursing into a tree and b) actually link binaries statically which\nneeds some linker figuring out and maybe even dedicated libcs.\n\nTesting convenience needs to increased, probably by passing the library\nto the test for building purposes if it is a function.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d4a001822b06867234d9d68f66d75587330895d32"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d4a001822b06867234d9d68f66d75587330895d32"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"5b9229186face34fb612b8ecc1e4f94eed598bc9","is_merged_in_target_branch":true,"change_id":"I6016d92e9c231a257e06644dfcf44a4aaa12ac4d","change_number":2601,"patch_set_number":4,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"68b4bf4f35547f849bd6b8fd1b26e55a56a47ab7":{"kind":"REWORK","_number":8,"created":"2021-03-17 16:10:17.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/8","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/8","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/8 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/8 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/8 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/8"}}},"commit":{"parents":[{"commit":"5b9229186face34fb612b8ecc1e4f94eed598bc9","subject":"feat(ops/dns): Configure tvl.su zone","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d5b9229186face34fb612b8ecc1e4f94eed598bc9"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-03-17 16:10:05.000000000","tz":60},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nThis is somewhat limited and needs to be fleshed out in the future.\n\nThe basic idea is based on buildLisp: We take a bunch of files and mash\nthem together. Changes in headers causes everything to be rebuild (which\nis probably the only sane way to handle header changes except for\nmanually specifying dependencies which is annoying). Objects are built\nindividually, so rebuilding big projects should be cheap if headers are\nnot changed (to be tested).\n\nWe support building shared and static objects, however static linking\nrequires more work: We need to a) propagate dependencies, probably by\nrecoursing into a tree and b) actually link binaries statically which\nneeds some linker figuring out and maybe even dedicated libcs.\n\nTesting convenience needs to increased, probably by passing the library\nto the test for building purposes if it is a function.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d68b4bf4f35547f849bd6b8fd1b26e55a56a47ab7"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d68b4bf4f35547f849bd6b8fd1b26e55a56a47ab7"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"5b9229186face34fb612b8ecc1e4f94eed598bc9","is_merged_in_target_branch":true,"change_id":"I6016d92e9c231a257e06644dfcf44a4aaa12ac4d","change_number":2601,"patch_set_number":4,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"714ba6847886932de24c84c66c991738e9ceafc5":{"kind":"REWORK","_number":9,"created":"2021-03-18 20:12:54.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/9","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/9","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/9 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/9 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/9 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/9"}}},"commit":{"parents":[{"commit":"5b9229186face34fb612b8ecc1e4f94eed598bc9","subject":"feat(ops/dns): Configure tvl.su zone","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d5b9229186face34fb612b8ecc1e4f94eed598bc9"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-03-18 20:12:43.000000000","tz":60},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nThis is somewhat limited and needs to be fleshed out in the future.\n\nThe basic idea is based on buildLisp: We take a bunch of files and mash\nthem together. Changes in headers causes everything to be rebuild (which\nis probably the only sane way to handle header changes except for\nmanually specifying dependencies which is annoying). Objects are built\nindividually, so rebuilding big projects should be cheap if headers are\nnot changed (to be tested).\n\nWe support building shared and static objects, however static linking\nrequires more work: We need to a) propagate dependencies, probably by\nrecoursing into a tree and b) actually link binaries statically which\nneeds some linker figuring out and maybe even dedicated libcs.\n\nTesting convenience needs to increased, probably by passing the library\nto the test for building purposes if it is a function.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d714ba6847886932de24c84c66c991738e9ceafc5"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d714ba6847886932de24c84c66c991738e9ceafc5"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"5b9229186face34fb612b8ecc1e4f94eed598bc9","is_merged_in_target_branch":true,"change_id":"I6016d92e9c231a257e06644dfcf44a4aaa12ac4d","change_number":2601,"patch_set_number":4,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"719c5e1f62cf80fbea654efe7c536bfd7e02b96d":{"kind":"REWORK","_number":10,"created":"2021-03-20 17:43:57.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/10","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/10","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/10 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/10 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/10 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/10"}}},"commit":{"parents":[{"commit":"a01fe5c06fc99bd66c681b981f63534e03063aee","subject":"fix(gs/xanthous): fix build failures caused by dependency updates","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003da01fe5c06fc99bd66c681b981f63534e03063aee"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-03-20 17:43:49.000000000","tz":60},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nThis is somewhat limited and needs to be fleshed out in the future.\n\nThe basic idea is based on buildLisp: We take a bunch of files and mash\nthem together. Changes in headers causes everything to be rebuild (which\nis probably the only sane way to handle header changes except for\nmanually specifying dependencies which is annoying). Objects are built\nindividually, so rebuilding big projects should be cheap if headers are\nnot changed (to be tested).\n\nWe support building shared and static objects, however static linking\nrequires more work: We need to a) propagate dependencies, probably by\nrecoursing into a tree and b) actually link binaries statically which\nneeds some linker figuring out and maybe even dedicated libcs.\n\nTesting convenience needs to increased, probably by passing the library\nto the test for building purposes if it is a function.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d719c5e1f62cf80fbea654efe7c536bfd7e02b96d"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d719c5e1f62cf80fbea654efe7c536bfd7e02b96d"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"a01fe5c06fc99bd66c681b981f63534e03063aee","is_merged_in_target_branch":true,"change_id":"I3617d8916d753b386c9fa80062be6bcbdfee0131","change_number":2607,"patch_set_number":5,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"e268f7aefa830547c3af15557407f54a9080921c":{"kind":"REWORK","_number":11,"created":"2021-03-22 23:47:52.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/11","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/11","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/11 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/11 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/11 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/11"}}},"commit":{"parents":[{"commit":"d053abfd2a52d663fb31bf15b910cd7145abc285","subject":"feat(users/Profpatsch): add imap-idle","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dd053abfd2a52d663fb31bf15b910cd7145abc285"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-03-22 23:47:39.000000000","tz":60},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nThis is somewhat limited and needs to be fleshed out in the future.\n\nThe basic idea is based on buildLisp: We take a bunch of files and mash\nthem together. Changes in headers causes everything to be rebuild (which\nis probably the only sane way to handle header changes except for\nmanually specifying dependencies which is annoying). Objects are built\nindividually, so rebuilding big projects should be cheap if headers are\nnot changed (to be tested).\n\nWe support building shared and static objects, however static linking\nrequires more work: We need to a) propagate dependencies, probably by\nrecoursing into a tree and b) actually link binaries statically which\nneeds some linker figuring out and maybe even dedicated libcs.\n\nTesting convenience needs to increased, probably by passing the library\nto the test for building purposes if it is a function.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003de268f7aefa830547c3af15557407f54a9080921c"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003de268f7aefa830547c3af15557407f54a9080921c"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"d053abfd2a52d663fb31bf15b910cd7145abc285","is_merged_in_target_branch":true,"change_id":"I221717d374c0efc8d9e05fe0dfccba31798b3c5c","change_number":2636,"patch_set_number":4,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"840b3b2338e4c82b27bfc835154027f0024e0532":{"kind":"TRIVIAL_REBASE","_number":12,"created":"2021-03-23 21:21:00.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/12","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/12","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/12 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/12 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/12 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/12"}}},"commit":{"parents":[{"commit":"3ce7e21e6ec63604b13db6a7035a79456d426f7d","subject":"feat(sterni/dot-time-man-pages): mdoc port of dotti.me","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d3ce7e21e6ec63604b13db6a7035a79456d426f7d"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-03-23 21:20:18.000000000","tz":60},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nThis is somewhat limited and needs to be fleshed out in the future.\n\nThe basic idea is based on buildLisp: We take a bunch of files and mash\nthem together. Changes in headers causes everything to be rebuild (which\nis probably the only sane way to handle header changes except for\nmanually specifying dependencies which is annoying). Objects are built\nindividually, so rebuilding big projects should be cheap if headers are\nnot changed (to be tested).\n\nWe support building shared and static objects, however static linking\nrequires more work: We need to a) propagate dependencies, probably by\nrecoursing into a tree and b) actually link binaries statically which\nneeds some linker figuring out and maybe even dedicated libcs.\n\nTesting convenience needs to increased, probably by passing the library\nto the test for building purposes if it is a function.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d840b3b2338e4c82b27bfc835154027f0024e0532"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d840b3b2338e4c82b27bfc835154027f0024e0532"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"3ce7e21e6ec63604b13db6a7035a79456d426f7d","is_merged_in_target_branch":false,"change_id":"I8db00bd402697aa52f6f651f28692617b487f832","change_number":2642,"patch_set_number":2,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"7684114c3d433fee81bf5f78add3403332a0c820":{"kind":"TRIVIAL_REBASE","_number":13,"created":"2021-03-24 14:51:50.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/13","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/13","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/13 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/13 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/13 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/13"}}},"commit":{"parents":[{"commit":"c7c1fef425c9f786a9fc992d41c91b62f1815c15","subject":"feat(sterni/dot-time-man-pages): mdoc port of dotti.me","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dc7c1fef425c9f786a9fc992d41c91b62f1815c15"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-03-23 23:58:45.000000000","tz":60},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nThis is somewhat limited and needs to be fleshed out in the future.\n\nThe basic idea is based on buildLisp: We take a bunch of files and mash\nthem together. Changes in headers causes everything to be rebuild (which\nis probably the only sane way to handle header changes except for\nmanually specifying dependencies which is annoying). Objects are built\nindividually, so rebuilding big projects should be cheap if headers are\nnot changed (to be tested).\n\nWe support building shared and static objects, however static linking\nrequires more work: We need to a) propagate dependencies, probably by\nrecoursing into a tree and b) actually link binaries statically which\nneeds some linker figuring out and maybe even dedicated libcs.\n\nTesting convenience needs to increased, probably by passing the library\nto the test for building purposes if it is a function.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d7684114c3d433fee81bf5f78add3403332a0c820"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d7684114c3d433fee81bf5f78add3403332a0c820"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"c7c1fef425c9f786a9fc992d41c91b62f1815c15","is_merged_in_target_branch":false,"change_id":"I8db00bd402697aa52f6f651f28692617b487f832","change_number":2642,"patch_set_number":3,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"b32be72b53ac4985783c2f8c7a69fb61d8cd40dc":{"kind":"NO_CHANGE","_number":14,"created":"2021-03-24 19:06:16.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/14","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/14","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/14 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/14 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/14 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/14"}}},"commit":{"parents":[{"commit":"757e5e7014dc69d59d5ee010448c98ac9bf0cef4","subject":"feat(sterni/dot-time-man-pages): mdoc port of dotti.me","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d757e5e7014dc69d59d5ee010448c98ac9bf0cef4"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-03-24 19:06:08.000000000","tz":60},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nThis is somewhat limited and needs to be fleshed out in the future.\n\nThe basic idea is based on buildLisp: We take a bunch of files and mash\nthem together. Changes in headers causes everything to be rebuild (which\nis probably the only sane way to handle header changes except for\nmanually specifying dependencies which is annoying). Objects are built\nindividually, so rebuilding big projects should be cheap if headers are\nnot changed (to be tested).\n\nWe support building shared and static objects, however static linking\nrequires more work: We need to a) propagate dependencies, probably by\nrecoursing into a tree and b) actually link binaries statically which\nneeds some linker figuring out and maybe even dedicated libcs.\n\nTesting convenience needs to increased, probably by passing the library\nto the test for building purposes if it is a function.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003db32be72b53ac4985783c2f8c7a69fb61d8cd40dc"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003db32be72b53ac4985783c2f8c7a69fb61d8cd40dc"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"757e5e7014dc69d59d5ee010448c98ac9bf0cef4","is_merged_in_target_branch":false,"change_id":"I8db00bd402697aa52f6f651f28692617b487f832","change_number":2642,"patch_set_number":4,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"7ef1d0ace865132f3ff1e50abde46fbb8025bc45":{"kind":"TRIVIAL_REBASE","_number":15,"created":"2021-03-26 10:20:41.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/15","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/15","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/15 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/15 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/15 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/15"}}},"commit":{"parents":[{"commit":"80d63c2bbfe55ea66ea38aeea09c0700c8ec1c0e","subject":"feat(sterni/dot-time-man-pages): mdoc port of dotti.me","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d80d63c2bbfe55ea66ea38aeea09c0700c8ec1c0e"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-03-26 10:20:38.000000000","tz":60},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nThis is somewhat limited and needs to be fleshed out in the future.\n\nThe basic idea is based on buildLisp: We take a bunch of files and mash\nthem together. Changes in headers causes everything to be rebuild (which\nis probably the only sane way to handle header changes except for\nmanually specifying dependencies which is annoying). Objects are built\nindividually, so rebuilding big projects should be cheap if headers are\nnot changed (to be tested).\n\nWe support building shared and static objects, however static linking\nrequires more work: We need to a) propagate dependencies, probably by\nrecoursing into a tree and b) actually link binaries statically which\nneeds some linker figuring out and maybe even dedicated libcs.\n\nTesting convenience needs to increased, probably by passing the library\nto the test for building purposes if it is a function.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d7ef1d0ace865132f3ff1e50abde46fbb8025bc45"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d7ef1d0ace865132f3ff1e50abde46fbb8025bc45"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"80d63c2bbfe55ea66ea38aeea09c0700c8ec1c0e","is_merged_in_target_branch":false,"change_id":"I8db00bd402697aa52f6f651f28692617b487f832","change_number":2642,"patch_set_number":5,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"b840c37adb60307ac6053a0f6e172b49cfbed3bb":{"kind":"REWORK","_number":16,"created":"2021-03-27 23:24:46.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/16","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/16","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/16 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/16 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/16 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/16"}}},"commit":{"parents":[{"commit":"80d63c2bbfe55ea66ea38aeea09c0700c8ec1c0e","subject":"feat(sterni/dot-time-man-pages): mdoc port of dotti.me","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d80d63c2bbfe55ea66ea38aeea09c0700c8ec1c0e"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-03-27 23:23:41.000000000","tz":60},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nTODO(sterni): write an up to date commit message when I\u0027m awake again\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003db840c37adb60307ac6053a0f6e172b49cfbed3bb"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003db840c37adb60307ac6053a0f6e172b49cfbed3bb"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"80d63c2bbfe55ea66ea38aeea09c0700c8ec1c0e","is_merged_in_target_branch":false,"change_id":"I8db00bd402697aa52f6f651f28692617b487f832","change_number":2642,"patch_set_number":5,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"ff0f436aa61038e7458741d9568526c2e305872e":{"kind":"REWORK","_number":17,"created":"2021-03-29 23:41:33.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/17","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/17","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/17 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/17 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/17 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/17"}}},"commit":{"parents":[{"commit":"a0bd3d4f2dae67e455329f7b86f373c492350eed","subject":"feat(sterni/dot-time-man-pages): mdoc port of dotti.me","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003da0bd3d4f2dae67e455329f7b86f373c492350eed"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-03-29 23:41:27.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nTODO(sterni): write an up to date commit message when I\u0027m awake again\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dff0f436aa61038e7458741d9568526c2e305872e"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dff0f436aa61038e7458741d9568526c2e305872e"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"a0bd3d4f2dae67e455329f7b86f373c492350eed","is_merged_in_target_branch":false,"change_id":"I8db00bd402697aa52f6f651f28692617b487f832","change_number":2642,"patch_set_number":6,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"57b79bcfcfe56813cc58c7550b73e056827d8507":{"kind":"TRIVIAL_REBASE","_number":18,"created":"2021-03-29 23:41:43.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/18","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/18","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/18 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/18 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/18 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/18"}}},"commit":{"parents":[{"commit":"9298f50595f1dc2ad0c6e620670aed8db21fb9c0","subject":"feat(sterni/dot-time-man-pages): mdoc port of dotti.me","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d9298f50595f1dc2ad0c6e620670aed8db21fb9c0"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-03-29 23:41:40.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nTODO(sterni): write an up to date commit message when I\u0027m awake again\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d57b79bcfcfe56813cc58c7550b73e056827d8507"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d57b79bcfcfe56813cc58c7550b73e056827d8507"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"9298f50595f1dc2ad0c6e620670aed8db21fb9c0","is_merged_in_target_branch":false,"change_id":"I8db00bd402697aa52f6f651f28692617b487f832","change_number":2642,"patch_set_number":7,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"740858630d22ef718a1b07524917c6c0aaed6161":{"kind":"REWORK","_number":19,"created":"2021-03-31 14:54:41.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/19","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/19","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/19 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/19 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/19 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/19"}}},"commit":{"parents":[{"commit":"6863f1fb88603f95a60f531492f0645620a6ade2","subject":"feat(sterni/dot-time-man-pages): mdoc port of dotti.me","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d6863f1fb88603f95a60f531492f0645620a6ade2"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-03-31 14:54:32.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nTODO(sterni): write an up to date commit message when I\u0027m awake again\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d740858630d22ef718a1b07524917c6c0aaed6161"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d740858630d22ef718a1b07524917c6c0aaed6161"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"6863f1fb88603f95a60f531492f0645620a6ade2","is_merged_in_target_branch":false,"change_id":"I8db00bd402697aa52f6f651f28692617b487f832","change_number":2642,"patch_set_number":8,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"afb85b01798babbef8de064da12473ecbb9a86ec":{"kind":"TRIVIAL_REBASE","_number":20,"created":"2021-03-31 22:59:27.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/20","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/20","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/20 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/20 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/20 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/20"}}},"commit":{"parents":[{"commit":"f16c07a92dc7e772eb0ae46c11fdc99b574a1775","subject":"feat(sterni/dot-time-man-pages): mdoc port of dotti.me","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003df16c07a92dc7e772eb0ae46c11fdc99b574a1775"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-03-31 22:59:24.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nTODO(sterni): write an up to date commit message when I\u0027m awake again\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dafb85b01798babbef8de064da12473ecbb9a86ec"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dafb85b01798babbef8de064da12473ecbb9a86ec"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"f16c07a92dc7e772eb0ae46c11fdc99b574a1775","is_merged_in_target_branch":false,"change_id":"I8db00bd402697aa52f6f651f28692617b487f832","change_number":2642,"patch_set_number":9,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"4cb255b9088d4f8f97974e29aa81ef9034a63d4f":{"kind":"TRIVIAL_REBASE","_number":21,"created":"2021-04-02 20:05:15.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/21","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/21","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/21 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/21 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/21 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/21"}}},"commit":{"parents":[{"commit":"817cd6f166af88b73ff7b80e7e70a0689951f731","subject":"feat(ops/nixos/www): Enable tvl.su aliases for dev tools","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d817cd6f166af88b73ff7b80e7e70a0689951f731"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-02 12:07:59.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nTODO(sterni): write an up to date commit message when I\u0027m awake again\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d4cb255b9088d4f8f97974e29aa81ef9034a63d4f"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d4cb255b9088d4f8f97974e29aa81ef9034a63d4f"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"817cd6f166af88b73ff7b80e7e70a0689951f731","is_merged_in_target_branch":true,"change_id":"I1c3bcf72a3063059002e4b0bdd57c269a410a8bc","change_number":2758,"patch_set_number":3,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"692dbee3b2bd00ecb3f187ed4f85eb92747faab2":{"kind":"REWORK","_number":22,"created":"2021-04-03 22:13:43.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/22","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/22","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/22 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/22 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/22 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/22"}}},"commit":{"parents":[{"commit":"9b603cb3e8603b6347c3853451a2dd23202a4c82","subject":"feat(3p/rust-crates): get dependencies from the depot fix point","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d9b603cb3e8603b6347c3853451a2dd23202a4c82"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-03 22:13:14.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nTODO(sterni): write an up to date commit message when I\u0027m awake again\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d692dbee3b2bd00ecb3f187ed4f85eb92747faab2"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d692dbee3b2bd00ecb3f187ed4f85eb92747faab2"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"9b603cb3e8603b6347c3853451a2dd23202a4c82","is_merged_in_target_branch":false,"change_id":"Ibb8dffcf32e8f46817a2db2da26139fabdce55bc","change_number":2770,"patch_set_number":5,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"af4720aaa3125f5d5fdd5b88bd1ee3e5fa41c18a":{"kind":"TRIVIAL_REBASE","_number":23,"created":"2021-04-03 22:18:46.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/23","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/23","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/23 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/23 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/23 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/23"}}},"commit":{"parents":[{"commit":"835def3d81e56ffbe32d0d167f10e4fb1d3863f5","subject":"feat(3p/rust-crates): get dependencies from the depot fix point","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d835def3d81e56ffbe32d0d167f10e4fb1d3863f5"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-03 22:17:01.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nTODO(sterni): write an up to date commit message when I\u0027m awake again\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003daf4720aaa3125f5d5fdd5b88bd1ee3e5fa41c18a"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003daf4720aaa3125f5d5fdd5b88bd1ee3e5fa41c18a"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"835def3d81e56ffbe32d0d167f10e4fb1d3863f5","is_merged_in_target_branch":false,"change_id":"Ibb8dffcf32e8f46817a2db2da26139fabdce55bc","change_number":2770,"patch_set_number":6,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"9e0fccb59e4151f1bacc48dc5bb2ae529438cc83":{"kind":"TRIVIAL_REBASE","_number":24,"created":"2021-04-03 22:23:15.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/24","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/24","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/24 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/24 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/24 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/24"}}},"commit":{"parents":[{"commit":"ca55e99a3ee39dd30d044c5f406e784757232848","subject":"refactor(3p/rust-crates): use imported buildRustCrate everywhere","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dca55e99a3ee39dd30d044c5f406e784757232848"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-03 22:23:13.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nTODO(sterni): write an up to date commit message when I\u0027m awake again\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d9e0fccb59e4151f1bacc48dc5bb2ae529438cc83"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d9e0fccb59e4151f1bacc48dc5bb2ae529438cc83"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"ca55e99a3ee39dd30d044c5f406e784757232848","is_merged_in_target_branch":false,"change_id":"I979da11471187e36cde5c015aaf654f925757a8b","change_number":2814,"patch_set_number":1,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"7d9cb7e1e54cfe2005556a18b259aaa89f8f6051":{"kind":"REWORK","_number":25,"created":"2021-04-03 22:45:44.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/25","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/25","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/25 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/25 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/25 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/25"}}},"commit":{"parents":[{"commit":"ca55e99a3ee39dd30d044c5f406e784757232848","subject":"refactor(3p/rust-crates): use imported buildRustCrate everywhere","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dca55e99a3ee39dd30d044c5f406e784757232848"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-03 22:45:37.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nTODO(sterni): write an up to date commit message when I\u0027m awake again\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d7d9cb7e1e54cfe2005556a18b259aaa89f8f6051"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d7d9cb7e1e54cfe2005556a18b259aaa89f8f6051"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"ca55e99a3ee39dd30d044c5f406e784757232848","is_merged_in_target_branch":false,"change_id":"I979da11471187e36cde5c015aaf654f925757a8b","change_number":2814,"patch_set_number":1,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"a15e3f9480c84c43c5796c360ccb471ef7ca9360":{"kind":"REWORK","_number":26,"created":"2021-04-04 15:43:00.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/26","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/26","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/26 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/26 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/26 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/26"}}},"commit":{"parents":[{"commit":"e7c78570ed66cd753add2664b7545d234c947b84","subject":"feat(users/Profpatsch/writers): make testing default for rustSimple","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003de7c78570ed66cd753add2664b7545d234c947b84"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-04 15:21:19.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003da15e3f9480c84c43c5796c360ccb471ef7ca9360"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003da15e3f9480c84c43c5796c360ccb471ef7ca9360"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"e7c78570ed66cd753add2664b7545d234c947b84","is_merged_in_target_branch":true,"change_id":"I32a81821eeff620e7da57332b0873495bb85a843","change_number":2841,"patch_set_number":4,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"93a63ef981cbf389dbf139e12f19d68195520fcf":{"kind":"TRIVIAL_REBASE","_number":27,"created":"2021-04-05 00:00:33.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/27","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/27","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/27 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/27 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/27 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/27"}}},"commit":{"parents":[{"commit":"cbd6f5bbae95c26b1e67993ac609e83fa4b117fb","subject":"feat(tverskoy): Configure whitby binary cache","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dcbd6f5bbae95c26b1e67993ac609e83fa4b117fb"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-04 19:16:20.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d93a63ef981cbf389dbf139e12f19d68195520fcf"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d93a63ef981cbf389dbf139e12f19d68195520fcf"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"cbd6f5bbae95c26b1e67993ac609e83fa4b117fb","is_merged_in_target_branch":true,"change_id":"I51d4b42998d6005da15e4d0bed82062cd4e36fe9","change_number":2848,"patch_set_number":3,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"a694c5cfd0d92c1199e3a6c87f0f497b208fc499":{"kind":"REWORK","_number":28,"created":"2021-04-05 00:43:40.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/28","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/28","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/28 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/28 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/28 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/28"}}},"commit":{"parents":[{"commit":"0d0da3cda043a019c9693b1c1357fa9531074e04","subject":"feat(web/bubblegum): allow passing status as an int","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d0d0da3cda043a019c9693b1c1357fa9531074e04"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-05 00:43:33.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003da694c5cfd0d92c1199e3a6c87f0f497b208fc499"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003da694c5cfd0d92c1199e3a6c87f0f497b208fc499"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"0d0da3cda043a019c9693b1c1357fa9531074e04","is_merged_in_target_branch":false,"change_id":"I3f012a291447ef385efdd28132292a8b331998c0","change_number":2850,"patch_set_number":2,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"770699fbc7525e3a17a8fa98ba436ea60d2de4da":{"kind":"REWORK","_number":29,"created":"2021-04-05 00:50:26.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/29","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/29","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/29 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/29 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/29 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/29"}}},"commit":{"parents":[{"commit":"0d0da3cda043a019c9693b1c1357fa9531074e04","subject":"feat(web/bubblegum): allow passing status as an int","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d0d0da3cda043a019c9693b1c1357fa9531074e04"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-05 00:50:22.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d770699fbc7525e3a17a8fa98ba436ea60d2de4da"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d770699fbc7525e3a17a8fa98ba436ea60d2de4da"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"0d0da3cda043a019c9693b1c1357fa9531074e04","is_merged_in_target_branch":false,"change_id":"I3f012a291447ef385efdd28132292a8b331998c0","change_number":2850,"patch_set_number":2,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"586a48bc2fc804d4b23ba7a35d0458dbf201fad4":{"kind":"TRIVIAL_REBASE","_number":30,"created":"2021-04-05 10:51:58.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/30","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/30","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/30 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/30 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/30 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/30"}}},"commit":{"parents":[{"commit":"ce44359e9e54c681e438fbc4be64ec7642617ebd","subject":"feat(web/bubblegum): allow passing status as an int","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dce44359e9e54c681e438fbc4be64ec7642617ebd"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-05 10:51:56.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d586a48bc2fc804d4b23ba7a35d0458dbf201fad4"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d586a48bc2fc804d4b23ba7a35d0458dbf201fad4"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"ce44359e9e54c681e438fbc4be64ec7642617ebd","is_merged_in_target_branch":false,"change_id":"I3f012a291447ef385efdd28132292a8b331998c0","change_number":2850,"patch_set_number":3,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"e0b31406f403ab10e9f1a0f69c7395d473a9f964":{"kind":"REWORK","_number":31,"created":"2021-04-05 14:08:07.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/31","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/31","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/31 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/31 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/31 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/31"}}},"commit":{"parents":[{"commit":"386afdc794eefd5bcbc47a3fd7b898a07f69f978","subject":"feat(web/bubblegum): allow passing status as an int","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d386afdc794eefd5bcbc47a3fd7b898a07f69f978"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-05 14:05:37.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003de0b31406f403ab10e9f1a0f69c7395d473a9f964"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003de0b31406f403ab10e9f1a0f69c7395d473a9f964"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"386afdc794eefd5bcbc47a3fd7b898a07f69f978","is_merged_in_target_branch":true,"change_id":"I3f012a291447ef385efdd28132292a8b331998c0","change_number":2850,"patch_set_number":4,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"9b73eb2ae71cae69587f630c5758d8d0762a7aad":{"kind":"TRIVIAL_REBASE","_number":32,"created":"2021-04-09 23:52:50.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/32","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/32","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/32 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/32 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/32 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/32"}}},"commit":{"parents":[{"commit":"eaa4326c6d2740dc6f11676da43ab3c20d905193","subject":"fix(panettone): always use displayname in subjects","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003deaa4326c6d2740dc6f11676da43ab3c20d905193"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-09 23:52:48.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d9b73eb2ae71cae69587f630c5758d8d0762a7aad"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d9b73eb2ae71cae69587f630c5758d8d0762a7aad"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"eaa4326c6d2740dc6f11676da43ab3c20d905193","is_merged_in_target_branch":false,"change_id":"Id12d3d9619f42eb5337c2d3482b7c1646b5d6a81","change_number":2911,"patch_set_number":1,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"c9ddef133147b5efb85777d16c44f06f86760a4f":{"kind":"REWORK","_number":33,"created":"2021-04-09 23:55:22.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/33","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/33","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/33 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/33 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/33 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/33"}}},"commit":{"parents":[{"commit":"79bd7c8170ff664381f3a53bd55109b077527b51","subject":"fix(panettone): always use displayname in subjects","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d79bd7c8170ff664381f3a53bd55109b077527b51"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-09 23:55:16.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dc9ddef133147b5efb85777d16c44f06f86760a4f"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dc9ddef133147b5efb85777d16c44f06f86760a4f"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"79bd7c8170ff664381f3a53bd55109b077527b51","is_merged_in_target_branch":false,"change_id":"Id12d3d9619f42eb5337c2d3482b7c1646b5d6a81","change_number":2911,"patch_set_number":2,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"e868396759cfd9df490ce4a96440969be7e36996":{"kind":"REWORK","_number":34,"created":"2021-04-10 09:29:08.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/34","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/34","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/34 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/34 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/34 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/34"}}},"commit":{"parents":[{"commit":"fb0e76ae66040b8af037aa7ff5050cb72219d074","subject":"refactor(sterni): use pkgs over third_party to import from nixpkgs","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dfb0e76ae66040b8af037aa7ff5050cb72219d074"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-10 09:29:02.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003de868396759cfd9df490ce4a96440969be7e36996"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003de868396759cfd9df490ce4a96440969be7e36996"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"fb0e76ae66040b8af037aa7ff5050cb72219d074","is_merged_in_target_branch":false,"change_id":"I53a854071fddd7c0d0526cc4c5b16998202082c6","change_number":2913,"patch_set_number":1,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"44fe9c49a6e1dd156b42d5b3be26f665244b011b":{"kind":"REWORK","_number":35,"created":"2021-04-10 09:30:50.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/35","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/35","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/35 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/35 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/35 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/35"}}},"commit":{"parents":[{"commit":"fb0e76ae66040b8af037aa7ff5050cb72219d074","subject":"refactor(sterni): use pkgs over third_party to import from nixpkgs","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dfb0e76ae66040b8af037aa7ff5050cb72219d074"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-10 09:30:39.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d44fe9c49a6e1dd156b42d5b3be26f665244b011b"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d44fe9c49a6e1dd156b42d5b3be26f665244b011b"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"fb0e76ae66040b8af037aa7ff5050cb72219d074","is_merged_in_target_branch":false,"change_id":"I53a854071fddd7c0d0526cc4c5b16998202082c6","change_number":2913,"patch_set_number":1,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"222cf9864ba5dcc2e555c97b20e1c3293e6edd0a":{"kind":"TRIVIAL_REBASE","_number":36,"created":"2021-04-10 17:10:25.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/36","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/36","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/36 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/36 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/36 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/36"}}},"commit":{"parents":[{"commit":"360b82d9bcaa005dab596472fa6f7b2106f4cd87","subject":"refactor: build all haskell packages without ifd","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d360b82d9bcaa005dab596472fa6f7b2106f4cd87"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-10 17:10:22.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d222cf9864ba5dcc2e555c97b20e1c3293e6edd0a"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d222cf9864ba5dcc2e555c97b20e1c3293e6edd0a"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"360b82d9bcaa005dab596472fa6f7b2106f4cd87","is_merged_in_target_branch":false,"change_id":"I8fff70b4b6c303d1920f8bcac53520a09999b206","change_number":2921,"patch_set_number":1,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"9ef7fcdee44398b167ea38302930ec26da62dfb8":{"kind":"TRIVIAL_REBASE","_number":37,"created":"2021-04-10 17:11:31.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/37","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/37","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/37 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/37 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/37 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/37"}}},"commit":{"parents":[{"commit":"4894aa5e22b86c123a24c33711ed761c108fc721","subject":"refactor: build all haskell packages without ifd","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d4894aa5e22b86c123a24c33711ed761c108fc721"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-10 17:11:19.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d9ef7fcdee44398b167ea38302930ec26da62dfb8"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d9ef7fcdee44398b167ea38302930ec26da62dfb8"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"4894aa5e22b86c123a24c33711ed761c108fc721","is_merged_in_target_branch":false,"change_id":"I8fff70b4b6c303d1920f8bcac53520a09999b206","change_number":2921,"patch_set_number":2,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"398c9674ab8054fadc4a474fce87ac17d4b816f2":{"kind":"TRIVIAL_REBASE","_number":38,"created":"2021-04-10 20:16:25.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/38","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/38","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/38 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/38 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/38 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/38"}}},"commit":{"parents":[{"commit":"efab9a1194d73a82fe9bff68a8f27660f7308959","subject":"refactor: build all haskell packages without ifd","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003defab9a1194d73a82fe9bff68a8f27660f7308959"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-10 20:16:23.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d398c9674ab8054fadc4a474fce87ac17d4b816f2"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d398c9674ab8054fadc4a474fce87ac17d4b816f2"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"efab9a1194d73a82fe9bff68a8f27660f7308959","is_merged_in_target_branch":false,"change_id":"I8fff70b4b6c303d1920f8bcac53520a09999b206","change_number":2921,"patch_set_number":3,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"7f2d4c540bda235d7f3bb54ec69f0637035baa6d":{"kind":"REWORK","_number":39,"created":"2021-04-10 21:57:57.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/39","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/39","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/39 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/39 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/39 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/39"}}},"commit":{"parents":[{"commit":"726eff80f131e81e56faf4b6273ffe74e862e7ab","subject":"fix(glittershark/system): Build yerenSystem in CI","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d726eff80f131e81e56faf4b6273ffe74e862e7ab"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-10 21:57:51.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d7f2d4c540bda235d7f3bb54ec69f0637035baa6d"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d7f2d4c540bda235d7f3bb54ec69f0637035baa6d"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"726eff80f131e81e56faf4b6273ffe74e862e7ab","is_merged_in_target_branch":true,"change_id":"I0abe56f0a1f18e4e542cb458dfcdf81e8a0ddc01","change_number":2923,"patch_set_number":2,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"29416f053560a10a9995c910cd76bd7136044b8a":{"kind":"REWORK","_number":40,"created":"2021-04-15 20:16:34.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/40","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/40","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/40 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/40 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/40 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/40"}}},"commit":{"parents":[{"commit":"2f4ea13ca2a76641052216139cc6267ca959ae0d","subject":"refactor(users/grfn): build all haskell packages without ifd","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d2f4ea13ca2a76641052216139cc6267ca959ae0d"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-15 20:16:17.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d29416f053560a10a9995c910cd76bd7136044b8a"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d29416f053560a10a9995c910cd76bd7136044b8a"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"2f4ea13ca2a76641052216139cc6267ca959ae0d","is_merged_in_target_branch":true,"change_id":"I8fff70b4b6c303d1920f8bcac53520a09999b206","change_number":2921,"patch_set_number":9,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"2362231d8bcea38a3890e73712e88e035284a627":{"kind":"REWORK","_number":41,"created":"2021-04-20 08:32:08.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/41","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/41","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/41 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/41 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/41 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/41"}}},"commit":{"parents":[{"commit":"094478b75fc0ea9573ca4c1a906e4c2dd250ba7b","subject":"fix(bubblegum): import lib from the new correct place","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d094478b75fc0ea9573ca4c1a906e4c2dd250ba7b"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-20 08:31:59.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d2362231d8bcea38a3890e73712e88e035284a627"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d2362231d8bcea38a3890e73712e88e035284a627"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"094478b75fc0ea9573ca4c1a906e4c2dd250ba7b","is_merged_in_target_branch":false,"change_id":"I3c719eba38a5ceb36689ebf0409bd19d4f46a609","change_number":3050,"patch_set_number":1,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"91b0c920e95e7f044fbd239478a19f23d828aad9":{"kind":"TRIVIAL_REBASE","_number":42,"created":"2021-04-20 08:37:38.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/42","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/42","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/42 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/42 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/42 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/42"}}},"commit":{"parents":[{"commit":"eb71c70cc4170295c5a53648321b6e84e3afbdc1","subject":"fix(bubblegum): import lib from the new correct place","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003deb71c70cc4170295c5a53648321b6e84e3afbdc1"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-20 08:37:35.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d91b0c920e95e7f044fbd239478a19f23d828aad9"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d91b0c920e95e7f044fbd239478a19f23d828aad9"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"eb71c70cc4170295c5a53648321b6e84e3afbdc1","is_merged_in_target_branch":false,"change_id":"I3c719eba38a5ceb36689ebf0409bd19d4f46a609","change_number":3050,"patch_set_number":2,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"034da0ea850d6c5233b635b2951c091a3b7f29b0":{"kind":"REWORK","_number":43,"created":"2021-04-20 10:17:16.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/43","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/43","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/43 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/43 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/43 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/43"}}},"commit":{"parents":[{"commit":"d2188b95af2610a3ac3c1e03abbb15984a1de010","subject":"feat(nix/utils): add storePathName, a more generic baseNameOf","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003dd2188b95af2610a3ac3c1e03abbb15984a1de010"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-20 10:16:54.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d034da0ea850d6c5233b635b2951c091a3b7f29b0"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d034da0ea850d6c5233b635b2951c091a3b7f29b0"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"d2188b95af2610a3ac3c1e03abbb15984a1de010","is_merged_in_target_branch":false,"change_id":"I2fcd97a150d6eda21ab323fa0d881ff7442a892e","change_number":3049,"patch_set_number":5,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"051a63797bee43e00d6e058959ef8e7df0c5b417":{"kind":"TRIVIAL_REBASE","_number":44,"created":"2021-04-25 21:33:47.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/44","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/44","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/44 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/44 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/44 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/44"}}},"commit":{"parents":[{"commit":"9c8b904b56951f5a47abcba1eefd6580b98aa470","subject":"docs(tvix): Begin specification of the Nix language","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d9c8b904b56951f5a47abcba1eefd6580b98aa470"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-04-25 20:59:02.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d051a63797bee43e00d6e058959ef8e7df0c5b417"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d051a63797bee43e00d6e058959ef8e7df0c5b417"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"9c8b904b56951f5a47abcba1eefd6580b98aa470","is_merged_in_target_branch":true,"change_id":"I6cd8eff6ec2daf14cc2420ee0a8e8983bfaa57d9","change_number":3052,"patch_set_number":4,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"750da2824e96e2eb1a411952c6b1857fcf3ec8b5":{"kind":"REWORK","_number":45,"created":"2021-07-11 19:07:28.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/45","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/45","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/45 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/45 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/45 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/45"}}},"commit":{"parents":[{"commit":"e00a7263fb78ef24e4f50d98f184de659555c2b0","subject":"feat(gs/emacs): Don\u0027t display info-level flycheck errors","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003de00a7263fb78ef24e4f50d98f184de659555c2b0"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-07-11 19:07:25.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d750da2824e96e2eb1a411952c6b1857fcf3ec8b5"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d750da2824e96e2eb1a411952c6b1857fcf3ec8b5"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"e00a7263fb78ef24e4f50d98f184de659555c2b0","is_merged_in_target_branch":true,"change_id":"I9ccfddcce9683184f2479ae1aa30a8414f7e7c51","change_number":3242,"patch_set_number":2,"change_status":"MERGED"}],"branch":"refs/heads/canon"},"6a5578226e1e333fb0730d0dddda28460a5d384c":{"kind":"REWORK","_number":46,"created":"2021-07-11 19:10:26.000000000","uploader":{"_account_id":1000034,"name":"sterni","email":"sternenseemann@systemli.org","username":"sterni"},"ref":"refs/changes/76/2576/46","fetch":{"anonymous http":{"url":"https://cl.tvl.fyi/depot","ref":"refs/changes/76/2576/46","commands":{"Checkout":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/46 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/46 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://cl.tvl.fyi/depot refs/changes/76/2576/46 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://cl.tvl.fyi/depot refs/changes/76/2576/46"}}},"commit":{"parents":[{"commit":"e00a7263fb78ef24e4f50d98f184de659555c2b0","subject":"feat(gs/emacs): Don\u0027t display info-level flycheck errors","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003de00a7263fb78ef24e4f50d98f184de659555c2b0"}]}],"author":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-02-28 18:48:03.000000000","tz":60},"committer":{"name":"sterni","email":"sternenseemann@systemli.org","date":"2021-07-11 19:10:24.000000000","tz":120},"subject":"feat(nix/buildC): pure nix build system for C","message":"feat(nix/buildC): pure nix build system for C\n\nbuildC is a build system for C libraries and programs plus attached test\nsuites implemented in Nix. Its main properties are that it builds every\nobject as an individual derivation, allowing nix to cache build results\nand detect the need for rebuilds. It also works with the plain C compiler,\nbintool and linker binaries instead of using the wrapper scripts found\nin nixpkgs and stdenv.\n\nThis is achieved by making relatively strong assumptions over the\ndirectory layout of the used and built libraries and passing around\nadditional meta data. We also don\u0027t support a lot of existing concepts\nor tooling for building C libraries and programs, for example there is\nno such thing as a configure phase in buildC.\n\nThere is some preliminary support for linking against libraries not\nbuilt using buildC in the form of buildC.libraryFromDrv. This is good\nenough to support musl and glibc and has also successfully used to link\nagainst simple libraries like libschrift and “heavier” ones like\nHarfBuzz. At some point it may be necessary to use a mechanism like\npkg-config or implement something similar ourselves (to avoid\nimport-from-derivation). Generating .pc files could also be worthwhile.\n\nAnother feature is relatively great flexiblity: buildC supports both the\nGCC and clang compiler toolchains, both musl and glibc (and\ntheoretically any other libc) and static as well as dynamic linking.\nTo prevent an unnecessarily large build and runtime closure all build\nsettings are applied to the entire dependency tree by overriding the\nbuildConf of every derivation depended on with the configuration of the\nderivation being built. The main need for this is of course static\nlinking: This way we make sure that every library is built as a static\narchive without requiring us to always build both a static and dynamic\nversion of the library. Additionally by preventing different libcs /\ncompilers being used we save on closure size both at run and build time\nalthough you may need to rebuild more often if you use different\nconfigurations for different derivations.\n\nOf course this overriding mechanism doesn\u0027t work for buildC.libraryFromDrv,\nbut these can specify a predicate which indicates if they are compatible\nwith the current buildConf. For example, using buildC.glibc for a static\nbuild will hit this predicate and fail at evaluation time.\n\nFurther work:\n\n* Implement generic overriding support similar to buildLisp\u0027s overrideLisp\n  or overrideAttrs\n\n* Cross compilation support. In theory this already should almost work,\n  but must be made convenient and requires some plumbing in the test\n  code and likely runExecline.\n\n* Collect more experience and fix upcoming issues: buildC works quite\n  well for a limited set of usecases I personally had. Likely I\u0027ll\n  encounter things in the future that should be supported, but aren\u0027t.\n\nChange-Id: Ic24efe6b05eb761e19e4434f689c73ea2d075605\n","web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d6a5578226e1e333fb0730d0dddda28460a5d384c"}],"resolve_conflicts_web_links":[{"name":"cgit","tooltip":"Open in GitWeb","url":"https://code.tvl.fyi/commit/?id\u003d6a5578226e1e333fb0730d0dddda28460a5d384c"}]},"parents_data":[{"branch_name":"refs/heads/canon","commit_id":"e00a7263fb78ef24e4f50d98f184de659555c2b0","is_merged_in_target_branch":true,"change_id":"I9ccfddcce9683184f2479ae1aa30a8414f7e7c51","change_number":3242,"patch_set_number":2,"change_status":"MERGED"}],"branch":"refs/heads/canon"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
