How to build your own BSD distribution?

Hello. I'm interested in building a BSD distribution. What tools are best to use? I have experience in compiling Linux distributions. :)
 
Is there a prospect of creating a BSD distribution? I want to do a experimental project "BSD for home use".
 
I strongly suggest to first start actually using FreeBSD as-is.
If one were to build FreeBSD "from scratch" and use that build for making a distribution of it, how would the outcome be any different than doing what you have suggested by using an existing FreeBSD build for making a distribution? 🤔
 
Build freebsd from source to gain some insights
Setup a buildserver/updateserver to make your release (there are resources in this forum)
Setup a dev env where the freebsd codebase is linked to the buildsystem.
Hack, build, have fun.
 
Dear OP, Freebsd is a great operating system, it is free, and you get support on this forum.

[Rhetorical]What is this misapprehension you have about making a 'distribution'? [/Rhetorical]

There is no money in it. No glory.

One of the great things about the Freebsd world (as opposed to Linux), there is no particular need for distributions.
 
I have experience in compiling Linux distributions.
You are confused. Linux distributions are based on the Linux kernel which then takes third party applications and software added on to create an operating system. FreeBSD already is a complete operating system and does not need third party applications to become one.
I want to do a experimental project "BSD for home use".
The way you make that is you take FreeBSD, already a complete operating system, and install the software you want to create something for the home user from the ports already available for FreeBSD.
 
I suppose making your own distribution means building the kernel and world ground up with your tweaks, and most likely, automating it for continuous development and integration in your infrastructure. All of the above point you at the direction.
 
What's a "distribution" in your context?

This word can mean a lot of things. In a software context, a "distribution" could be any format for distributing software, like e.g. some binary package, or even a tarball as a "source distribution".

As others already stated, it seems you have "Linux distributions" in mind. Those are distributions of a collection of software that's somewhat integrated to work well together. Well, FreeBSD package repositories are a distribution (one of third-party software to work on FreeBSD) in that sense, and the ports are the technical foundation to create it. There are tools to create your own package repositories from ports using different build-time options, so in some sense, you already created your own distribution doing that. Of course, that's NOT a "BSD distribution", just one of software for FreeBSD.

You might be confused by the name BSD (Berkeley Software Distribution) containing the word distribution. That's just for historic reasons, BSD started as an ever-growing collection of software (distributed as source code) improving an existing Unix system. But eventually, it developed into a stand-alone operating system.

Linux is kind of an alien because it is not an OS, just a kernel, and typically combined with some GNU software (there are other options, see e.g. Android...) to form a complete OS. As a consequence, you can't use it without a distribution containing at least this software. Another consequence is there's never a clear definition of what is part of the OS and what isn't, these Linux distributions just place all the software they have to offer in huge repos.

This model just doesn't match for a BSD system. In FreeBSD's src repository, you have the whole OS. There are quite some build-time options as well, so you could create a custom build, and even create installation media from it (everything needed for that is part of the system) ... distributing the result would be, kind of, a "BSD distribution". Once you start modifying actual code, the term "fork" would be more appropriate.

After understanding all this, what exactly are you trying to achieve?
 
Welcome to FreeBSD Forums.

… experimental project "BSD for home use".

Guides | FreeBSD Foundation includes an introduction; a Guide to FreeBSD Desktop Distributions.

Comparable to helloSystem: ravynOS – Finesse of macOS. Freedom of FreeBSD. I assume that Airyx became ravynOS.

Beyond the well-known distributions, discussions in FreeBSD include:
  • CultBSD by christhegeek
  • something by … I remember his face here, but can't remember his name at the moment.
In some of those spaces, you'll gain a sense of the diverse approaches to building a home/desktop distro that's based on FreeBSD.

Some of this 2021 topic might interest you, don't be dissuaded by negativity:

 
Ah, yeah, he's youtubing about that these days. ;) Should we point ziomario in direction of Samuel Venable ? (Thread about-to-plan-to-create-a-video-series-about-freebsd-to-use-as-a-desktop.85420)

Now, the rest of the post is my contribution to the thread: FWIW, I'm doing a homebrew project with Poudriere, because I want packages compiled with my own options, and be upgradeable like on a phone. The way I see it, KDE should be upgradeable independently of everything else.

Thing is, it's not easy to get others to bandwagon around one person's ideas of what would be convenient, especially geeks like us. Big Tech companies (like Apple and Google) wrote the playbook, and they have the money to get devs to buy in and follow their ideas of what would be convenient. Big Tech has org structure reinforced by money. Linux and BSD camps don't have that kind of clout. This is why the spin I put on my project is a personal homebrew project, rather than yet another 'Distribution' project on the Internet. I still take advantage of other people's expertise - users on these Forums helped me solve many technical issues along the way.

Just getting a 'Distribution' project going - that takes a LOT of resources - renting servers on the Internet for building, hosting packages, forums, policing all that - beyond OP even clearing the technical hurdles of getting things to work the way they like.

Having your own project is nice. Learning experiences are good to have. But re-framing the approach to the whole enchilada (or at least being willing to do that) will get better results.
 
One of the great things about the Freebsd world (as opposed to Linux), there is no particular need for distributions.

Dear,it's not so bad to have a lot of linux distributions. Even if they aren't a lot. There are a lot of derivates,yes. But in my vision of things,multipolarity rhymes with diversity that rhymes with freedom. And since the derivatives are many but every one belongs only to one of the 4 larger groups (Debian,Redhat,Arch,Suse) there is not so much fragmentation, to tell the truth.
 
I'm evaluating these days which road to take. After having read all your comments I felt more intrigued by doing some scripts to visually automate all the various tasks for the management of the OS than doing a collection of videos for youtube.
I think this is a pretty sane approach here.
 
I think this is a pretty sane approach here.

I know,but if I do something like this,I should say bye to money. Even if I was able to create a large collection of scripts,I suspect that it will be not easy to earn money from their selling.
 
Back
Top