this post was submitted on 15 May 2024
4 points (75.0% liked)

linux4noobs

1335 readers
1 users here now

linux4noobs


Noob Friendly, Expert Enabling

Whether you're a seasoned pro or the noobiest of noobs, you've found the right place for Linux support and information. With a dedication to supporting free and open source software, this community aims to ensure Linux fits your needs and works for you. From troubleshooting to tutorials, practical tips, news and more, all aspects of Linux are warmly welcomed. Join a community of like-minded enthusiasts and professionals driving Linux's ongoing evolution.


Seeking Support?

Community Rules

founded 1 year ago
MODERATORS
 

I have been using sway (basically i3 for Wayland) instead of a traditional desktop environment because it really makes a difference in my laptops performance.

But apparently sway ignores .desktop files which was how i was autostarting things on KDE.

Is the best way to handle this by going through the sway config? If not, how would you do it.

Bonus points if you can tell me how to get the autostart programs to also open in specific workspaces.

top 4 comments
sorted by: hot top controversial new old
[–] [email protected] 4 points 5 months ago

You can manually start the apps configured as .desktop entries in your autostart directory using dex. For instance:

dex --autostart --environment sway

Invoke the above from your Sway config and you're good to go.

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

What are you trying to run? Could you add it to bashrc?

[–] Hammerheart 1 points 5 months ago

I want my terminal to start on workspace one. Since this is default behavior of adding 'exec ' to my sway config, this requirement is satisfied. I also want Firefox to start up on workspace 2. And I would like another terminal to open on workspace 10, but to automatically run cmus, a terminal music player.

[–] Hammerheart 1 points 5 months ago

In case this thread turns up a google search, or anyone is keeping score, I think I more or less managed to achieve what I wanted by putting this is in my config:

assign [class="Firefox-esr"]  "2"
exec wezterm -e cmus
 exec swaymsg [app_id="org.wezfurlong.wezterm"] focus
 exec swaymsg move container to workspace "10"
 exec firefox

the only thing i don't love is that if quit cmus, it closes the window instead of bringing me back to the shell. maybe i have so chain commands or something, i don't know. i'm happy to have made it this far. Another thing is I don't know if it's possible to distinguish between the specific instance of wezterm that's running cmus, and the other one i want running on workspace 1.