this post was submitted on 20 Aug 2023
70 points (98.6% liked)

Linux

47237 readers
3343 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Hello Everyone,

as you can see on my screenshot, i am using an intel based mac for years now, which i customized to my needs. However i have reached the limits of this machine in terms of customization options and would like to move to linux to test it out as a daily driver. I'm actually quite happy with mac from the pov that everything just works, however there are certain things that annoy me, but apple does not allow me to change them.

As a newbie in terms of desktop linux (i've used ubuntu roughly 12 years ago as a daily driver and am familar with headless linux), i'd like your advice.

Specifically I am looking for:

  • a minimal, fast system
  • keyboard / shortcut based - all interactions can be done from keyboard (within common sense limits)
  • all keys can be custom mapped (i have muscle memory of my custom keys for certain actions, so i'd like to keep them)
  • all can be configured from dotfiles (worse case shell scripts and ansible)
  • very low ressource consumption, snappy system with no delays.

I'd like to try NixOs due to it's unique configuration ability, however on a headless server it was a buggy pain just weeks ago (for example user passwords just vanished/changed without any external influence, not allowing access anymore), so i'm open to alternatives.

What i am looking for in advice is:

  • a minimal, configurable (file based for git) tiling window manager
  • a top status bar like you see in the screenshot that i can freely configure
  • as much terminal emulator based as possible (i honestly mostly only need a browser and the terminal, most other apps have a TUI that i can use with the keyboard, see the above requirement)
  • terminal based package management as easy as brew (maybe Nix?)
  • custom keyboard layout (I am not a native english speaker, so i mapped all non-english characters to my option keys with the english layout as the base)
  • Option to use 2 keyboards at once (come by default when using Karabiner Elements) as i combined 2 small keyboards to one to a fake split keyboard ;)

My current stack on macos is Hammerspoon for heavy customization, Karabiner Elements, yabai, kitty (and alacritty, for ssh, as kitty is bad with ssh in my personal experience), sketchybar. firefox (customized for privacy)

Any good recommendations or dotfiles? Anything i should look out for as a MacOs User?

Thanks in advance!

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 3 points 1 year ago (1 children)

I like NixOS and haven’t had any struggles with it. For my tiling I use Hyprland, as it’s Wayland and looks very nice. For a bar with amazing configuration I can recommend either https://github.com/elkowar/eww or https://github.com/aylur/ags - in the first one you configure it in a lisp-like language, the second one is configured in JS. They both allow you to pretty much write any GTK widgets for your bar, and are really powerful, but ags is newer and allows for more advanced functionality.

My favorite terminal emulator is foot - it’s simple and quick.

I wouldn’t say Nix is easy at the beginning as you have to learn a language to use it properly, but it’s definitely worth it long-term.

There shouldn’t be any issues with 2 keyboards and custom layouts on Linux. If anything you could use something like hawck to rebind the keys (system-wide) to something else.

[–] [email protected] 2 points 1 year ago (1 children)

I run NixOS on my macbook with the stack above. If you want to you could check out my NixOS config, but I’m using a configuration framework so it’s a bit complicated. https://github.com/n3oney/nixus

See configs/vic and hosts/vic for macbook-specific configs, everything else in my NixOS config is shared between machines and I opt into it per-machine in configs/

[–] [email protected] 1 points 1 year ago

Also not sure what you mean by your configuration struggles. Never had that happen. Also worth mentioning, my macbook runs Full Disk Encryption which needs my Yubikey to unlock, and I also have impermanence - everything (outside of a few specified directories like ~/Downloads) gets wiped on a reboot, so that my configuration is as reproducible as it can be. I could pretty much reinstall the system and have everything be 100% the same.