Why mkdesktop works the way it does (Continued from "Re: FreeBSD (GhostBSD) Question?")

Manish Jain bourne.identity at hotmail.com
Wed Jul 22 19:40:39 UTC 2020

On 2020-07-22 22:35, Pete Wright wrote:
> Okay, so I bit. Manish, I started using your 'mkdesktop', but I stopped. 
> No matter what I do, it wants to give me all kinds of what the Doze 
> world calls 'accessories'.

Hi Pete,

I am sorry that you felt disappointed with your first blush with 
mkdesktop. As the writer, I think I can offer reasonable defence for the 

First of all, as noted in `man mkdesktop`, mkdesktop is best suited for 
running right after you have installed FreeBSD. In other words, it picks 
up where the FreeBSD installation signs off, and continues further to 
get a whole desktop on the user's computer - with pretty much the same 
interface as the FreeBSD installer itself.

It would be useless to write a program to simply install a desktop 
meta-package. If installing the meta-package was all that was needed, 
the user could simply type in `pkg install gnome3` (or some such 
command). Does it make sense for the user to run `mkdesktop gnome3` when 
he/she could equally well run `pkg install gnome3` ?

The idea behind mkdesktop is to do everything possible for the user such 
that he gets not just the desktop, but also the entire, correct system 
configuration in one shot. This has to be done for two distinct kinds of 
people :

1) The seasoned FreeBSD campaigner
2) The FreeBSD first-timer

For such an application, the very first thing to be ascertained is the 
GPU type (so that kld's are set to be loaded as required). That is what 
my program does. (If the user does not want graphics configured, he/she 
can use 'Other' - I will now change that label to 'Other/Ignore').

The second step mkdesktop takes is a deliberate sidestep: forcing the 
toor account to be set up properly. First timers definitely never know 
about the toor user account and why it is better to su not to root but 
to toor. Seasoned campaigners often forget this facility and merrily 
switch root's login shell to bash/zsh instead.

The third step is the actual desktop installation, which I do not think 
you would have a problem with.

Fourth, I give the user a chance to add a normal user account, which 
again should be agreeable considering that only a normal user can login 
with the X display manager.

The final (and perhaps most debatable) stage is the fifth, where the 
user is prompted for Wine and Linuxulator. Wine is prompted for as a 
nicety that targets first-timers who might like to have their Windows 
programs running under FreeBSD readily. Linuxulator is prompted for 
because, at the finish, system files are going to be configured anyway - 
and the configuration will go one way if Linux emulation is needed, and 
another way if not.

You might yet have reasons to disagree with my implementation, but I 
just tried to write the program to make things least painful in the 
context of FreeBSD desktop installation for both kinds of folks.

Maybe - and I do hope so - you will find mkdesktop of more use the next 
time around. As of now, I humbly solicit your feedback on what 
'accessories' you found of greatest bother.

Thank you,
Manish Jain

More information about the freebsd-questions mailing list