Nicolas Graves <ngra...@ngraves.fr> writes: > Made some progress and I'll rework on the patches tonight.
I'm looking forward to it! > Current workflow is the following : > > In a guix with v2 patches and current guix-local: > cd /tmp > mkdir -p hello > cd hello > guix local instantiate hello --> downloads and unpacks hello's source > cd hello* > guix local build hello --> builds locally and installs in ./out This is lovely. I made a rudimentary extension `guix develop`[1] which was doing the unpacking you describe and generating a 'guix.scm' that uses the unpacked sources as origin. I'm very interested in your solution. The idea that I had with the extension, is that it would unpack the sources and generate a 'guix.scm' with debugging symbols, then it would setup a GDB script file to configure a session with source code debugging with symbols[2]. I decided to wait for your proposal before continuing implement anything. In the toy example I linked, the only thing that happens is that it searches for ELF files in the output derivation and tries to print the symbols that it finds using GDB. I think it would be nice to not rely on GDB for that and use the `system vm elf` and `system vm dwarf` guile modules. Andy Wingo has a nice post using them[3] [1] https://codeberg.org/pastor/guix-develop [2] https://codeberg.org/pastor/guix-develop/src/commit/3aaa574849f676a0d6da563dbb11c175462cb62d/guix/extensions/develop.scm#L229 [3] https://wingolog.org/archives/2014/01/19/elf-in-guile > This should work for any package except when there are patches or > snippets, I'll work on fixing that too (probably the simplest is to drop > the functionality since it's also done in guix local instantiate). > > I'll work on a v3 and clarify the situation for patches/snippets > tonight. Great! Thanks for the update, have a good night. Best regards, Sergio.