• 8 Posts
  • 34 Comments
Joined 1 year ago
cake
Cake day: June 16th, 2023

help-circle




  • If I understand you correctly, this is trivial in emacs:

    (defun insert-text ()
      (interactive)
      (insert "your text here"))
    
    (global-set-key your-keybind-here #'insert-text)
    

    You could make it a format string if it relies on data specific to some file or parameter. You could also make the keybind local to certain modes/files rather than a global keybind if you don’t want to pollute your keybind space.











  • There are two different immutable OS models hot on the table in the linux space I see: The Nix[1] way and the Silverblue[2] way.

    Both have immutable filesystems which deviate from the FHS, provide atomic updates, and support the creation of more-or-less isolated environments at the user level. But the way the two models implement these features is very different.

    The Nix way takes inspiration from the world of functional programming, while the Silverblue way takes inspiration from the containerized, cloud native technologies which are used so widely in the industry.

    I believe the idea that these two approaches share is the future of linux on both the server and the desktop, and it is only a matter of time before some (if not all) of these advantages become mainstream. However, I am uncertain of which approach is superior.

    I have personal experience with Guix and enjoyed it greatly and even recommend others try it or Nix out for themselves, but there are some complexity issues. It is not clear to me whether these issues are growing pains, or symptoms of a fundamentally overcomplicated system to solve a seemingly simpler problem.

    The Silverblue way I have no experience with, but seems like a more grounded approach to tackling the specific problems laid out. The big area where Silverblue seems to lack in comparison to Nix/Guix is declarative, reproducible system configuration. With Nix/Guix you can just throw your system config file up in a repo, and anybody else can pull it down and install that system bit-for-bit, including future you! With home manager this extends to a large extent to user configuration as well. Of course with Silverblue you can create images, but that is less straightforward and powerful (at least for now).

    What are ya’ll’s thoughts on immutable OS’s?


    1. The only other example I am aware of is Guix, which imo is the superior implementation, but it is newer and less popular. ↩︎

    2. Others include openSUSE’s MircoOS and Vanilla OS. ↩︎



  • mrh@mander.xyztoLinux@lemmy.mlChimera Linux
    link
    fedilink
    arrow-up
    3
    ·
    edit-2
    1 year ago

    This is patently false. Most alternatives to GNU software are permissively licensed (MIT, BSD, Apache, etc.). Just look at musl, clang, bzip2, and the various “new” userland replacements like ripgrep, neovim, bat, exa, dust, etc. The one notable exception is busybox which is GPL 2.

    I don’t know why this trend exists (other than obvious gov and corp plants), but I am constantly disappointed that talented young open source devs choose to sacrifice software freedom just because it will make their software easier to integrate in proprietary contexts. This strikes me as pure vanity or greed on the devs part so that their software is more popular and maybe even monetizable.

    I hope that trend halts, but time will tell.




  • mrh@mander.xyztoLinux@lemmy.mlI did it, I distro hopped
    link
    fedilink
    English
    arrow-up
    4
    ·
    1 year ago

    Yeah Void is fantastic. I just switched back and I doubt I’ll be moving to anything else.

    I only switched away in the first place because I had gotten so comfortable I wanted to try something new (Guix, also amazing!).

    But there’s something so comfy about Void once you grok it, just lots of little good decisions which add up to a great experience.





  • Guix is a source based (rolling release) distro. Any package operation you do like like installing, updating, or removing, can be rolled back. So if an update ever breaks anything you can just roll-back and wait for the fix. You can even pin that specific package and continue to upgrade the rest of your system. And every state is saved in a generation, so you can go to any state your system has ever been in package/configuration wise.

    Nix has all of these advantages as well.