r/swaywm • • 11h ago

Script a script for switching focus to next window on workspace switch hotkey

5 Upvotes

I wanted a bit different behavior for 'mod+(number)' keys - so if I call it for current workspace it would cycle through windows in it. But I haven't found a swaymsg command for it. So wrote a simple script. Maybe it would be useful for others too

https://codeberg.org/akomis/dotfiles/src/branch/main/bin/sway/workspace_focus.sh

binded it instead of 'workspace number' command: bindsym --to-code $mod+1 exec $sway_scripts/workspace_focus.sh 1


r/swaywm • • 1d ago

Ricing Thinkpad T400 debian 13 sway wm

Post image
25 Upvotes

r/swaywm • • 18h ago

Release vindle: minimal dwl-style Wayland compositor, now builds on FreeBSD (looking for testers)

Thumbnail gallery
3 Upvotes

r/swaywm • • 2d ago

Ricing W rice?

Post image
2 Upvotes

r/swaywm • • 2d ago

Utility Riftbar v0.2.8 Status bar/widget system for wayland made with GTK4 and Rust

Thumbnail
2 Upvotes

r/swaywm • • 2d ago

Release vindle v0.1-unstable: minimal Wayland tiler I run daily, still needs wider testing

Post image
6 Upvotes

r/swaywm • • 3d ago

Question Switch idle behavior for audio/video

5 Upvotes

Hi I'm pretty new to sway and customizing linux in general, so forgive me if i what im asking is pretty basic, but i have been trying lately to customize a bit the idle behavior with swaylock. This initially is fine, but pretty fast you figure out that you might want to be able to watch videos without having your monitor turn off... so i added a `for_window [all] inhibit_idle fullscreen` line to my config. Which worked great for a while until you figure you might want to play music in the background without having your system suspend also you might not always fullscreen videos.. so im using now SwayAudioIdleInhibit which works exaclty as expected.
However it's not exactly how I would like it to behave.. for instance I would like videos to fully inhibit idle, while for audio would still allow for turning the monitor off but inhibit everything else, since there is nothing to see. Not sure if this is something that can be done or not, i saw that Pipewire supports classifying props for nodes which might help to identify video or audio only. Searching I also came up with wayland-pipewire-idle-inhibit, but it also doesn't support this , although it does support blacklisting based on media_class or media_role, so that makes me think that identifying the type is possible but having different idle behaviors for each might not be.
If anyone knows more about this I would really appreciate the help!


r/swaywm • • 4d ago

Question Ardour/Mixbus Dropdowns Close Immediately Unless I Click and Hold

Enable HLS to view with audio, or disable this notification

3 Upvotes

Hello! Drop-down menus in Ardour/Harrison Mixbus close immediately if I click, but will stay open if I click and hold. I've tried Sway 1.12, Sway 1.11, and wlroots .19 and .20. The dropdowns do work using xwayland-sattelite, but I really want it to work like it should regularly.

Does anyone know what is causing this issue or does anyone know if there's a work around? Thank you all so much!

EDIT: It was a regression in Xwayland. I, admittedly, threw AI at it, had it patch the bug, and submitted a merge request.


r/swaywm • • 5d ago

Solved Having difficulty switching from WM to DE

1 Upvotes

General report:
Experiencing some abnormality when exiting from Sway and then launching Cinnamon-x11
My layout changing on cinnamon session changing the tray picture but the layout itself is always English, so I can't change my keyboard layout in cinnamon.

https://reddit.com/link/1x26329/video/eb4hs9r6ekuh1/player

Steps to reproduce:

  1. power on
  2. dbus-run-session sway
  3. I'm doing my duties
  4. exit sway (mod+shift+e)
  5. sudo sv start lightdm > cinnamon

The only way for layout changing to work is sudo reboot and sudo sv start lightdm

Also I have iBus executed in my sway config.

System info:

  • Void 6.18.55_1 x86_64 AuthenticAMD uptodate rrrm
  • Cinnamon 6.6.7 with elogind 252.39
  • Sway 1.12
  • 24 GiB RAM

My questions:

  • Which valuable technical information related to the issue the community can share with me? (About Sway or about Cinnamon)
  • Whose logs should I collect, and which best way should I go about it?
  • Are there any sections in the manual that are relevant to my problem but that I might have missed?

What exactly I'm searching for:
Something like a command that I'd add for the cinnamon autostart line and the issue would been fixed.


r/swaywm • • 6d ago

Release Sway-blur v1.3.1 released......

Post image
28 Upvotes
  • performance optimizations
  • fixed some mirror bugs

check it out: https://github.com/developic/sway-blur

curl -fsSL https://raw.githubusercontent.com/developic/sway-blur/main/install.sh | bash

r/swaywm • • 7d ago

Utility I got tired of manually tiling on sway, so I made per-workspace auto layouts

Enable HLS to view with audio, or disable this notification

78 Upvotes

Hey everyone,

I love sway, but after a while I got tired of arranging every window by hand. Split here, resize there, repeat on every workspace. I wanted automatic layouts so I built swaytiles. It gives each workspace its own tiling layout, and you can switch between them whenever you want.

Layouts so far: master and stack, centred master, dwindle, spiral, grid, tabs and floating.

The part I care about most: anything you arrange by hand wins over the layout. If you resize or move a window yourself, it won't fight you. It also leaves fullscreen windows and dialogs alone.

  • Written in Python, talks to sway over IPC
  • Runs as a systemd user service, so it starts with your session
  • A layout menu works with fuzzel, rofi, wofi, tofi, bemenu, wmenu or dmenu
  • A swap-with-master keybind
  • MIT licensed

Setup is just copying a few files and adding two lines to your sway config. The README has the steps and a demo video and there are docs for every layout.

Repo: https://github.com/sertacartun/swaytiles

It's still young (1 star, and that's me 😄), so I'd love feedback, bug reports or layout ideas, especially if you use multiple outputs or odd setups. Thanks for reading!


r/swaywm • • 7d ago

Ricing funny rice

8 Upvotes
regular screenshot
visualizer
book

uh terminal is... something, i think it was foot

font is sun12x22 (bitmap font)


r/swaywm • • 9d ago

Utility I replaced KDE Plasma's KWin with (a) Sway (fork).

Post image
30 Upvotes

Whenever someone asks about this on a forum the response always seems to be 'KDE uses its own custom protocols, it's not possible'. I wondered how many of the protocols are actually needed. Turns out that properly implementing two functions(set_position, set_role) gets you 95% of the way there.

Other things I did:

  • Advertise a separate entry in the login manager called 'Sway Plasma'. The startup script switches out KWin's systemd unit with a Sway replacement, and everything else in Plasma's startup is untouched.
  • Add stub implementations for some DBus services
    • Makes screen dimming inhibition and session logout work properly
  • Write a panel widget for showing Sway Workspaces

Some known issues:

  • Screen locking doesn't work. Swaylock probably still functions, but good luck integrating that with Plasma's screen dimming / sleep.
  • You can floating-modifier-drag notifications.
  • Focus-follows-mouse doesn't play well with floating applets. Turns out standard Plasma has the same issue.

Why?

I chose Sway because I wanted productivity and configurability. I didn't want:

  • My laptop unexpectedly dying multiple times because I didn't set up a script that warns me about low battery
  • Being paranoid that I may be missing other critical notifications of the above sort
  • Installing / learning about a thousand million programs to configure
    • Wifi
    • Bluetooth
    • Printers
    • ...
  • Debugging swayidle and learning about flaws with Wayland's idle-inhibit protocol

A real desktop environment would be real nice, but I don't want to rely on tiling scripts that lack features and seem to go out of maintenance every 3 months.

https://github.com/quadratech188/sway-plasma
AI use: Debugging, Learning QML


r/swaywm • • 10d ago

Ricing [SWAY] sway is nice

Thumbnail reddit.com
5 Upvotes

r/swaywm • • 9d ago

Ricing Autosway -Agentic desktop using sway

0 Upvotes

Heeyyy

Sharing my project https://github.com/Opposum0112/autosway

Autosway:Agentic desktop using sway and goose for automation

Am still working on it .

Test it, clone,run it and experiment and share feedback

Thanks to sway community


r/swaywm • • 11d ago

Question Xkb layout

0 Upvotes

Cant change to ch variant de i have tried sway-xkb-layourt-gernerator for localectl working aroubd it with sh for now jank but yea


r/swaywm • • 12d ago

Solved Is there better options for tiling in sway?

7 Upvotes

I was using these because I liked how looks spiral tiling:

default_orientation vertical
for_window [tiling] split

But I've observed:

  1. It works very poor and splitting windows randomly
  2. It will broke some applications as we can see here: github/issues

r/swaywm • • 12d ago

Question Hybrid GPU and Sway?

3 Upvotes

Hey! I've been a fan of Sway ever since tried it. On full-amd desktop it's flawless but I've got to use the laptop for certain reasons.

Fedora Sway is just great and I am used to it and have a config from desktop.

The question is adressed specifically to hybrid gpu users who use dGPU for gaming and whatnot: do you have worse performance with Sway compared to KDE, Hyprland or such?

Try to be impartial and candidly say if it's not worth doing. Recommend another WM playing nicely for my use case.

Acer, Ryzen 6600h/3050ti


r/swaywm • • 12d ago

Discussion i was able to get blur in vanilla sway without any patches

8 Upvotes

https://github.com/developic/sway-blur

feel free to check the source code if you want or install it and try it yourself

curl -fsSL https://raw.githubusercontent.com/developic/sway-blur/main/install.sh | bash

r/swaywm • • 12d ago

Question Windows Stay in Respective Workspace

3 Upvotes

So I have a QOL feature that I'm not sure how to implement. I'd like it to be so that whenever you launch an application, that when it finally loads it appears in the workspace that you launched it from. Does anyone know how you would do this/ if this is even possible to do?


r/swaywm • • 13d ago

Ricing Moving Out Of Hyprland into sway

Thumbnail
gallery
52 Upvotes

r/swaywm • • 13d ago

Ricing Switched from hyprland a few days ago and I love sway!

Enable HLS to view with audio, or disable this notification

51 Upvotes

Took me only a day or two to rice it, ofc quickshell took me a while to complete, before that i used rofii for everything and it was good still I wanted something modern so I switched to quickshell! About sway I cant say much other than how good and efficient it is!

Specs:
Distro: Ubuntu 26 LTS
Menus wallpaper pickers: quickshell
Bar: waybar
Terminal: Alacritty
Theme: Dracula


r/swaywm • • 13d ago

Script Per-monitor back_and_forth: $mod+Tab that never jumps to the other screen

2 Upvotes

I use two monitors and workspace back_and_fort kept annoying me: it goes to the last focused workspace globally, so half the time $mod+Tab threw me onto the other screen.

So I wrote a small bash + jq script that makes it per-output:

- $mod+Tab: toggle between the current and previous workspace **on the focused monitor only**

- $mod+Shift+Tab: jump to whatever's active on the other monitor

Example: laptop has 1, 2, 6 and the external has 4, 5, 7. On the laptop I go 1 → 2, and $mod+Tab flips 2 ↔ 1, no matter what I did on the external screen in between.

How it works

Sway doesn't keep a history for each output, so a small watcher subscribes to workspace events swaymsg -t subscribe '["workspace"]' and saves the previously visible workspace for each output in $XDG_RUNTIME_DIR. Because it tracks what each output shows (instead of the event's old field), the history stays right even when you change the other monitor's workspace with $mod+N from this one. It takes a flock, so exec_always doesn't start duplicates on reload.

Config:

    exec_always ~/.local/bin/sway-ws-tab watch
    bindsym $mod+Tab exec ~/.local/bin/sway-ws-tab back
    bindsym $mod+Shift+Tab exec ~/.local/bin/sway-ws-tab other

Script + README: https://github.com/m-elhabib-dev/dotfiles/tree/main/sway

Deps: bash, jq, flock.

Limitations: with 3+ monitors, $mod+Shift+Tab goes to the first other output instead of cycling, and history only starts once the watcher is running.

If there's a built-in way to do this that I missed, let me know!


r/swaywm • • 13d ago

Utility Swayfx Ultrawide Mode

6 Upvotes

Hello all!

I added a configurable mode to swayfx for ultrawide monitor setups.

How to use:

In ~/.config/sway/config, add the following:

- ultrawide_mode enabled // enables default ultra wide split ratios

- ultrawide_split_percent 0.75 // percentage of available horizontal space the primary window will use

Link to repo:

http://GitHub.com/drmcbrayer89/swayfx

Follow the build & install instructions.

I hope someone else finds this useful! I didn't like having scripts running to manage the tiling behavior, but also didn't want the focal point of my eyes being a gap.


r/swaywm • • 13d ago

Question Should i switch to sway with a 2014 Lenovo laptop and 4 gigs of ram?

4 Upvotes

So am thinking switching to sway from arch xfce.

So what do you guys think?