Technology Roadmap

Oh interesting.

They are having another crack at a new installer.

So sysinstall had a much longer lifespan than bsdinstall. Perhaps that did ultimately mean it was objectively better?

I really hope they go towards a simpler OpenBSD style installer for their next attempt.
 
bsdinstall is OK, there are worse installers. I think the current iteration of Linux distribution installers are particularly bad, especially Anaconda used by Fedora, which crashes most times I use it but waits until after it starts partitioning my disks to do so... I have used OpenBSD and it is very plain but very functional. As long as your hardware works if you accept the default it is a two minute job. I think bsdinstall is a little more flexible in that regard, but certainly there is room for improvement
 
Comparing them from what I remember (I use both fairly often but installers are often not so memorable ;), I feel that bsdinstall only really offers something considerably more when it comes to UFS vs ZFS in the disk setup stages.

OpenBSD doesn't really have this option so just thrusts you into disklabel -E. However for all other parts of the installer, I really don't see how the TUI dialogs improve it. Perhaps it gives an illusion that it is "easier"?

Though yeah, unlike the mentioned Anaconda, at least it doesn't churn up an X11 or (ugh) Wayland session just to install to disk. Anaconda in text only installs is also weird and feels broken.
 
Yes you would think it would be intimidating but when it works it is just a matter of pressing enter like 7 times haha. A monkey could install OpenBSD.

Does the writer really like Focus Area 3 or it was it meant to be small font like the others :p

It's nice to see a clear direction of where the project is going. I for one am quite happy with it.
 
OpenBSD doesn't really have this option so just thrusts you into disklabel -E. However for all other parts of the installer, I really don't see how the TUI dialogs improve it. Perhaps it gives an illusion that it is "easier"?

I like the idea of TUI front-end, during the FreeBSD installation, and that's just because I was an avid NC 5.0 user. NC5 was great F2, F3 ...!

But I prefer the way OpenBSD is doing this, i.e. separate partitions and small "/", install script, "install.site" and "upgrade.site".
I've heard from some Arch users whimpering, that OpenBSD way of installation is too much.

Using the "fdisk -e" and "disklabel -E" has its own merit though. If you don't know what you are doing, you'll end up with wrong partitioning scheme, and filling-up you're "/". That's a good reminder that you need to RTFM.
 
… The installer is actually so basic (which is a good thing) …

For a significant proportion of end users: too basic.

From the Roadmap:

1632572450512.png


I never saw the proof of concept, but I conceptualise an installer that offers greater ease of use:
  1. during installation
  2. for the installed product
– so, for (1), <https://forums.FreeBSD.org/threads/what-is-your-favorite-text-editor.64315/post-533132>
 
grahamperrin Were you using FreeBSD before we had bsdinstall? I don't suppose you recall the original official installer called sysinstall. This one was more complex, it provided a number of package bases (including when X11 was a base set package) and allowed you to drill into individual packages.

That was deemed "too needlessly complex" so bsdinstall was made. The arguments given was that a known base was a good idea and any customizations should be made via build scripts.

So basically innovation has stalled and we are simply going to go around in a circle now forever. Perhaps they should simply revert sysinstall back and give an option between the two? No need to make anything new; we already had this 10 years ago.

16fig01.jpg
distributions.png
man-si1-201205.png


I personally hope it never goes back to this. Deterministic installs are much easier to diagnose issues. As I recall, most people just specified an absolute minimal base install, ignored the other menus and then installed additions later on after first boot. This is basically what the bsdinstall workflow is.
 
… Were you using FreeBSD before we had bsdinstall? …

I don't know.

I do recall experimenting with FreeBSD, long ago, on an iMac G5, I found things unreasonably difficult. Generally unusable. The difficulties were not with the installer. The FreeBSD Handbook was way too dense, walls of text. I don't doubt that the texts made sense to people who were already familiar with FreeBSD, however to me: the walls were barriers to understanding problems and so, I simply abandoned FreeBSD. Abandoned for years.

My eventual switch from Mac OS X was to PC-BSD.

Deterministic installs are much easier to diagnose issues.

I can't imagine a preference for ee making diagnosis difficult.
 
Last edited:
I can't imagine a preference for ee making diagnosis difficult.
Haha, no. ee is tiny like (n)vi so certainly no problem in base. What I do think would be frustrating is if *sometimes* it is installed, *sometimes* (n)vi is missing, etc. Just because some guy decided one way or the other when he installed FreeBSD. This is the part that should be deterministic. A proper concept of a base install rather than an ever changing random selection of packages.
 
… if *sometimes* it is installed, *sometimes* (n)vi is missing, …

I'm not aware of any suggestion to remove vi from base.

Problems with accidental/unexpected appearance of vi were acknowledged more than twenty years ago. We should do better.

Avoid putting end users in accident-prone situations. A single minor enhancement to an installer should achieve this. We can do better.

A single enhancement. Neither random, nor ever-changing. Please, let's not conflate the issue.
 
I don't know.

I do recall experimenting with FreeBSD, long ago, on an iMac G5, I found things unreasonably difficult. Generally unusable. The difficulties were not with the installer. The FreeBSD Handbook was way too dense, walls of text. I don't doubt that the texts made sense to people who were already familiar with FreeBSD, however to me: the walls were barriers to understanding problems and so, I simply abandoned FreeBSD. Abandoned for years.

My eventual switch from Mac OS X was to PC-BSD.



I can't imagine a preference for ee making diagnosis difficult.
Yeah the Handbook is incredibly detailed. Perhaps too detailed for a new user! I do think it would be good to have a 'guide for new people' just focusing on the basics coming from other operating systems*. As for the default editor the installer already asks for a default shell (sh, csh, tcsh). It would just be a case of adding an additional prompt asking which editor to use (vi, ee)? Of all the difficulties FreeBSD is facing I would think that would be the least of the issues!

In my opinion,

The keyboard layout seems clunky, on OpenBSD you type ? and it gives you a list of keymaps with a number for each one, there is no need for long scrolling and you can always drop into a shell to test the input.

I find the rest of the installer pretty easy to use? So long as one follows the default it is difficult to mess it up, the issue is when something goes wrong. I had a complaint about something to do with GEOM a while back when trying to install a few years ago out of curiosity.

However considering 'dialog' is GNU licensed, it might be an idea to drop it entirely and just use an installer that works with shell? The dialog interface is not particularly helpful really, it would still be needed by ports so could be pulled in then.

I'm not really a fan of removing things for the sake of it. A base system should be small yes, but functional, and whether that has one or three editors seems a little bit irrelevant in the grand scheme of things. A better question is, do they work?

I'm generally of the opinion that the shell is not a dirty thing and that there is not really any need for dialog or graphical interfaces, if installation is simple it will be easy to do with or without the shell, as it is on OpenBSD.

* Considering this idea further you could perhaps have a section for Windows, Mac OS X, and Linux, the latter would have less focus on the shell than the others since there would be assumed prior knowledge, the former two could focus on getting a functional desktop system, the latter on the subtle differences, and then the Handbook could be used for the authoritative exposition of detail on cool things like Jails.
 
I'm not aware of any suggestion to remove vi from base.
No me neither.

However if users are able to rice about with base during installation, they will make a mess and start removing things that will later confuse them.

Better to not give them the choice in all fairness. Makes it easier for beginners *and* those helping them.
 
Thanks, I might try the installer for OpenBSD in a virtual machine.

… a supplementary 'guide for new people' just focusing on the basics coming from other operating systems. …

The FreeBSD Project | For People New to Both FreeBSD and UNIX®
  • undated
  • probably 1997
  • "… vi … sometimes you will inadvertently issue a command that will do something you do not expect. … when it gives you trouble …" – more than twenty-four years ago.
The FreeBSD Project | FreeBSD Quickstart Guide for Linux® Users
… they will make a mess. …

How can a personal preference for ee make a mess?
 
How can a personal preference for ee make a mess?
ee is in base. What if a beginner unselects both ee and vi during installation (because both are "old fashioned") and then something like visudo or git commit fails because they broke base?

This is more what I was getting at. This concept of a "make your own OS" during the install is not ideal. I can foresee problems with it.
 
… unselects both ee and vi during installation …

That's entirely different from the choice that I suggested.

Echoing <https://forums.FreeBSD.org/threads/64315/post-533212>:


To avoid confusion

I'd like the installer to ask the person installing whether the installed system should default to:
  • ee (easy editor); or
  • vi.


Radio buttons – either, or. Impossible to deselect both items. Allow the user to choose a default.

No suggestion to remove vi from base.

No suggestion to allow installation without vi.
 
I'd like the installer to ask the person installing whether the installed system should default to:
  • ee (easy editor); or
  • vi.
A whole question just for this (trivial) list of editors? Seems this is almost certainly a per user choice too. You can see in the default profile scripts the EDITOR variable is set.

I think Debian tried by symlinking a "sensible-editor" program but that was pretty weird.

The question is, would visudo or git even respect your choice? Every port like this would need to be modified. It is probably also a reason why Microsoft Windows installer doesn't give you the choice between notepad and edit during the installer.
 
  • Like
Reactions: mer
visudo certainly does.
No it doesn't. It just uses the EDITOR variable. Not some globally set editor preference. The closest you can probably get is setting the default dot.profile skel file.

Please, let's not conflate the issue.
Don't see it as conflating the issue, see it as prior research. No OS installer currently asks for preferred editor. You don't want to scare off users asking them pointless questions. You might need to have a look around and try some more installers out to see what works and what doesn't (certainly the OpenBSD one is a good example).

For example, what some other platforms do is ask you what editor you want to use on first invocation. It does get a bit weird for semi-interactive scripts but does give each user the option.
 
… how many editors …

I'm aware of only three in base:

… package installation … support …

If a person chooses to install a package – separate from (after installation of) base – there'll be:
  • a maintainer, or no maintainer
  • ideally, a home page with an explicit route to support.
For example,

pkg rquery '%m %w' geany

– and FreshPorts is our friend, e.g. <https://www.freshports.org/devel/geany/>.
 
Back
Top