Untrusem <[email protected]> writes:

> Summary:
>
> - `make` takes upto 30-40 mins to compile guix checkout
> - {import,build,shell} takes upto 10-20 mins
> - It decreases my will to contribute day by day.
>
> Rant of a Guix Packager. (メ﹏メ)

I would like to happily report that most of my frustration have been
resolved with `git-restroe-mtime` from the git-tools package

A Huge Thank you to everyone who recommended me that.

Now the workflow is like this:

* For the first time

- clone the git repository
- guix shell -m manifest.scm --pure
- ./bootstrap
- ./configure
- make -j8

After the files have been compiled, you can checkout a new branch on top
of master and do your work, All the `./pre-inst-env` operations will be
fast.

* For older Branches

* Suppose you want to switch to a branch that is older than your compile
master branch.

- guix shell git-tools -m manifest.scm --pure
- git checkout <branch>
- rebase it over your compiled branch
- git-restroe-mtime

Now you can do your work and it will be fast as usual. :D

With this you can update your compiled branch from time to time and just
run `make`, it will compile the changed file, so you won't even have to
compile it from the scratch.

I don't if there will be any need of `make go-clean` now, I haven't felt
it yet.

Maybe we can integrate this `git-restroe-mtime` functionality natively
and I would like to see its disadvantages too.

So, yeah, this was the workflow that no longer make me frustrated while
contributing.

HACK THE WORLD!!!

-- 
~ Untrusem ~

In this cruel world, Kindness is punk.
https://untrusem.party

Reply via email to