@wwwgem@lemmy.ml
@wwwgem@lemmy.ml avatar

wwwgem

@wwwgem@lemmy.ml

A space biologist by training and a (Arch)Linux user by passion , https://www-gem.codeberg.page

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

wwwgem,
@wwwgem@lemmy.ml avatar

Terminal is faster when you’re used to it and sometimes offer more customization options to some apps that has both a GUI and TUI/CLI version.

I use the terminal (st with zsh and tmux) for:

  • file management (advcpmv, fd, trash-cli, fzf …)
  • emails (neomutt)
  • text editing/coding (neovim)
  • project management (taskjuggler)
  • image viewing/organization (ucolla,ge)
  • online video browsing (ytfzf)
  • calendar (khal)
  • ssh
  • vpn
  • news aggregator (newsboat)
  • web, bookmarks manager (buku)
  • passwords manager (pass)
  • dotfiles manager (stow)
  • not in the terminal but I also have a lot of scripts used in rofi to control my audio input/outputs, launch a web search, access my bookmarks, autocomplete username and password fields

I’m sure I’m missing some obvious tools I use daily. It’s hard remember everything when it becomes so natural.

I have shared my experience with some of these tools here.

wwwgem,
@wwwgem@lemmy.ml avatar

I’ve been scrolling with no hope to see st anywhere but here it is! Only mentioned twice for now but this little guy deserves so much love. Yes, you have to build it (i.e. patch it) but that’s actually it’s beauty. You get the exact terminal you want, nothing more, nothing less. If you’re looking for power and lightweight this is your guy.
Coupled with tmux and you’re the God of your system :)

wwwgem,
@wwwgem@lemmy.ml avatar

Thanks for the information. I’m always happy to hear from others because that’s how I make progress. Also with my workflow in constant evolution it’s good to know neovim’s limitations so I can be prepared. Being curious by nature I will try other apps with no doubts anyway. I’ve tried vi, neovim, emacs, but only heard of VS so who knows…

wwwgem,
@wwwgem@lemmy.ml avatar

It’s always difficult to find a good starting point but remember that you’re not married to your apps so you can easily switch from one to another and maybe come back later. Over the years, I’ve seen most of Linux users going that route because 1) it’s fun and you learn a little bit from each experience, 2) Linux users are generally curious, 3) some apps may be more suitable to your workflow at a given time but your workflow may change over time, 4) Linux offers us so many options so it’s like unleashing kids in a toys store, you want to try everything :)

wwwgem,
@wwwgem@lemmy.ml avatar

Do you have any experience with neovim? I’m certainly not a Python programmer but I’m doing simple things for fun and so far neovim served me very well. If I eventually go deeper in Python I would be interested to know the limitations of neovim beforehand.

wwwgem,
@wwwgem@lemmy.ml avatar

You know how hard it is to explain personal preferences when we talk about tiling WM but, as I mentioned in my first post, I would say that bspwm offer some further granularity. I didn’t thought that was possible after using dwm but to come back to my example I have bspwm listening to the state of my media player. Everytime it becomes floating, bspwm resize the window, place it on a specific position, and add a border to it. This is just one example. Also, even though you can use it with any tiling WM, sxhkd has been developed with bspwm in mind and offers the best keybindings management I’ve ever tested. Thanks to chords, several commands can be associated to independent keybindings within the same piece of code like so:


<span style="color:#323232;">control+{_,shift+}{1-9}
</span><span style="color:#323232;">   bspc {desktop -f,node -d} '^{1-9}' --follow
</span>

Control and a number will switch you to a workspace. If you also press Shift the active window will be sent to a given workspace.

wwwgem,
@wwwgem@lemmy.ml avatar

I used dwm for few years before moving to bspwm.

wwwgem,
@wwwgem@lemmy.ml avatar

As always there’s no such thing as a global “best” application. Building your system is a very personal thing. It all depends on your needs and liking.

My personal journey in the tiling WM world has started 20 years ago with awesomewm. Then I moved to i3 because it feels lighter to me while offering a configuration approach I preferred. After some times, I felt ready to “really” build my tiling WM and I moved to dwm.

I couldn’t be happier until I came across bspwm which is as suckless as dwm but EWMH compliant. I also love the nice approach of keybindings offered by sxhkd. What I appreciate the most is the no limit configuration power since you can integrate the very powerful program that writes messages on bspwm 's socket (bspc) in any scripts you can imagine. This let you create some crazy and very personal rules. For example, I designed one where bspwm is listening to my video player state and if not fullscreen it automatically resizes it to a given size and moves it to a specific position. I have another one that will apply borders only to 2 specific windows applications and use a different color for each one.

This is a very brief overview of what I’ve experimented. Your expectations and the time you want to deserve to your configuration may guide you on another path. Archwiki has a comparison of tiling WM may be a good starting point to help you in your decision.

wwwgem,
@wwwgem@lemmy.ml avatar

I would need to go back to my old dwm config file but I think what you’re looking for is this patch. In bspwm this is achieved with the “follow” option as shown in my example.

To restart dwm without login out and back in you’ll need this in your .xinitrc:


<span style="color:#323232;">while :; do
</span><span style="color:#323232;">    ssh-agent dwm
</span><span style="color:#323232;">done
</span>

Then whenever you kill dwm with kill -HUP $(pidof -s dwm) it will actually be reloaded. Seems like there’s also 2 patches to do that now (note that they both mention the above method as well).
dwm.suckless.org/patches/restartsig/
dwm.suckless.org/patches/selfrestart/

wwwgem,
@wwwgem@lemmy.ml avatar

Wish someone would come with something like tut for mastodon.

wwwgem,
@wwwgem@lemmy.ml avatar

Thank you for this addition. I very much appreciate the fediverse community who is helping people to understand things, share their knowledge, and acting nicely (if we exclude some rare people who are clearly not used to live within a sane community). I’ve seen home manager but this raised one more question to me: what’s the added value compared to stow for example? Thanks again for sharing your thoughts.

wwwgem,
@wwwgem@lemmy.ml avatar

Thanks for taking time to share this detailed thought. That’s an interesting point I forgot because I didn’t experience any related issues over 15 years with Arch but that’s still a nice approach. I can certainly see why this is a big plus for NixOS.

wwwgem,
@wwwgem@lemmy.ml avatar

I can see that from a server maintenance point of view. After having read so many great things about NixOS, I may have exaggerated my expectation and I may be the problem for being a user with too limited needs to get the full benefits of NixOS.

For me this single config file doesn’t save that much additional files and most of them would be files you configure only once during installation. Nonetheless I can see how “easier” it would be to save one file instead of 3 to reproduce your system and I can only imagine how much better it is from a server point of view.

wwwgem, (edited )
@wwwgem@lemmy.ml avatar

Right, I totally agree. If I would have to deploy my config on several machines or create dedicated config using a common base then I would have been convinced. I’m still not convinced from a dummy single user point of view but I still believe in this distro and like its approach so I’ll continue experimenting with it and we’ll see where my journey leads me.

At least for now I’m glad to have a new toy I can mess up with. With my Arch system I was getting this weird feeling where I was happy to have an efficient and stable machine while at the same time being bored to have nothing to test/tweak/destroy and rebuild. I mean I love to learn and discover new things so I experiment a bunch of applications and parameters I will never need anyway but it becomes harder and harder to find something that keeps me entertained for more than a day.

wwwgem,
@wwwgem@lemmy.ml avatar

That’s what I keep reading and why I would like to give it a try. For now I’m still confused how this is easier/more efficient than sharing your list of packages, restoring a backup, or using downgrade in Arch. I’m really interested because I like to try new stuff, especially if they bring something of interest.

I really have hard time to see the difference for now after my first setup in a VM but also because imaging my full Arch system on a new machine 2 years ago only took me an hour and less than 10 command lines.

Again, I’m genuinely trying to understand what I’m missing. From my reading NixOS seems to be the only distro I could switch to.

wwwgem, (edited )
@wwwgem@lemmy.ml avatar

Or maybe I’m already too old for so much tech. But thanks for letting me think that I’m still a young boy ^^ Not helping with my question but pretty self satisfactory.

wwwgem,
@wwwgem@lemmy.ml avatar

That’s indeed pretty neat.

wwwgem,
@wwwgem@lemmy.ml avatar

You’re spot on and that’s what this discussion helped me figure out: I have no problem. I knew that but I also thought that NixOS would bring something new to improve my Linux usage. So far I still see such improvements for servers or deployment on several machines but not for a single user with standard needs (and this statement may be wrong and due to my limited experience with NixOS).

But NixOS approach is quite different from others and I feel like I may discover something of interest to me once I learn more about it. Also, just for the sake of learning and discovering, I will continue experimenting with it for a while.

wwwgem, (edited )
@wwwgem@lemmy.ml avatar

Great feedback, thanks! I’ve appreciated being able to replicate my system in NixOS within only few hours. I found NixOS actually pretty easy to take a grasp on, though I still didn’t look at flakes in detail. You spot on the reason why I’m using Arch and a bunch of applications you can tweak to perfectly meet your own specific needs (neovim, neomutt, bspwm, rofi…).

I love spending time to config them and to learn new things. This is basically why I’m interested in NixOS as well. Being entirely satisfied with Arch and not being a distro hopper, the fact that I installed NixOS means a lot to me but now I need tangible reasons to fully move to it. Maybe time will help me in my decision.

All the great feedback in response to this post so far confirm how great NixOS is and I had no doubt about that. I may realize what it can bring me after some weeks of serious use. Thanks again for the time spent to write your feedback, very much appreciated

wwwgem,
@wwwgem@lemmy.ml avatar

Due to the still early development of NixOS, Home manager is in some ways very similar to nix-env and flakes is still highly experimental. Also, the configuration parameters are changing quite significantly with the distro development. I’m sure this will all settle down when the distro will become more mature but to be honest that’s also what attracts me. I like chaos ^^ Seriously, this shows me some potential for great achievements. I will continue testing NixOS but for now I didn’t find THE reason to leave Arch yet. If I would have to deploy my config on several machines or create dedicated config using a common base then I would have been convinced. Will see where my journey leads me.

wwwgem,
@wwwgem@lemmy.ml avatar

Any headphones should work (if your hardware supports it if using bluetooth). I’ve connected at least 4 different brands from no name to Aftershokz with no issues. Even tried airpods for a friend.

Youtube client that supports saving searches as a playlist?

Title says it all. I’ve been looking for a youtube client similar to freetube or youtube-tui that will allow me to save a search as a playlist. I.e., I end up with a playlist that’s populated with whatever the most recent VanillaOS videos are or whatever. I’ve done a bit of searching but thought I’d see if anyone knew of...

wwwgem, (edited )
@wwwgem@lemmy.ml avatar

I use ytfzf to search/watch videos on YouTube, Peertube, Odysee.
It has several add-ons including one for playlists. I didn’t try it though.

[Question] Some questions about BSPWM tiling manager

I have a rule for vscode: bspc rule -a Code follow=on desktop=‘^4’. If I manually move one vscode instance to another workspace, work in that and than drag’n’drop smth (or any other action initiating popup menu), dialog will appear on 4th workspace rather than on current one. How to fix that?...

wwwgem,
@wwwgem@lemmy.ml avatar

The behavior you are requesting of bspwm is counter-intuitive to this rule you specifically wrote. Nonetheless, if VS Code popup windows have a different instance name, you could have a script running in the background which checks instance name of any new window and execute the command bspc desktop -f last when a VS Code popup appears.
If the instance name is the same for VS Code main app and its popup windows, you may listen to the state of VS Code windows (using bspc subscribe; see the manpage) and execute the previous command on VS Code floating windows (because popups will be floating).
For example, apply this to all VS Code windows:


<span style="color:#323232;">while bspc subscribe -c 1 node_focus node_state > /dev/null; do
</span><span style="color:#323232;">    bspc query -N -n "focused.floating" | while read -r wid; do
</span><span style="color:#323232;">    bspc desktop -n $wid -f last
</span><span style="color:#323232;">done
</span>

For your second question, if I understand correctly you’re trying to have a given workspace moving to your external monitor when available and returning to your primary monitor if no other monitor is connected. You can look at the archwiki to learn how to setup bspwm for multi monitors. Using the same if conditions as explained in this wiki you could also have for example a rule bspc rule -a Code follow=on desktop=‘^4’ when only one monitor is connected, and bspc rule -a Code follow=on desktop=‘^7’ when an external monitor is connected (and workspace 7 will be defined to be shown on your external monitor).

wwwgem,
@wwwgem@lemmy.ml avatar

If you’re using only one monitor, simply duplicate and scale your laptop screen instead of using the extended approach.
To give you a rough idea, this will look to something like this:
xrandr --output eDP1 --mode 1366x768 --scale 1x1 --output HDMI1 --same-as eDP1 --mode 1920x1080 --scale 0.711x0.711
Use xrandr to find the monitors names and resolution. The scale option is simply the ratio between your 2 resolutions.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • localhost
  • All magazines
  • Loading…
    Loading the web debug toolbar…
    Attempt #