I really don’t understand what the point of workspaces is if I can’t isolate them from each other. For example, I want to have personal web-browser open in workspace-1 and work web-browser open in workspace-2. But the way Gnome works is when I go to workspace-2 and try to open a new instance of a web-browser, it jerks me back to workspace-1 where I already have my personal web-browser open.
How do I go to workspace-2 and open new instances of apps (i.e., keep the workspaces isolated as if they are the only workspace on the computer)?
If I understand you correctly, you need to open a new window of the browser: either right click and “open new window”, or ctrl + click on the icon in the activities overview. By default, if a window is already open, Gnome will just go to that window. There’s this extension you can install to always open a new instance:
I think this also modifies the behaviour of the dash to open new instances, though—you’ll need to check (I don’t use the extension)
In my workflow, I have 4–6 workspaces here, all with a terminal and browser window each.
It’s not really a new instance of the browser—it’s the same browser “profile”, just a different window. If you want to open a new profile, you’ll have to look at how the browser does that. In firefox, for example, you’ll have to run firefox --ProfileManager to then create/select a different profile.
I do not know whether the “workspaces” concept is enough for work-private separation or that you need two users and switch with the ctrl-alt-fn key combinations between both. Firefox is rather picky and tries to jump into an existing instance. To start a new one, you need “firefox --new-instance”, which creates an independent window. Combined with the --ProfileManager mentioned above, it could fulfill your requirements.
Ankur mentioned that “it’s not really a new instance of the browser…” This is not true. I use browser profile-1 (personal) in workspace-1 and browser-profile-2 in workspace-2. Both browsers have different settings and bookmarks etc.
If I go to a new workspace, why would I want gnome taking me back to previous workspace to interact with those windows? It makes no sense. What’s the point of a workspace if you can’t treat it and interact with it separate from the other workspaces?
“Workspaces refer to the grouping of windows on your desktop.”
Not apps, not processes, not users, only windows. As far as I know, this is the only implementation of workspaces around—even on different DEs (and even Windows/Mac from what I remember).
For FF, you’ll have to start a new instance/profile either by running firefox --new-instance somewhere—either in a terminal or in the run window (alt +f2), or by creating a new shortcut for it using a desktop file. Or you can right click on the icon and use “open profile manager”.
Profiles are quite FF specific. Not all apps have them (although one can usually make them point to different config files which can be thought of as different profiles, but that also must be done running a command somewhere), so Gnome and other DEs do not have functionality to open new or choose profiles by default.
I think the launch-new-instance extension opens new windows, which for most apps, is a new instance—but probably not for most browsers which now open new tabs in current instances etc. Worth checking.
In my workflow, I open a new workspace, start a new terminal window (=instance/profile), and a new qutebrowser profile if required using qutebrowser -r <session name>. To only switch between windows within a workspace, I use alt escape. See this page for gnome-shell keyboard shortcuts:
I think that depends on how you want to use them. I use “one task per workspace” too, and it works fine for me. I’m very key board oriented, though, so alt esc to cycle between windows in one workspace works fine for me.
One can either tweak a tool to fit their workflow, or tweak their workflow to fit the tool but that’s down to personal preference.
I looked at this:
and it also deals with windows, not instances/profiles (which may be enough):
“This means it will only show an app icon in the dash if the application has a window on the active workspace”
gsettings set org.gnome.desktop.wm.keybindings switch-applications "[]"
gsettings set org.gnome.desktop.wm.keybindings switch-windows "['<Super>Tab', '<Alt>Tab']"
gsettings set org.gnome.desktop.wm.keybindings switch-applications-backward "[]"
gsettings set org.gnome.desktop.wm.keybindings switch-windows-backward "['<Shift><Super>Tab', '<Shift><Alt>Tab']"
gsettings set org.gnome.shell.window-switcher current-workspace-only true # same as default
gsettings set org.gnome.shell.window-switcher app-icon-mode 'both' # same as default
so that Alt+TAB cycles through windows on the current workspace. I’ll try using alt esc instead.