Linux Desktop Setup
hookrace.net
hookrace.net
Despite all the systemd's, PulseAudio's and whatnot's, the customisability is still far greater than it is on OS X and Windows, and we can sometimes fail to appreciate that.
I would say flip the question around: if I can automatically tile windows, why would I use gnome where I have to do it manually?
Let's say I start my server in my IDE and I use my browser to interact with it. Then the bottom right of the IDE (where the console output of the server is) will be visible even with the browser in focus, and so I can see what the log output is doing.
I have got keyboard shortcuts that move windows to predefined positions with predefined sizes. E.g. full height but only the right 85% of the screen. Or full width but only 90% of the height.
I tried Gnome recently, and although it's very polished, I switched back to i3 because it wasn't nearly as intuitive to drive with the keyboard.
Instead, something I really wanted was to be able to toggle the hiding and showing of all floating windows per workspace. It sometimes happens that I just want to work with floating windows for a while, and the number of windows explodes, and I end up with all these floating windows on top of my tiled windows. Using i3 with the default configuration, I had to manually move all floating windows out of the way to get to the tiling windows below, and then move them back when I wanted to work with them again. That was cumbersome, so I did this:
bindsym $mod+Tab exec "current_workspace=\\"$(i3-msg -t get_tree | jq -r 'recurse(.nodes[]) | select(.type == \\"workspace\\" and ([recurse((.nodes, .floating_nodes)[])] | any(.focused))) | .name')\\"; floating_workspace=\\"F${current_workspace%:*}\\"; if i3-msg -t get_tree | jq -e \\"recurse(.nodes[]) | select(.type == \\\\"workspace\\\\" and .name == \\\\"$current_workspace\\\\") | .floating_nodes | length > 0\\"; then i3 \\"[workspace=$current_workspace floating] move to workspace $floating_workspace\\"; else i3 \\"[workspace=$floating_workspace floating] move to workspace $current_workspace\\"; fi"
Now, I just press Super+Tab and all floating windows on workspace e.g. 6:some-topic get moved to new workspace F6, and when I press it again they're moved back to 6:some-topic, right where they were. This is workspace independent; the windows belong to a workspace. I can hide the floating windows of however many workspace I want and call them back and they won't get mixed.
I think it's pretty cool that i3's configuration and tooling allow for this kind of advanced configuration. It's like I added a whole new feature.
You need to create a keybinding that calls `scratchpad show` using a window class qualifier to target the app you want. That's the key to making the scratchpad useful.
Problem solved! Here is your quake terminal toggle.
It's something that doesn't seem useful until you've done it for a while, and then it's hard to go back.
1) You can control it from the shell (and hence scripts and hotkeys). For example, `i3 "move to workspace prev"` moves the window to the previous workspace.
2) You can obtain a lot of information of the window manager state (all windows, their sizes, their tree structure, the marks, etc) from i3-msg in JSON format.
1 and 2 mean that the WM is very highly programmable via the programming language of your choice.
3) Workspaces are not fixed. Empty workspaces don't exist unless you're currently in them. You can move a window to a workspace of any name and it will get created. Empty a workspace and when you move away from it, it will be destroyed. This makes it very convenient to work with temporary workspaces.
4) Windows are arranged in a tree structure. Normal windows are leaves. Containers are the branches that take you to those leaves. Containers can be in 4 modes: vertical, horizontal, stacked, or tabbed. That last one means you can tab any set of windows. Why do so many applications implement tabbing when it should be the window manager's job? Stacked is very cool in that it's like tabbing, but the window title doesn't shrink with each added window you have in them. Anyway, this point means that you get a lot of flexibility in how you organize your windows.
5) The configuration gives you a lot of control. These are many small things, so I won't list them all, but as an example, I can put a colored prefix on window and container titles to remind me what they're about without having to focus on them and see their content. I can also match new windows by some criteria and have them appear in a container I tagged without them gaining focus. This is very useful for when I'm doing something in the shell that will cause a window (or multiple) to repeatedly appear but I don't want to lose focus from the shell and I don't want the new window(s) to appear on top of it. As an example of this, I may be running selenium tests which could cause a browser window to appear to show how the tests run. I may also be doing some ad-hoc statistics in octave (cli) and have graph windows appear.
Further i3 has keybinding modes which are sets of keybindings that are activated together. These work like user definable vim modes. A given binding can do one or more operations, and optionally exit the mode.
A brief example.
Everything not in a mode is in the default mode.
A command mode wherein every key is either an action or a mode entered by tapping and releasing left shift.
A workspace switch mode entered by w in command wherein a key is bound to switch to switching to that letter ws. eg left-shift -> w -> a switch to workspace a
An open mode wherein keys are bound to individual applications eg t for terminal b for browser. left-shift -> o t open terminal
Another mode to move a given window to given letter workspace. Another to do the same and switch to it. Another to focus the same app defined in the open mode. Another to get the app from the letter ws.
A mode to control audio including hotkeys for navigating tracks, changing volume, switching all playing streams to different devices, toggling playback.
A mode to kill either the focused app, all in the current workspace or all in the screen. left-shift -> q -> q for current focused, q w for the workspace q e for all visible windows.
You can tab or stack(vertical tab) any app.
You can assign particular workspaces to monitors and particular apps to particular workspaces.
You can a built in tool to run commands based on window rules.
You can save and restore entire windows layouts.
This alone keeps me using i3.
If don't already know about `set -o vi` in `bash`, prepare to be delighted.
But when I started working, I switched to Debian, maintaining a Gentoo was a bit costly, and when I wanted to try out something, compiling everything was really slow (you frequently have to wait a few hours).
I still use a minimal setup (dwm with some customization and helper scripts: https://github.com/kakwa/dwm-desktop), and frankly, once it's done, you barely have to touch it, I've not touched my setup in years.
Setups such as in the article aren't the result of "nerd times" and spending hours configuring just for fashion. They grow slowly over the years out of necessity and annoyance with your current setup.
> it's an OS, a GUI, it's the basis for getting real work done.
The basis for "getting real work done" is workflow. There is no need to be 100% efficient to be productive, but some people, like probably the writer of the article, like to push it to the upper limits, because they might be extra sensitive to "mouse lag" or some other reason.
There is also the extra perk of consistency. Due to their nature, xfce, GNOME, KDE change and consequently break things. Setups like in the article hardly ever change, even after major upgrades.
P.S. Also, as the writer mentions, Thinkpad x200: one of the finest GNU laptops ever. Real keyboard, all Fn keys work. It at a point where if software is too heavy to run on it, it's simply not worth running at this time. Any potential software advantages do not outweigh the superior compatibility and haptic of the hardware.
After all nobody argues that buying a fishing pole and driving out to the lake is the fastest way to get dinner.
However, I did the same thing as you did and I still use a tiling WM and CLI programs without touching (95% same) configs in the last 5+ years. I am (anecdata I know) faster than anyone who has worked with me and uses a touchpad while editing. All that while being hardware/location independent because I can always replicate my setup easily.
As a related side-note, using a tool properly is a huge productivity booster. I've seen people go from editor1->editor2->editor3 spending significant time learning each tool and still repeating that writing a few config files is a "waste of time".
There are a very few things that I will drop into Gnome to do (I think it's Gnome at least), and I dread it every time. Too many menus everywhere, too much animation, tiny targets that I need to hit with the mouse, etc.
Here's a newer script that overall seems to work better: https://github.com/lingtjien/Grid-Tiling-Kwin
And the older script I used to use: https://github.com/faho/kwin-tiling
I still have my treasured xmonad config available as an xsession for when i'm just doing dev things, and use it most of the time on the laptop I do programming with, but in general plasma5 is such a step up from any older versions of KDE it just works really nicely for everything else.
I'll have a look at the KDE tiling plugins although I'll be surprised if it can replace my xmonad setup (would be nice though).
Have been using mainstream (more or less) stock distros for years.
My customizations are so they're hardly worth noticing. Notably I spend more time fixing a default Windows (show file extensions for known file types etc) than on a typical KDE setup.
These days, I run an almost bone-stock KDE Neon (which is based on Ubuntu LTS), with a couple of PPAs added to get the latest versions of a couple of the applications I use the most, and that's about it. I keep the default desktop/panel layout and theme, the most customization I've done is turn off all notification sounds and switch to focus follows mouse with no auto-raise.
KDE gets out of my way and lets me do what I want perfectly fine in its default state.
It all seems to work for me. Am I too much of a Linux noob to appreciate these problems?
No you're not a noob. All the nonsense I used to go through was just that... nonsense.
These days it's quite rare I need to dip into that toolbox, but I'm regardless quite glad I learned everything Gentoo taught me. It's often made the difference between "oh that's unfortunate, let me fix it" and "shit, I need to re-install".
If you think that stuff seems interesting, go for it. I'd recommend you install Gentoo in a virtual machine for the fun of it, and to learn about things like init systems, filesystems, software dependencies, etc.
The correct way to use Linux is whatever way you're using it.
I don't run a complicated (to some, compared to this it's probably only half-complicated) setup because I want to, because I fiddled with it until it didn't get in the way anymore.
Linux did lag in performance, but features like virtual desktops, notifications, transparency, and other things were easily a decade ahead of OSX and Windows.
I remember in 2008 in class, playing World of Warcraft via Wine in a window, while also taking notes, tailing logs, streaming music, and writing code, on a pentium III with 2G of ram. If I wanted full attention for WoW, I could go fullscreen, while xchat would still display my IRC messages along the top of the screen.
This simply was not possible on a Windows machine.
I loved to see people's faces light up and have them say "How did you do that??". Oh, I'm using Linux. Sliding windows, multiple terminals bound to hotkeys, and graphics that were not bound by some UX gatekeepers that are afraid to overwhelm people's senses.
I think it is good to play to your strengths. Linux will never be Windows or OSX.
It's probably nostalgia talking, but I miss the gnarly desktops that used to be so common.
https://www.ghacks.net/wp-content/uploads/2008/12/e16_screen...
http://nova.polymtl.ca/~coyote/picturesd/linux/enlightenment...
https://joindiaspora.com/uploads/images/scaled_full_803a5625...
https://joindiaspora.s3.amazonaws.com/uploads/images/scaled_...
I remember when Hulu came out in 2009, the default reaction from the community was to release python scripts that auto-ripped it and piped the video into mplayer. Today, the reaction is to compromise our OS by supporting Widevine DRM or some other nonsense.
It probably did more to advocate for Linux when we weren't afraid to be different, or break the rules for the user.
Maybe it's egotistical, but this used to be the experience of using a Linux laptop ten years ago: https://xkcd.com/272/
Linux actually felt more capable than Windows in a lot of ways, except maybe some hardware support.
Today, it is: Oh, you're using Linux because you couldn't afford a Windows license, right? Linux is to Windows as OpenOffice is to Microsoft Office?
It's liberating to know I can burn everything down, reinstall, pull my dot files from git and get coding again.
I've never met a Linux user who failed to appreciate that.
More to the point though, doesn't a complain such as you stated imply that the complaining party is aware of high configuratibility as an expected standard?
My biggest question here for people with this kind of text setup would be: don't you surf the web? Do you use then lynx or another text web browser? What about services and platforms that are designed from scratch with images and video as a prominent part of that UI? (Twitter, Facebook, Amazon store for example)?
I guess you simply switch to a visual browser and some visual tool to play video (vlc, mplayer), but I'm curious and I wonder if that text/keyboard mode can be satisfying or convincing for users that are used on the traditional visual UI with windows, icons and the mouse paradigm.
I see the advantages here (OP mentions some of them), but I wonder if the trade offs for the normal user are to big to work in this kind of setup. Who would you recommend this to?
I used to use i3, and I used Firefox for browsing.
I used the keyboard to layout the windows where it was more convenient, but I clicked on buttons with a mouse when that was more convenient.
I now use the standard Ubuntu setup, not for any particular reason, just because it's the default. I often miss being able to conveniently layout terminal windows with just a few keystrokes. Trying to keep terminal windows neatly tiled with a non-tiling window manager is so annoying that I don't even bother.
You should be able to do that using the "Super key" + e.g. left or right
I tried i3 a year ago, and didn't find much value in it since my terminal is already tiling.
Just because they run urxvt per workspace doesn't mean they can't run another program in a specific workspace, though. It's not a terminal-only setup in the same way that the tty is a terminal-only setup.
For videos in particular, mplayer can be controlled purely by keyboard. There are GUIs for mplayer (I seem to recall anyway), but I've never used them.
Whether this is the right setup for anyone in particular depends on which apps they use often. Not everything maps nicely to the "everything is text" doctrine. But where it does, the wins are major: text is super easy to handle, index, search, generate. It's easier to record macros to handle text than to do GUI stuff. It's easier to write little tools to process and generate text than to do anything GUIish. Output of these tools again is text, so it composes in the same way that shell pipeline does. Version control works best with text. It's like tarpit of win, the more you dig in the more sense it makes :)
I mean it's kinda dumb to reach for the mouse to hit C-c C-p enter then reach for it again to focus your editor.
When you look at my monitor you see just a clean, normal desktop with a few Firefox windows (1-3) and maybe a dolphin in the taskbar, not realizing there are a bunch of shell sessions hidden behind a hotkey ;-)
Access your data for all websites Read and modify bookmarks Get data from the clipboard Input data to the clipboard Access browsing history Display notifications to you Access recently closed tabs Access browser tabs Access browser activity during navigation
... this seems excessive - especially clipboard and historical items.
For example, to open a bookmark from the command line requires read access to your bookmarks in order for the plugin to present you with the list of bookmarks and eventually allow you to search or navigate it somehow. The same applies to opening something from your browsing history or resurrecting a closed tab. Tab switching requires access to the tabs. Clipboard access is for things like copying URLs or the selection in visual mode to the clipboard.
Vimium itself is open source on GitHub and you can see for yourself what it's doing with your data. The Firefox port is by one of the most active project contributors.
Linus Torvalds avoids Linux distributions like Gentoo or Arch because he believes the whole point of a distribution is to make it easy for the end user to install and use useful apps on top of it.
He also doesn't care about trivialities like bash vs zsh. It doesn't (and shouldn't) matter to 99% of people.
Ubuntu is hard (not impossible, just harder than Arch) to setup the way I want my computer to be.
It's not hard to install useful apps on top of Archlinux (can't speak about Gentoo, never tried it), it's maybe not intuitive at first.
Maybe we can recognize different users have different needs, and what's right for some isn't for others.
> trivialities like bash vs zsh
Yeah, when you spend your life in a shell, the choice shouldn't matter, right ? Just like carpenters shouldn't care about saws...
Exactly, and that's supposed to be the whole reason we have different distributions in the first place, so that they can cater to people who have different preferences.
>Yeah, when you spend your life in a shell, the choice shouldn't matter, right ? Just like carpenters shouldn't care about saws...
To be fair, I think that on just about any distro it should be pretty easy to set a different shell like zsh for your preference. It's not quite the same as wanting to run i3 on Ubuntu.
For all other web needs I just hit super+shift+w and it makes a new chromium window in a new workspace.
Writing custom keybinds for launching weirdly specific applications is my favorite part of i3. My least favorite part of i3 is dealing with parts of the UI that I am very used to being graphical, like sound management. I end up installing gnome applets but I would love an alternative to widgets in i3bar.
It's been so many years and I often take for granted what's before my eyes -- i3 is solidly in the "pry it from my cold dead hands" category.
I also personally found sway makes setting offsets for 2 monitors somewhat easier than X11.
The author has iirc even actively discouraged Ubuntu and Debian from packaging it, because he doesn’t want distro users creating bug reports on older versions (ie noise) for bugs already fixed in git master.
Once sway lands for regular distro-users, I’ll be there. For now I’ll stick to i3.
It is and has been quite stable as a regular user on the sway-git version for awhile, but I can't comment on what it's like for Ubuntu or Debian.
Edited for grammar and to add this:
My point being is that it's slowly but surely getting better and better.
With the previous version I had the same thing, only allowed me to share white canvas.
Here's the process hierarchy:
\_ gdm-session-worker [pam/gdm-password]
\_ /usr/libexec/gdm-wayland-session gnome-session
\_ /usr/libexec/gnome-session-binary
\_ /usr/bin/gnome-shell
\_ /usr/bin/zoom
\_ sh -c export SSB_HOME=/home/me/.zoom; export QSG_INFO=1; export LD_LIBRARY_PATH=/opt/zoom; /opt/zoom/zoom ""
\_ /opt/zoom/zoom
Besides installing the new RPM, I haven't done anything differently.(see my other comments here)
So many places are just running a webapp on a number of their computers, and that's it.... generally for many tasks ChromeOS is all they need.
You get the vim functionality back with the following extensions:
Firefox -- Vim Vixen (https://addons.mozilla.org/en-US/firefox/addon/vim-vixen/)
Chrome -- cVim (https://chrome.google.com/webstore/detail/cvim/ihlenndgcmojh...)
I might change one or two things every year, moving from gnome terminal to kitty recently, for instance, but I'm happy with my setup and it's served me well.
Oh.. It looks exactly like running a high resolution VGA-mode console with tmux and no X. :P
(Probably very effective though!)
Not all eye-candy does that. Some years ago, because I missed having some eye-candy, I installed a compositor, made my windows translucent and got them to do opening and closing animations. I also put a screensaver as a moving background. It looked very cool and was just as information dense as it was originally. However, with so much eye-candy, it was hard to focus on the content and I felt my eyes strained. I ended up feeling much better when I turned it all off.
Right now, I don't even have a background, but I find information-dense tiling-wm setups have their own aesthetics. If you asked me what looked cooler / better / more usable, a "modern" GUI (like Windows, OSX, or Ubuntu's default) or a tiling-wm setup with mainly terminal windows, I'd have to say it's the latter.
Whenever a linux-windows-setup post appears on the HN or reddit front page, I look at it with interest, and then realize that there's no way I'd achieve any productivity gains in a reasonable time.
So maybe the moral of the story is: Choose correctly the first time, because you might be using your wm until you become an old guy/gal too set in your ways to even think about switching.
I use xfce, but most of my time is spend in a terminal with tmux running for the window configuration. Though, I do have some 'snaps' installed. (Discord, Spotify). So I'm not running entirely inside of the terminal.
For me, this balance is perfect, for any serious work I can just use the terminal/tmux/vim setup, and for relaxing I just have spotify, discord, youtube,.. open on a second monitor.
As for distro, I'm running Debian. I've tried a few others (openSUSE, Fedora, Ubuntu, #!) and by far #! was my favourite for some time, but when it discontinued I went for Debian. I should check out BunsenLabs :)
A while back I moved to Arch with Xmonad, dmenu, tmux etc, but for about a year now, my workstation has been the same tools on top of Ubuntu Server. I have an Ansible playbook that I can apply to a fresh install and have almost my whole working environment ready to go - just a few things I haven't got around to including/automating.
The great thing about running this kind of setup is that you need a deeper understanding of Linux to do all the things that you would otherwise rely on a fully-fledged DE to do for you. For me, this has translated into greater fluency on servers, because my daily driver more closely resembles one.
Reminds me of Gibraltar Airport: https://www.youtube.com/watch?v=58jaCJ5i9hU
[1] https://gist.github.com/XVilka/8346728 [2] https://github.com/adambyrtek/dotfiles
I used to dual boot my work laptop, which was made easier by Office 365 webapps becoming more usable, but still there were lots of gaps.
This summer I got a new work laptop, and just cloned the existing M.2 drive onto a bigger, faster one I purchased. Now I run the work laptop as a VM image through QEMU/KVM on top of my regular Debian desktop.
This works remarkably well, and has improved my workflow a lot as I now never have to dual boot. Windows even runs faster this way, due to the faster M.2 drive. I'm not sure how I'm going to explain it to the IT department if I ever have to get the laptop repaired though.
My current job force me to use a Windows computer. You know, it's the company policy. Well it's the last time I take a job witch doesn't let me control my computer and use GNU/Linux. It feel like I m using the wrong tool for my job. Like use a stone to put nail instead of a hammer.
Maybe I'm misunderstanding your setup, but could you not clone the Windows VM partitions to the old M.2 drive (I'm assuming you kept it), swap it back into the machine, make it bare metal bootable, and hand it to IT like that? That way your larger M.2 drive with your whole setup stays safe and secure, and IT is none the wiser.
- If the laptop is broken beyond use, I won't be able to write to the M.2 and I don't have an external M.2 enclosure (and the most likely fix here would be to switch out the drive to an equivalent laptop, then try and boot it up)
- I actually tried writing the image back to the M.2 at the weekend, and it it wouldn't boot, Windows had some error about a required device not being connected on one of those bootup BSODs
https://blogs.technet.microsoft.com/jonjor/2011/10/04/vm-doe...
Ontopic: Quite impressive setup. For me it would be too strictly regulated for a comfortable use, though technically I like it. To each it's own.
Thanks to Alexander Waldeck for the idea of having htop
itself as the page background! His page actually presents
a live htop session -- mine is just an animated gif with
a few frames stolen from his page. :-)
The drunken-security.at page is offline as far as I can tell, but as I recall it he eventually had to drop the htop background as people were DDOSing him to see the results.I switched from OpenBSD awhile ago to Linux because 1) OpenBSD is dog slow and 2) a lot of software doesn’t work right with it. However, it’s probably the nicest operating system I’ve ever used.
Use case: I have a laptop that I take everywhere for me, but I plug into a second monitor while at work. I also use multiple desktops, and this pattern is sometimes causing windows to jump to another desktop when disconnecting the monitor.
Tiling window managers definitely have a learning curve, but after I spent a weekend switching to one, I can't see myself ever wanting to go back to floating windows.
Example: I've got processes that make models out of stock data and does backtesting. Even though I use my own custom code for a lot of things, I make sure that in the end if someone wants to dump into numpy/pandas they can in just 2 lines.
I started out with Linux to use a free hand-me-down laptop and I stayed when it was powerful and I could still make a living coding with it.
Has anyone done a switch from very minimal keyboard first lightweight environment to a modern desktop environment? If so, what was it like?
I went from awesome to KDE (kubuntu 18.04lts).
I do webdev, cm and reports at the moment.
I believe the terminal only approach suits most sysadmin, devops and the like ; not your run off the mill wordpress dev.
I'm not doing webdev, I mostly program in different languages (Racket, OCaml, C, and Python mostly) and write a lot of LaTeX. Most of my time is spent in Emacs (it's also were I'm doing my emails) and Firefox.
In addition to graphical file managers, I'm also wondering what it's like to use a mail client such as Thunderbird, Kmail, or Evolution.
I am not using mail clients anymore, only webmail (I have a thunderbird install at work that is used as some kind of back-up/dumpster). I don't spend a lot of time in email or calendars though.
[1]https://github.com/Gekkio/gnome-session-xmonad
[2]http://hackage.haskell.org/package/xmonad-contrib-0.15/docs/...
That said, it's not very attractive. My partner thinks it's looks bizarre and I don't think I could slide my laptop over to, like, anyone and have them be productive.
There are more powerful solutions and easier to setup (YouCompleteMe, for example). I was completly sold out when I tried for the fist time a few years ago. I was pretty happy to drop all my ctags's related scripts.
To me, it looks like an upcoming solution to the 'code completion' problem.
Regarding composability:
Suppose I want to add the following to that calendar:
1. two little emojis (or ASCII art) at the top to scroll among months. Bound to left/right arrow keys, and also clickable with mouse. This is a common feature of the calendar widgets I've seen.
2. clickable mutable daily content. So if I peruse my calendar and spot an error I can click to select, fix it, then click off it to update it.
Can this be achieved only using shell scripting?
Is compile time of the desktop environment really a discriminating factor?
I can recommend the unaboomer's rice vids for a fun evening https://www.youtube.com/channel/UC2eYFnH61tmytImy1mTYvhA
I'm happy on Ubuntu LTS with a couple PPAs for latest mesa and some other applications.
More recreational though, gaming through Steam's Proton or Lutris, big thanks to Valve for sponsoring wine, dxvk an various other bits and pieces!
This is one of the first things i do on a new setup, to chane them to use "meld".
Bit older than I was expecting. I had assumed a ThinkPad T series. Maybe a T420 with the 1440x900 resolution.
I do agree that this person has many terminal sessions open, but they are also running Firefox, playing music, etc.
> Since i’s a bitmap font
It's much more complicated than the workstation setup I use at work.
A desktop setup is my Xiaomi laptop with Ubuntu 18.04 that I use as media caster or to browse amazon while on the couch.
It works flawlessly, much better than the preinstalled Windows 10 in chinese.
As to the content itself, the insights, configs and tools listed are great. My setups have very similar objectives, but solving a lot of these mundane problems can mean days, so I'm definitely saving this for later.
What? No.
A desktop is a computer sitting on the top of your desk. And on the software-side there is the Desktop Metaphor, which describes an interface that behaves like the top of your desk, with free arrangement of all meaning of your work.
This article on the other side describes a workspace with multiple machines and mostly no free arrangement of work-elements. So it's not fullfilling the hardware-definition, and pretty weak on the software-definition.
This article is clearly about a workspace that blows beyond the classical workspace-definition of a desktop. Which is good IMHO, but means we need better namings for such things, and even if it's just for the sake to distinguish different tools and workflows. We are now moving to integrate Mobile Devices like iOS&Android into our workspaces, and on Windows-tablets we have touch-interfaces which start to be very different from normal mouse&keyboard-interfaces. And then there is also the classical terminal-interface, which this article is very heavy leaning toward.
> A desktop is a computer sitting on top of your desk.
Besides the fact that the author indicated he's using a laptop hooked up to a 40" monitor, kind of necessitating the computer to be sitting on his desk, his use of "desktop" in general is referring to his everyday workflow. For some people, that's Windows and Windows specific apps. For others, it's macOS and its specific apps. For yet others, it's a Linux or BSD desktop environment, whether stock or customized. The fact that he's using a laptop as a workstation does not magically render his established work environment "mobile", and even if it did, he's still using a desktop environment of his own making.
> This article on the other side describes a workspace with multiple machines and mostly no free arrangement of work-elements.
Maybe we're reading different articles, but I see no mention whatsoever of what you're going on about. I see where he at one point mentions "multiple computers", but this in no way invalidates his desktop environment and software setup as violating some made-up rule about what is or isn't a "desktop".
I currently use five computers at home not counting my iPhone: A HP EliteDesk set up as a Windows gaming system, a Dell PowerEdge T310 server running Slackware Linux, converted into a workstation by adding a GPU and sound card and tweaking the BIOS, a mac Mini for music production and general Mac-specific things, a Raspberry Pi 3B+ for experimenting with IoT, and a HP Elite X2 convertible laptop for quick tasks away from my desk and occasional use at work.
Now, according to your logic apparently I can't possibly have a "desktop" setup because I use more than one computer, of more than one form factor, for more than one task at a time, and not always glued to my desk. That's total bullshit.
Definitely not Desktop.
He is using just a window manager.
For what it's worth, I find the desktop metaphor in UX design a pretty tiring historical artefact. A desk, as a workstation, is the way it is because of physics. Computationally driven user interfaces don't have those constraints and it's awkward, not to mention short-sighted, at least in my opinion, to force one upon the other.
It's a Xiaomi Air 12
I bought it almost 2 years ago, never had a problem It runs vanilla Ubuntu without a glitch
The specs are not great, but it's a nice home laptop
What is complicated about the setup? What makes you think he can't cast media or browse Amazon on his laptop while sitting on the couch?
Everything.
> What makes you think he can't cast media or browse Amazon on his laptop while sitting on the couch?
I never said he can't, it just took a lot more time for him than it took for me to do it.
Are regular drivers going out for groceries tuning their engine to perfection everytime they need to go buy milk?
That's what a desktop is all about, a computer sitting on a desktop dedicated to a worker, not a pro, and expert, a tuner, a nerd, a geek, someone who loves machine carnally.
Just regular folks that know ho to do what they have to do and that's just it.
I've been a Linux user for the past 15 years, I installed my first Slackware in 1996, but I wouldn't say my setup is desktop ready.
I don't know how many of my 13 thousands coworkers would have been able to solve the problems I had with Debian and my Lenovo P-70 multi monitor setup. I'm sure many of them think I'm crazy spending so much time on it, when they have a problem they call IT and until IT doesn't solve it, they are not working, and are happier.
That's a desktop computer.
Terrific non-answer.
You seem to be projecting a lot. He never mentioned that it took him a long time to do anything. And just because he doesn't use a readymade workflow or a graphical user interface for some of his applications his setup is not a Desktop setup?
> That's what a desktop is all about, a computer sitting on a desktop dedicated to a worker, not a pro, and expert, a tuner, a nerd, a geek, someone who loves machine carnally.
This has to be the weirdest bikeshedding argument I've ever seen. The only reason I can think of why you're so insistent on this distinction is to brag.
> I don't know how many of my 13 thousands coworkers would have been able to solve the problems I had with Debian and my Lenovo P-70 multi monitor setup.
Yup. There it is.
I don't think about the software installed on that computer at all.
Also: desktop computers, in my opinion, pre-date the "desktop metaphor" and GUI environments.
I kind of doubt that. When the metaphor was introduced by Alan Kay in 1970, there were no desktop computers. If you consider microcomputers the first desktop computers, which you should since their predecessors, minicomputers, were "cabinet" computers, then the Micral N in 1973 would be the first "desktop" computer.
When Alan Kay was working on GUI environments, it was on equipment that pretty much nobody could access, it was very expensive and few units were sold. Still, it's interesting to note that the Altair was not a desktop computer that could literally sit on a desk: it came in a cabinet that was meant to sit on the floor.[1] ;-) The irony!
When Apple released the Macintosh, I believe most people were interacting with desktop computers that lacked a GUI desktop environment. Specifically I was thinking of the IBM PC XT [2], although, as you note, there was more to the field than just that.
[0]: https://en.wikipedia.org/wiki/Micral
Some ascribe to the diction that 'perfection is reached when there is nothing left to take away', depending on your starting point you either end up with a lightweight environment like Xmonad (et al) plus a few tools or at a lobotomised full desktop like Gnome.
It does resemble mine, either.
In fact I'm not a desktop user.
> or at a lobotomised full desktop like Gnome
That's super not nice.
Regular people want a tool, not something you fall in love with and spend most of the day refining.
Most people have hobbies outside of the tech world, they will spend hours growing their gardens, but couldn't care less about "keyboard focuesed" or "run programs in the terminal" or "I quickly noticed the huge compile time of KDE".
If they can't use it properly, like they are used to, it's broken for them.
And they're not wrong.
I mean, desktop usage is meant for people who work with computers. They spend several hours a day in front of them and therefore require ergonomic chairs and the like. If you want to use your laptop on your couch, that is completely okay, but you are probably not doing some of the things people at desks are doing (like decrypting compilers errors etc.).
Practically everyone works with computers.
> They spend several hours a day in front of them and therefore require ergonomic chairs and the like.
That includes almost everybody.
> like decrypting compilers errors etc
I do that on my couch.
Desktop setup is a computer set up for desktop use, AKA, _for regular people everyday use_, that come bundled at most with some productivity suite (usually Office or Office clones).
Xmonad is not desktop ready, on the contrary, it harms Linux penetration on the desktop segment.
Ubuntu is a desktop setup, Fedora is a desktop setup, ElementaryOS is a desktop setup (etc. etc. etc.)
If you are compiling, you are already a pro user.
A desktop user doesn't fight with the default configuration, a desktop user adapt to the default configuration.
They might change the desktop background and WM theme, and that's all.
Firefox + Tridactyl
i3 + i3bar + dmenu + rofi
dunst
Powershell instead of zsh
No desktop manager
I use zsh for regular getting around and opening stuff but anything that needs logic I do in pwsh.
I don’t understand why someone would prefer bitmapped fonts vs ttf. They really hurt my eyes and look god awful...