Using FreeBSD as Desktop OS

Thanks ralphbsz.

There are other sides to this.

Rolling your own code gives you ownership of the underlying infrastructure and escapes any concerns over software license compatibility. If it breaks, you wrote it and presumably know how to fix it. If a third party library breaks, it may take you a long time to either come up with a fix or wait for a fix upstream.

Lots of libraries do more than I want. This larger surface area carries more bugs and a higher risk of CVEs. I see the same libraries in 'pkg audit' over and over.

There's also the staffing issue. The more tools and frameworks you use, the longer the list of requirements in your job posts. You'll get the applications you deserve: none, or liars and incompetents.

It would be different if companies were thinking in the long term and were willing to invest in people. But in reality, the words "human capital" are just section titles in the annual social audit report of the company, it doesn't translate in facts.

Furthermore, technology is volatile, but applications last decades. Over time, you end up with technology patchworks, e.g. some features using XML/XSLT from the database to the browser, other features using Struts, some using Spring MVC, some more using Angular, and others using React. And the list is still open, as the company still needs the services of this application.

How are you going to find a developer mastering all those technologies to do the maintenance of the application while coding new features?
And if you find one, how long will you be able to retain him/her?

If you want your projects to be rolled out, you have to accept compromises.
 
Well, it turns out that these days, nearly every piece of software requires certain infrastructure. […]
I agree with you, and I understand the "why". And as always: Your words are well chosen and your arguments are valid.

But meanwhile it's getting more and more tricky to get a webbrowser compiled (again: I know the "why"). A few years ago Kdenlive runs even without KF5, and as KF5 came in the dependencies increased and some functionalities were droped - and of course the developers had their reasons to switch over to KF5.

(Marginal note - nice thing yesterday hapened: Tiny up to date headless Ubuntu server. Found a sound lib, and thoght "why the hell on this machine…", so I typed in: "apt-get purge libasound2" and pressed [Enter]. Then I've been asked if I really want to remove Vim. So guys: Don't complain about FreeBSDs packages having curious dependencies - it's the same elswhere; You're just recognizing such things if you're switching over from an other system that is: different. If you don't want it to be different don't switch.)

I would like to see more developers not to be finished with a fast "cool, works", but a little more often on the greenfield site. In my opinion dealing with third party stuff has become a little too carefree.

Is this the future? More and more specific and simultaneously growing environments to get things working? Then massively more hardware will find its way to the dump. And we can no longer afford that (fact: we never could).

The current situation is understandable - but therefore not good.
 
Can't tell if trolling or serious.

No one can effectively and consistently tell the difference these days, even in person.

It's completely normal for applications primarily targeting Linux to map much more memory than they actually need or will ever use. Mmaping large files, for example, will inflate this number quite a bit.

Normal != lightweight. I was discussing the latter, not asserting the former. Speaking in a serious way, in my opinion using 26GB of any memory mapped space is not really lightweight.
 
Normal != lightweight. I was discussing the latter, not asserting the former. Speaking in a serious way, in my opinion using 26GB of any memory mapped space is not really lightweight.
Your view, while reasonable, I believe is mistaken. This is because the requested size (the SIZE column in top(1) and the VSZ column in ps(1)) is not what the program is using, it's merely what the program has requested. You want to look at what's actually resident in memory (the RES column in top(1) and RSS column in ps(1)). This is how much memory the program is really using.

Here's an example from this new VM:

Code:
cbell@athena:/usr/home/cbell $ ps ux
USER  PID %CPU %MEM   VSZ  RSS TT  STAT STARTED    TIME COMMAND
cbell 801  0.0  0.2 20292 9808  -  S    05:39   0:00.05 sshd: cbell@pts/0 (sshd)
cbell 809  0.0  0.1 13480 4744  -  Ss   05:40   0:00.28 tmux: server (/tmp//tmux-1001/default) (tmux)
cbell 802  0.0  0.1 12248 3440  0  Is   05:39   0:00.01 -sh (sh)
cbell 807  0.0  0.1 12964 3940  0  I+   05:40   0:00.01 tmux: client (/tmp//tmux-1001/default) (tmux)
cbell 810  0.0  0.1 12288 3444  1  Ss   05:40   0:00.01 -sh (sh)
cbell 840  0.0  0.1 11940 3136  1  R+   05:56   0:00.00 ps ux
cbell@athena:/usr/home/cbell $

Note how much smaller the RSS value is than the VSZ value. That's the one you want to be using to determine real memory usage. So in your example X server, while it has requested 26 GB from the operating system, it's only using 750 MB (or roughly 3% of the VSZ value).
 
Your view, while reasonable, I believe is mistaken. This is because the requested size (the SIZE column in top(1) and the VSZ column in ps(1)) is not what the program is using, it's merely what the program has requested.

I am aware of this idea. Perhaps I should have said "requesting" instead of "using". Still...are you suggesting that I consider a process requesting 26GB of main memory as "lightweight" because it only uses 3% of what it asked for?
 
By the way,
Code:
% cat /var/log/Xorg.0.log | grep "virtual memory"
[   388.912] (II) NVIDIA: Reserving 24576.00 MB of virtual memory for indirect memory
 
By the way,
Code:
% cat /var/log/Xorg.0.log | grep "virtual memory"
[   388.912] (II) NVIDIA: Reserving 24576.00 MB of virtual memory for indirect memory
To be honest I am really surprised that someone would refer to the number of packages installed as a measure of lightness or not.
System responsiveness, RAM use, CPU use, that what's count.
Your view, while reasonable, I believe is mistaken. This is because the requested size (the SIZE column in top(1) and the VSZ column in ps(1)) is not what the program is using...

So the pedantic responses above, while correct, have ultimately resulted in obscuring the original subjective point I made.

By the exchanges above, it's clear to me that "lightweight" must be a subjective metric, not an objective one. Unless someone is willing to provide an objective definition, with clear rationale for that definition that everyone can agree on, then we must conclude that "lightweight" remains a subjective metric.

Despite the above quotes, I still claim that the number of packages installed is a personally valid metric of lightweight-ness. Each dependent package takes, at the very least, disk space. For purely shared library packages, each shared library takes up some memory and adds complexity to your system. Some of these packages take up space as a process because they must be daemonized and run in the background; this adds complexity as well.

To be clear, I am not saying subjective OR objective system responsiveness metrics, RAM use, CPU use, or network load are not also indicators of lightweight-ness. Measuring these ideas objectively and properly often takes more than just one command (unless you have a monitoring system going on) and dedicated intention. Looking at the package count is quick and easy.

Thus, I will continue to claim that a simple count of dependent packages, while not definitive, is a pretty good and convenient indicator of how heavy or light software is. :)
 
Mine either. Mouse works fine, but touchpad and touch screen in my Acer Spin SP111-32N are not usable.

Touchpad have become a confortable... Handsrest and my screen is clean... No fingerprints on it!

I've tested with 3 live CD (Fury, DragonFly, GhostBSD) none of that worked.

But, testing with 2 linux (Q4OS and Devuan) both worked fine.

Some ideas:

- Use a mouse ... Lame because a usb stick spoil one usb port and could bend my usb port... That's a slim machine and it compromise it's mobility.

- Change for a tabbed window manager ... Good, I'm testing with xmonad and ratpoison and I'm very impressed with it. Cool ... But I'm spending a lot of time to learn all those "key chords" (not a big deal for an emacs user) and improving my independence .... But some applications are simply impossible (xv for instance) and others like firefox have a good set of shortcuts... But they are very intrincate. More time wasting.

- Find some mouse emulator for FreeBSD. I couldn't found yet if some know how to emulate mouse with keyboar arrows keys please post here.

- Develop a drive... No way... Never mind.

Definitely... This modern world is not for those people without a mouse... Without one you are a crippled guy even in FreeBSD biosphere.

And worse... Nobody cares.... If you will buy a brand new computer ask for spartan one. Nice gadgets demands time to be accepted in. Linux guys (maybe it is a money matter) receives their toys first.

I refused to install linux on this notebook... It will stay with other "live `side' pendrive". And I have to wait for some solution. (I don't have driver developer skills and refuse moaning here for someone - who have - work on it)

The bright side: In this mean time I'm learning a lot about drivers, boot, Xwindows, fonts and configurations.

That's why I'm in true love with FreeBSD.

It's a real nice experience - frustranting often - but very useful. I'm growing... and learning.
 
Definitelly... This modern world is not for those people without a mouse... Without one you are a crippled guy even in FreeBSD biosphere.

I am not sure how much help it would be but as long as you are able to define custom key bindings (through your WM maybe?) you could add mouse emulation for those applications that absolutely won't work without it. Example:

Code:
key "Super+1"            xdotool click --clearmodifiers 1
key "Super+2"            xdotool click --clearmodifiers 2
key "Super+3"            xdotool click --clearmodifiers 3
key "Super+Next"         sh -c "xdotool mousedown 5; xdotool mouseup 5"
key "Super+Prior"        sh -c "xdotool mousedown 4; xdotool mouseup 4"
key "Super+W"            xdotool mousemove_relative 0 -5
key "Super+S"            xdotool mousemove_relative 0 5
key "Super+A"            xdotool mousemove_relative -- -5 0
key "Super+D"            xdotool mousemove_relative 5 0

Now you have a mouse on your keyboard.

Edit: Sorry had to fix an error with clicking the buttons. I actually have just the Prior/Next binds to simulate the mouse wheel so i thought it would also work for buttons 1-3. Turns out it doesn't so i had to adapt it.
 
Mine either. Mouse works fine, but touchpad and touch screen in my Acer Spin SP111-32N are not usable.
Touchpad have become a confortable... Handsrest and my screen is clean... No fingerprints on it!
I've tested with 3 live CD (Fury, DragonFly, GhostBSD) none of that worked.
Well, at least some progress is being made. After a couple rounds of unsuccessfully trying to get the touchpad on my notebook to work in the past, I thought I'd revisit this subject after some of the more recent updates to libinput, xf86-input-synaptics, etc. arrived in the ports tree. Turns out it's working now without needing any special configuration and now KDE recognizes it and is able to configure it. So it pays off to have another look at problematic things from time to time.
 
I like the keyboard idea. I have always been meaning to give it a try and remove the need for a mouse entirely.

I do like my ThinkPad trackpoint (little red nipple) but find it annoying if I ever have to use machines without it.

If you decide you really do need a mouse, perhaps you can get a cable-less mouse? These often have a shorter "stubby" USB dongle which has a less chance to break and keeps the laptop thin and easy to move around.

Something like this: https://www.currys.co.uk/gbuk/compu...wireless-optical-mouse-grey-10732373-pdt.html

I avoid Bluetooth like the plague because it is a faff to set up, especially in environments where the OS isn't properly installed yet. You can get some generic wireless ones (infra red?) that are hard-coded to connect so no silly authentication stuff needed (there are some minor security impacts with this but a mouse is a lot safer than a keyboard for this stuff (can't remotely type commands for example)).
 

All right ... And thanks for suggestion @kapedersen. I know it works. I have an logitech keyboard with a trackpad (2in1) that works fine in FreeBSD environment and have a "bug" donkey. It is compact and ligth ... But terrible to use with computers (good for tv and multimedia appliances) and... I have a logitech mouse (solo) as you see - but the donkey is big - and one maxell with a little one - AAA addicted... Well all those things are another clumsy gadgets to carry and handle out on the streets and even worse - doesn't matter which one I can own - it will hijacks my second usb (one is in use to be my "hd" as you can see in attached photo ). I need that spare usb free to insert portable devices or get fast files exchanges through it at all.

At end those workarounds not solve the problem but come to be a crutch!
 

Attachments

  • mousemess.jpg
    mousemess.jpg
    61.4 KB · Views: 164
.... Now you have a mouse on your keyboard.
It was a great try but on my testing, with twm (simpler wm that I know) it worked but is hellish slow (besides on configuration complexity). Maybe I could increase steps beyond 5 ...

But the real problem is: when the mouse is captured by window focus it drops in application control and seems you drifted to another scenario (or portal to another dimension). So the easy way to get out is closing that window but unfortunately, you can't reach using the "close icon" with the "key"mouse.
At the end, the last resource is to exit the application at all. I couldn't find another way yet.
Anyway, it destroys the 'easiness goal' of using a window manager, making it over in a very nice "window 'torture chamber' manager". :p
But for my information, which wm are you using with that configuration?
Thx again.
 
It was a great try but on my testing, with twm (simpler wm that I know) it worked but is hellish slow (besides on configuration complexity). Maybe I could increase steps beyond 5 ...

Yes, you are right, at 5 pixels per step it's really kinda slowish. Well, it somewhat depends on the resolution used but with anything > 1024 it's likely quite sleep inducing to wait for the mouse to reach it's destination. As you already said this could be increased though. It's really just about how to balance speed vs. accuracy. It could also be split into 2 sets of slow and fast controls but i guess that would just make it even more confusing / finger twisting.

But the real problem is: when the mouse is captured by window focus it drops in application control and seems you drifted to another scenario (or portal to another dimension). So the easy way to get out is closing that window but unfortunately, you can't reach using the "close icon" with the "key"mouse.
At the end, the last resource is to exit the application at all. I couldn't find another way yet.

xdotool can also focus/activate windows and while i don't see any option to simply unfocus everything maybe focusing the WMs root window could have a similar effect. At least it could be worth an experiment if that would be the sole show stopper.

Anyway, it destroys the 'easiness goal' of using a window manager, making it over in a very nice "window 'torture chamber' manager". :p

I know what you mean. While it sure works it's really more of a last resort kind of thing.

But for my information, which wm are you using with that configuration?

Like i said above, i am really just using the mousewheel emulation. I came up with it when i had to deal with mouse where the mousewheel was broken but it's also kinda useful when dealing with touchpads i think (i am not a big fan of 2 finger acrobatics). My go to window manager is IceWM. So nothing really special regarding input handling / window arrangement. Just a boring old stacking window manager.
 
Perhaps you need the window manager to "eat" the keypress instead so it doesn't forward it through to the application.
A couple of solutions that might work:

1) Add some fake Twm bindings (i.e for the left)

Code:
"Left"    = m    : all        : f.nop

Note: I think "Super" (the windows key?) is mod4 or just 4 in Twm. However it might not be and you might not be able to map it. In that case, perhaps alter your xdotool bindings to use the meta / alt key instead (to match the window manager absorbing the key)

2) Perhaps consider using another light window manager that supports the moving of the mouse internally (Fvwm, Cwm)

For example Fvwm it would be:


Note: You will still need the xdotool to "click" the mouse. I don't think Fvwm actually provides that.
 
I'm always amused when you "minimal WM" freaks are willing to invest maximum time & effort to set up enhanced configuration to resemble the same effects that are standard in a full-blown GUI... ;) On KDE, I click on the configuration interface & within 5 seconds, I set up to move the mouse via keyboard with a few mouse clicks
Screenshot_20200904_140255.png
 
On KDE, I click on the configuration interface & within 5 seconds, I set up to move the mouse via keyboard with a few mouse clicks

Don't worry. You're "solution" will be broken next week in an update ;)

Actually, my guess is that the accessibility stuff in FreeBSD's KDE was never ported. So perhaps tick that box and it will either come up with a dbus or udev error, or simply nothing will happen.

In my experience "Fat DE" users often have so much broken stuff installed that the actual working functionality is barely that of a minimal window manager anyway. Unlike minimal setups (where it is a one off configuration), you will be fighting with KDE almost every time a new major version comes out.

Off topic:
Christ, is KDE still doing that "metal" Mac OS X (10.4) look? That seems pretty dated now doesn't it? And why does your mouse cursor look like it is from a "space game"? Is that still the default? I thought KDE looked more modern than that these days. No complaints from me, I love retro stuff! I am just surprised with all of the focus of Linux these days being on glitz and trendy GUI stuff, this is the current state of the art?
KDE has certainly got more of my respect for barely changing for the last 10 years. XD
Or is the FreeBSD port just out of date?
 
Christ, is KDE still doing that "metal" Mac OS X (10.4) look? That seems pretty dated now doesn't it? And why does your mouse cursor look like it is from a "space game"? Is that still the default? I thought KDE looked more modern than that these days. No complaints from me, I love retro stuff! I am just surprised with all of the focus of Linux these days being on glitz and trendy GUI stuff, this is the current state of the art?
No, the default design Breeze looks like Windoze, which I can not stand for obvious reasons ;) Thus I changed the default global design from Breeze to Oxygen, Plasma design from Breeze to Air & application style & window decorations from Breeze to Oxygen. BTW, only a few mouse clicks that took me ~10 sec.
Until a few years, no update broke my KDE setup, instead the last few updates fixed a few bugs that bugged me ;)
 
Actually, my guess is that the accessibility stuff in FreeBSD's KDE was never ported. So perhaps tick that box and it will either come up with a dbus or udev error, or simply nothing will happen.
Works perfectly, although the defaults are weak (for me), I changed the repeat delay to 1 ms, pointer acceleration to 7500 ms, max. velocity to 1500 px/sec & acceleration profile to 1000. Maybe the defaults are fine for the target users (people with spasticus or gout). Plus, it does not work with the arrow keys on my laptop's keyboard, but only with a numerical pad, which my laptop doesn't have. I tested with an external keyboard. Should be easy to fix or patch though.
In my experience "Fat DE" users often have so much broken stuff installed that the actual working functionality is barely that of a minimal window manager anyway. Unlike minimal setups (where it is a one off configuration), you will be fighting with KDE almost every time a new major version comes out.
No. Maybe you're refering to Gtk-based DEs? Gtk is broken by design. E.g. they're ignoring modern displays high resolutions intentionally.
 
Plus, it does not work with the arrow keys on my laptop's keyboard, but only with a numerical pad, which my laptop doesn't have. I tested with an external keyboard. Should be easy to fix or patch though.

Hmm, I am glad it works to an extent (I always think computing must absolutely suck if you are disabled) but this does kinda reduces its usefulness on most laptops (rarely do they have numpads). But what about wasd keys? It just doesn't seem flexible enough compared to the ad-hoc approach. DEs rarely do seem flexible enough which is why many people still prefer WMs.

they're ignoring modern displays high resolutions intentionally.
In all fairness, most platforms "support" high resolutions simply by making things bigger. This seems to completely waste the whole point of high resolutions. Instead they just use more power and are more resource intensive for no gain. To truely support high res, a complete redesign of how we think about GUI paradigms is in order.
 
Back
Top