When using TMUX, it is easy to create a script, which opens TMUX, configures the screens/panes of TMUX and open/run programs.

I like this a lot.

My baseline would be something like, when I login, some applications are executed and their windows automatically placed on a virtual desktop.

For example:

  • Open Firefox and put it on virtual desktop 1
  • Open Terminal in fullscreen and put it on virtual desktop 2
  • Open VSCode and put it on virtual desktop 3

Something like that is possible with sway, in the environment I am working, sway is not able to run XWayland applications w/o crashing.

Is there any way to have this functionality on Gnome, Mate, Xfce?

Even better would be something to open several windows and arrange them automatically for different work tasks/projects I am working on. Any ideas?

Edit: Solved! Thanks for the input. Auto Move Windows extension for Gnome solves my problem.

  • Herbstluftwm. It’s one of the main reasons I use it.

    You can run commands on the command line to create your layouts for one or more desktop (tagged spaces), assign programs to appear on tagged spaces, and then run the programs. Put it all in a shell script and hlwm runs it when it starts.

    I use xtoolwait for programs I want multiple windows on different desktops for, like terminals.

    I have three monitors; one is a status window, and the other two are grouped together in 8 different tags. Mod4+9 focuses the status screen, Mod4+[1-8] switch the other two monitors in sync to the other workspaces. It’s all set up when I log in, including the creation of several terminals each running tmux from sessions restored by trum-session. The only thing I have to do is enter a password to unlock my secrets so background processes can start doing their thing.

  • Bonje@lemmy.world
    cake
    link
    fedilink
    arrow-up
    10
    ·
    edit-2
    1 day ago

    KDE window rules can do this natively

    Hyprland window rules can also do this natively

    Gnome can also do this with extensions as mentioned

  • nyan@sh.itjust.works
    link
    fedilink
    arrow-up
    3
    ·
    1 day ago

    TDE has this natively under the advanced window settings, so I would expect KDE to have it too.

  • Dran@lemmy.world
    link
    fedilink
    arrow-up
    3
    ·
    1 day ago

    I do this with awesomewm. You define window startup behavior in the main config. Applications can have static behavior to start in certain places or will default to “wherever my cursor currently is”. I suspect i3 has similar functionality