#bootstrappable

Klaus Aehligaehlig@cde.social
2025-06-13

Normally, I'm not a big fan of those "distro within distro" approach, but in order to get a cross-distro well-defined developper tool set (especially linters that tend to change quite a bit from version to version), bootstrapping is still the most feasible solution.

Patch series ending in github.com/just-buildsystem/ju

#bootstrappable builds solve it, and we make sure not to affect regular building/testing/packaging

2025-04-24

Good and bad #bootstrapping and #lisp news.
Timothy Sample has been exploring to write a #bootstrappable syntax-case implementation (the first?) and using GNU Mes to prototype that, sponsored by @nlnet .

Sadly, it didn't perform and #NLnet apparently didn't choose to extend his grant. (Boo!)

Edit: I was contacted by NLnet and they convinced me that they never denied such an extension (or new grant) proposal.
So...that's probably double sad...this seems to have been a most classical communication problem (seen Black Mirror S07E05?).

Edit: Also, the "Boo!" was primarily directed at the possibility of the EU retracting funding, NLnet is doing very important work, and amazingly so.

Anyway, Timothy is now writing another bootstrappable lisp implementation: Germ. It's still pretty early days but it's looking great. So happy with this!

ngyro.com/blog/introducing-ger

2025-02-25

Thanks @brianokken for mentioning my blog on @pythonbytes podcast. Looks like I need to add my surname pronunciation to the blog. youtube.com/live/P0VHDhUaWlo?t

The blog post in question is filip.lajszczak.dev/my-land-of It’s meant for people who aren’t up to date with what’s happening in the Scheme world, providing a quick overview of recent developments. That includes @dthompson work on Haunt, @civodul on Guix and Shepherd, @janneke on Mes, @spritely on Goblins and Hoot, and @flatwhatson on Pre-Scheme.

#haunt #guix #bootstrappable #goblins #hoot #scheme #guile

Simon Tournierzimoun@sciences.re
2024-11-08

gccrs: An alternative compiler for Rust relying on GNU Compiler Collection (GCC)

« Maybe more importantly however, there is a number of things that gccrs is NOT for. The project has multiple explicit non-goals, which we value just as highly as our goals. »

Missing the goal of a better #bootstrappable Rust, no?

Currently more or less a long chain…

guix.gnu.org/en/blog/2018/boot

blog.rust-lang.org/2024/11/07/

8Petros (he/him)Petros@slrpnk.net
2024-09-08

Open Source Social Business?

slrpnk.net/post/13128981

Lance R. Vicklrvick
2024-09-07

Wanted to share that [Stageˣ] is now full source bootstrapped, 100% reproducible, signed by 2-3 independent reviewers/reproducers on every release, and can build itself.

It can be the base of reproducible build containers for most projects written in c, c++, nodejs, go, php, ocaml, rust, or zig.

I am thankful for the efforts of our team, and the patient advice and tireless debugging of people in the -builds and projects <3

codeberg.org/stagex/stagex

2024-03-14

@mgorny since you complained about source code containing time bombs the other day, and I couldn't believe anyone sane would do that, here's openjdk9 refusing to compile because of "outdated" currency data (I'm trying to bootstrap #java ).

#bootstrappable #compilation #software

2024-02-24

I think it just makes no sense to, at some arbitrary level, say: "Listen, we're not going to build this package from source, because: 'Well, we actually don't have any good reason for it but we just won't.'"

#bootstrappable
#bootstrappability
#bootstrappableBuilds
#freeSoftware

2024-02-24

@zimoun @simon
Also, check whether it can be bootstrapped. If it can't, it would render your package non-#bootstrappable. Make sure that including it won't create a cyclic dependency.
Same for reproducibility.

2024-02-11

@UweHalfHand @avp
Great! Enjoy your Sunday and especially the birthday party (congrats)!
Don't hesitate to join our IRC if you're at all into that; #bootstrappable @ libera.chat!

2023-12-03

#GNU Mes 0.26 released: With greatly enhanced #Guile compatibility, Guile-style modules, and supporting Gash and Gash-Utils.

lists.gnu.org/archive/html/inf

Thanks to the amazing work of Timothy Sample (and myself :)

#GnuMes
#bootstrappable
#BootstrappableBuilds
#ReproducibleBuilds
@fsf
@fsfe

blake shaw 🇵🇸rml@functional.cafe
2023-11-04

Actually existing 《 #BareMetal coding 》be like:

Copyright (C) 2016 Jeremiah Orians
This file is part of #stage0

stage0 is free software: you can redistribute it and/or modify. It under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. stage0 is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

## ELF Header
7F 45 4C 46
02
01
01
03
00
00 00 00 00 00 00 00
02 00
3E 00
01 00 00 00
FB 00 60 00 00 00 00 00
40 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00
40 00
38 00
01 00
00 00
00 00
00 00

## Program header table
01 00 00 00
07 00 00 00
00 00 00 00 00 00 00 00
00 00 60 00 00 00 00 00
00 00 00 00 00 00 00 00
9B 01 00 00 00 00 00 00
9B 01 00 00 00 00 00 00
00 00 20 00 00 00 00 00

## Hex
48 83 f8 23
74 26
48 83 f8 30
7c 6f
48 83 f8 3a
7c 5a
48 83 f8 41
7c 63
48 83 f8 47
7c 58
48 83 f8 61
7c 57
48 83 f8 67
7c 47
eb 4f

## Purge Comment
48 c7 c2 01 00 00 00
48 c7 c6 99 01 60 00
48 c7 c7 00 00 00 00
48 c7 c0 00 00 00 00
0f 05
48 85 c0
0f 84 be 00 00 00
8a 04 25 99 01 60 00
48 0f b6 c0
48 83 f8 0a
75 c8
48 c7 c0 ff ff ff ff
c3

## ascii num
48 83 e8 30
c3

## ascii low
48 83 e8 57
c3

## ascii high
48 83 e8 37
c3

## ascii other
48 c7 c0 ff ff ff ff
c3

## start
49 c7 c7 ff ff ff ff
49 c7 c6 00 00 00 00

## Loop
48 c7 c2 01 00 00 00
48 c7 c6 99 01 60 00
48 c7 c7 00 00 00 00
48 c7 c0 00 00 00 00
0f 05
48 85 c0
74 5d
8a 04 25 99 01 60 00
48 0f b6 c0
e8 3c ff ff ff
48 83 f8 00
7c c7
49 83 ff 00
7d 0c
49 89 c6
49 c7 c7 00 00 00 00
eb b5

## print
49 c1 e6 04
4c 01 f0
88 04 25 9a 01 60 00
49 c7 c7 ff ff ff ff
48 c7 c2 01 00 00 00
48 c7 c6 9a 01 60 00
48 c7 c7 01 00 00 00
48 c7 c0 01 00 00 00
0f 05
eb 80

## Done
48 c7 c7 00 00 00 00
48 c7 c0 3c 00 00 00
0f 05

## Place for input, This actually isn't required but here it is
02 00 00

#hex0 #mes #guix #bootstrappable #gnu

savannah.nongnu.org/cvs/?group

Klaus Aehligaehlig@cde.social
2023-10-24

The application of this #bootstrappable build is of course to provide (necessarily statically-linked) binaries that can be reproduced over the boundaries of distributions. In our case, the tool itself: github.com/just-buildsystem/ju You still have to build the binaries yourself from source, but we already committed the hashes of what you will get. #reproduciblebuilds

2023-10-04

@lxo
Right; if the program cannot be (easily) built, script or build-system-wise, it cannot be copylefted.

Without a new "freedom 4" (the freedom to build/bootstrap a program and re-create it bit-for-bit using free software) it would still be OK to require build dependencies that themselves cannot be built (or only by injecting pre-built binaries that cannot be verified to have been built exclusively with free software) and copyleft the program.

I think this is very bad and is already undermining software freedom today.
@reproducible_builds
#Bootstrappable

2023-09-22

@amszmidt
That's right, they do not help: they're essential!

Without Reproducible builds and Bootstrappable builds, free software, and certainly software freedom, is an illusion at best.

Re: Trusting Trust, see for example the excellent talk by @vagrantc

archive.org/details/fossy2023_

#RebproducibleBuilds
#Bootstrappable
#BootstrappableBuilds

2023-09-10

@monk @trofi @emilyposting
Great talk!
Very interesting to see what may come out of all this.
#bootstrappable
#nixos

Alexander Sosedkin :nixos:monk@social.unboiled.info
2023-08-24
mirek kratochvilexa@mastodon.online
2023-08-02

#haskell q: are there any _small_ and living haskell implementations with power at least partially close to ghc? (e.g., vectors, concurrent IO and TyFams)

( #bootstrappable reasons )

Client Info

Server: https://mastodon.social
Version: 2025.04
Repository: https://github.com/cyevgeniy/lmst