@abcdw@fosstodon.org
@abcdw@fosstodon.org avatar

abcdw

@abcdw@fosstodon.org

Hack on operating systems and programming languages. He/Him.

Improve tooling for Guile and GNU Guix.

74830A276C328EC2 at keyserver.ubuntu.com and keys.openpgp.org.

This profile is from a federated server and may be incomplete. Browse more on the original instance.

abcdw, (edited ) to guix
@abcdw@fosstodon.org avatar

Plan to stream about management of elixir projects with Guix in one hour and a half.

Will talk about transitive package management in general and why it's better not to package language-specific packages with Guix, will learn by example and clean up some tools we've made during the last month for Elixir in particular.

Hope the connection will be good (:

https://youtu.be/DWMvb9b_M8k
https://trop.in/stream

abcdw,
@abcdw@fosstodon.org avatar

Oops, it seems the network setup is updated again and the upload speed dropped below 0.5 MB/s.

Quality won't be any reasonable, I cancel the stream :(

abcdw, to random
@abcdw@fosstodon.org avatar

The owner of the camp near my tent updated network topology and there is great change that I'll be able to stream next week.

P.S. When I was making a post the internet went down ><

P.P.S. Oh, it's not only the internet, the whole elictricity network. (It seems it was planned outages and I still optimistic about possible stream soon).

abcdw,
@abcdw@fosstodon.org avatar

@lechner Hi. Yes, I'm :)

abcdw, to elixir
@abcdw@fosstodon.org avatar

Generated 69 guix package definitions from mix.lock. Spend the whole day (more than 10 hours) to make them successfully build.

Programming is cursed, I'm exhausted.

abcdw,
@abcdw@fosstodon.org avatar

@sharlatan Nope.

Also, I'm in doubt how benificial is to package language-specific deps in Guix channel.

I think it's better to cooperate with language package manager devs and make lock-file->guix-package-with-deps API, which will work flawlessly.

abcdw, (edited ) to random
@abcdw@fosstodon.org avatar
abcdw, to elixir
@abcdw@fosstodon.org avatar

Today I was writing elixir code the first time in my life, to convert mix.lock to json, for later processing and converting to guix package definitions.

One of the problems I faced is a lack of specification of lock file format.

I still have a few questions, but having sha256 in lock files is very promising. We will be able to generate package definitions for the whole project without accessing network.

I was using mix2nix as a foundation:
https://github.com/ydlr/mix2nix

abcdw, to guix
@abcdw@fosstodon.org avatar

I wrote a note to reply @civodul's message, but I think it's a good reading about Reproducible Development Environments with Guix on its own.

https://github.com/abcdw/notes/blob/4883840e6/notes/20240210123238-2024_02_10_guix_workflow.org

Let me know what you think.

Original thread:
https://fosstodon.org/@abcdw/111900079522888397

abcdw, to guix
@abcdw@fosstodon.org avatar

The tool for programmatically updating guix channels and package definitions in your project would make life so much easier.

Something like niv or flakes for nix.
https://github.com/nmattia/niv
https://nixos.wiki/wiki/Flakes

Have it in my mind for months or even years.

sharlatan, to Matrix
@sharlatan@mastodon.social avatar
abcdw,
@abcdw@fosstodon.org avatar
abcdw, to guix
@abcdw@fosstodon.org avatar

RDE got 200 stars on github mirror, which is quite impressive considering the fact that all activities and development happens on sourcehut.

https://github.com/abcdw/rde

https://git.sr.ht/~abcdw/rde

abcdw,
@abcdw@fosstodon.org avatar

@fosskers It would be cool to have distributed VCS on distributed FS, so everyone could be a mirror :)

abcdw, (edited ) to random
@abcdw@fosstodon.org avatar

It seems a lot of fun happened at @fosdem, unfortunatelly my residence permit and visa stuff are still WIP, but I'm definetly getting closer to get Schengen, so I hope to start visiting conferences in person later this year.

abcdw, to guix
@abcdw@fosstodon.org avatar

It's possible to obtain source code via SSH instead of HTTPS in guix package definition by using git-checkout instead of origin.

https://github.com/abcdw/notes/blob/18ba0f8d79e8c39df41ca0ab7e932ddfe8a252a3/notes/20240202115302-guix_and_private_repository.org#L6

abcdw, to scheme
@abcdw@fosstodon.org avatar

Implemented arei-goto-module function, it allows to jump to any module available in Guile Runtime.

I think curiosity + such kind of tooling is what empowers hackery.

A demonstration of arei-goto-module function. It jumps to guix discovery first, after that it jumps to gnu packages emacs-xyz.

abcdw,
@abcdw@fosstodon.org avatar

@snyssfx Thank you very much for kind words, my man!

abcdw, to random
@abcdw@fosstodon.org avatar

Added arei-evaluate-buffer to emacs-arei (Guile IDE), it's bound to C-c C-k.

https://git.savannah.gnu.org/cgit/guix.git/commit/

abcdw, to guix
@abcdw@fosstodon.org avatar

When Guix ABI updates, I need to do make clean-go make-go, it takes 47 minutes on my machine :/

abcdw, to random
@abcdw@fosstodon.org avatar

Nice writeup by @drewdevault on DDoS, which caused SourceHut outages, how the team tried and managed to metigate it and migration to EU datacenters:

https://sourcehut.org/blog/2024-01-19-outage-post-mortem/

abcdw, to random
@abcdw@fosstodon.org avatar

I have a good work-workout balance:

I do 1.5h call and go for a run to warm up my frozen fingers :)

abcdw,
@abcdw@fosstodon.org avatar

@kakafarm IDK :) I just run to warm up. Either after sleep, or after sitting for some time.

My only measured run was 1.5 month ago: 10km in 52 minutes.

abcdw, to scheme
@abcdw@fosstodon.org avatar

BTW, do you know what you should use for Guile Development?

https://git.sr.ht/~abcdw/emacs-arei

abcdw, to random
@abcdw@fosstodon.org avatar

We got a contract for Guix consulting signed 🥳. We have a team of 3 people; over the next couple of weeks, we will be setting up a Reproducible Development Environment and Reproducible Infrastructure.

This week, we have already set up Guix, Guile, and development environments (except a few deps), along with a base OS image, and have deployed Cuirass (CI) using Guix deploy.

I try to review some rde patches in parallel, but I'm too exhausted. I'm really happy on what we do, but I overwork a bit.

abcdw, to guix
@abcdw@fosstodon.org avatar

I started to collect a "Guix in Production" list:

https://github.com/abcdw/notes/blob/b1ab1a13093fab8d28a9f5936937ed513ac5cad8/notes/20240109091625-guix_in_production.org#L4

Do you know any other occurences?

abcdw,
@abcdw@fosstodon.org avatar

@janneke @sharlatan Thank you, added to the list.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • provamag3
  • kavyap
  • DreamBathrooms
  • cisconetworking
  • magazineikmin
  • InstantRegret
  • Durango
  • thenastyranch
  • Youngstown
  • rosin
  • slotface
  • mdbf
  • khanakhh
  • tacticalgear
  • JUstTest
  • everett
  • modclub
  • Leos
  • cubers
  • ngwrru68w68
  • ethstaker
  • osvaldo12
  • GTA5RPClips
  • anitta
  • megavids
  • normalnudes
  • tester
  • lostlight
  • All magazines