I’m not a bot.

  • 7 Posts
  • 98 Comments
Joined 6 months ago
cake
Cake day: January 21st, 2025

help-circle



  • Btw, here’s how you configure HiDPI for GNOME. Unfortunately, my laptop has a hydeepeeay display, so it’s not fully compatible with Linux. (It’s 3840x2160, so at least 2x scaling is possible, hypothetically.)

    Commands from the Arch Wiki, but also adds cursor scaling:

    $ gsettings set org.gnome.settings-daemon.plugins.xsettings overrides "[{'Gdk/WindowScalingFactor', <2>}, {'Gtk/CursorThemeSize', <48>}]"
    $ gsettings set org.gnome.desktop.interface scaling-factor 2
    

    The default GNOME configuration is some how missing that. I didn’t have to do that in Arch, but I do in Guix. IDK. Anyway, if you don’t run those commands certain apps will be tiny, including a tiny mouse cursor.


  • Btw, here’s how you install distrobox on Guix.

    First, install rootless Podman: https://guix.gnu.org/manual/devel/en/html_node/Miscellaneous-Services.html#Rootless-Podman-Service.

    You need to edit your /etc/config.scm or where ever you store your system config. Import the right modules/services, add your user to cgroup, add iptables-service-type to your services, add rootless-podman-service-type and configure it.

    (use-service-modules containers networking …)
    (use-modules (gnu system accounts))  ;for 'subid-range'
    
    (operating-system
      ;; …
      (users (cons (user-account
                    (name "alice")
                    (comment "Bob's sister")
                    (group "users")
    
                    ;; Adding the account to the "cgroup" group
                    ;; makes it possible to run podman commands.
                    (supplementary-groups '("cgroup" "wheel"
                                            "audio" "video")))
                   %base-user-accounts))
      (services
        (append (list (service iptables-service-type)
                      (service rootless-podman-service-type
                               (rootless-podman-configuration
                                 (subgids
                                   (list (subid-range (name "alice"))))
                                 (subuids
                                   (list (subid-range (name "alice")))))))
                %base-services)))
    
    

    Then of course you run guix system reconfigure /etc/config.scm.

    Now you can do a simple guix install distrobox. If you install distrobox first, you don’t end up using rootless podman and you run into more problems that way. (You have to use distrobox --root.)

    After that command, everything should work like normal. Enjoy. 🍻

    distrobox create --image docker.io/library/archlinux:latest --name arch-dev
    distrobox enter arch-dev
    

  • Btw, here’s the guix home configuration file I used to add the contents of flatpak.sh into my ~/.profile, in order to update the XDG_DATA_HOME env var.

    (use-modules (gnu home)
                 (gnu home services shells)
                 (guix gexp)
                 (gnu services))
    
    (home-environment
      (services
        (list
          (simple-service 'flatpak-service
                          home-shell-profile-service-type
                          (list (local-file
                                  (string-append (getenv "HOME") "/.guix-profile/etc/profile.d/flatpak.sh")
                                  "flatpak.sh"))))))
    

  • guix shell and guix shell container for dev environment isolation

    Yeah! This is one of the features I’m most interested in. I haven’t gotten to using this feature yet, but I was curious about it.

    Let’s say I’m working on a project that requires Go, Node, maybe some C library, and GNU Make. Seems like I would be able to use guix shell for this, right? Great.

    Now if a friend wanted to work on the project, could I share my guix shell configuration with him? (Assuming he’s also a Guix user.)

    I’m currently using distrobox.ini plus distrobox assemble for this kind of workflow, but of course this isn’t totally reproducible.



  • Hardware must be well supported in fully-libre-land … had to go nonguix pretty much right away.

    Yep, same here. I started with nonguix. I didn’t realize it was easy to add additional channels.

    Profound meditation and enlightenment on the essence of Scheme is a must. I had one of those ‘no, this is where you don’t want a closing brace’ moments and my zen was blown out of the water.

    Aaaah. I juuuust had this happen to me. Took me a bit to balance the parens again! 😂 Although, so far Scheme seems nicer than Nixlang. I’ve also had curiosity to learn a functional language, so Guix gives me a reason to learn about functional programming.


  • Yep. Totally using nonguix. I’m trying out Guix for the reproducibility and system management, not (just) for the FOSS software.

    From my initial research, I thought that Guix was only going to allow 100% FOSS software. But I’ve learned that’s not the case. It’s actually pretty easy to add additional channels in order to install non-FOSS software. The third-party channels integrate nicely!

    I added nonguix and also a channel for Tailscale!

    (list (channel
            (name 'nonguix)
            (url "https://gitlab.com/nonguix/nonguix")
            (branch "master")
            (introduction
              (make-channel-introduction
                "897c1a470da759236cc11798f4e0a5f7d4d59fbc"
                (openpgp-fingerprint
                  "2A39 3FFF 68F4 EF7A 3D29  12AF 6F51 20A0 22FB B2D5"))))
          (channel
            (name 'tailscale)
            (url "https://github.com/umanwizard/guix-tailscale")
            (branch "main")
            (introduction
              (make-channel-introduction
                "c72e15e84c4a9d199303aa40a81a95939db0cfee"
                (openpgp-fingerprint
                  "9E53FC33B8328C745E7B31F70226C10D7877B741"))))
          (channel
            (name 'guix)
            (url "https://git.savannah.gnu.org/git/guix.git")
            (branch "master")
            (introduction
              (make-channel-introduction
                "9edb3f66fd807b096b48283debdcddccfea34bad"
                (openpgp-fingerprint
                  "BBB0 2DDF 2CEA F6A8 0D1D  E643 A2A0 6DF2 A33A 54FA")))))
    






  • Are you also scared of databases and prefer storing things in raw txt files?

    Yes, actually. 😅 I can’t manage a database for more than a few weeks before I screw it up or want to easily edit something and stop using it.

    I don’t think databases are bad. I think I’m too much of a fuckup to manage one.







  • So what do they actually offer, on top of the work of creative people making music? Not much.

    OK, so I left Spotify for Navidrome a while back BUT. What Spotify sells isn’t music. Spotify sells curation and recommendations. Most people aren’t music lovers that want to hunt for cool new music. They just want a pre-generated list of songs that they’ll more or less like. That’s actually kinda huge.

    A recommendation engine is something I wish fediverse or open source would tackle. I’m on Navidrome now, but I’m definitely listening to way less music now—access isn’t an issue—I just haven’t had time to hunt around for new music. Investigating new bands takes time. On Spotify, you do it without even really thinking about it.