# I want to make an OS based on FreeBSD.



## Apyon_l (May 2, 2021)

I'm a student in Japan, and I'd like to create a FreeBSD-based distribution. I'm planning to use KDE-plasma for the desktop environment, and I'd like to be able to use Japanese input from the beginning.
(I'm using online language translation.)


----------



## astyle (May 3, 2021)

I'd say feel free to roll your own collection to install on your own hardware, but my personal opinion would be to refrain from launching one more distribution project. There's plenty of those already. If you look on Distrowatch.com, you'll find a Linux distro that has been made for the Japanese market. And it's rather easy to add support for Japanese/Chinese/Korean input after installation. Most of those distros use the same source code to accomplish that anyway.

The reason I'm suggesting to refrain from launching anything on the Internet - it's next to impossible to maintain. You'd need money to rent server space/bandwidth in  a datacenter, money for a domain name, you gotta have forums, issue trackers, and a process for releases, and a lot of other details I'm not even mentioning here. FreeBSD has the support of an entire department at a major university (B in FreeBSD stands for Berkeley) that received a truckload of money for R&D. 

Even major projects like Xorg have a hard time staying afloat (See this link: https://tech.slashdot.org/story/20/10/25/1523253/is-xorg-server-abandonware). 

Nothing wrong with learning a bit about putting together a system that works for you, and maybe helping a few other people do the same, but think before you act... or say, for that matter.


----------



## Alain De Vos (May 3, 2021)

Everything is impossible until it is done. But you must have something specific in mind.
One can not make a new distro because of a color of background, or special keyboard character.


----------



## astyle (May 3, 2021)

Alain De Vos said:


> Everything is impossible until it is done. But you must have something specific in mind.
> One can not make a new distro because of a color of background, or special keyboard character.


Alain - the student did clearly state that s/he wanted to enable japanese input.


----------



## Alain De Vos (May 3, 2021)

pkg search font | grep -i "japa"

```
ghostscript7-jpnfont-7.07_13   Japanese font support for Ghostscript 7.x
ja-alias-fonts-1.0_12          Meta-port which setups Japanese fonts
ja-font-aozoramincho-0.1_2     Aozora Mincho Japanese TrueType fonts
ja-font-cica-5.0.2             Cica Japanese monospaced fonts for programming
ja-font-genjyuugothic-20150607_2 GenJyuuGothic Japanese TrueType fonts
ja-font-genshingothic-20150607_3 GenShinGothic Japanese TrueType fonts
ja-font-ipa-00303_7            IPA Japanese fonts
ja-font-ipa-uigothic-00203_5   IPA Japanese fonts, UIGothic
ja-font-ipaex-00401            IPAex Japanese fonts
ja-font-ipamjm-00601           IPAmj Mincho Japanese fonts
ja-font-jisx0213-20040425_8    Japanese jisx0213 fonts
ja-font-kochi-20030809_6       Kochi Japanese TrueType font
ja-font-koruri-20180915        Koruri Japanese TrueType fonts
ja-font-marumoji-1.0_11        Japanese marumoji fonts
ja-font-mgenplus-20150602_1    Mgen+ Japanese TrueType fonts
ja-font-migmix-1.0.20130617_5  Mixed Japanese font with IPA Gothic and M-plus outline
ja-font-migu-1.0.20130617_5    Another Japanese font set based on MigMix
ja-font-mikachan-9.1           Handwritten Japanese TrueType fonts by Mika-chan
ja-font-mona-ipa-1.0.8_8       IPA Japanese TrueType fonts with Mona font
ja-font-motoya-al-0.0.20100921_6 Free Japanese fonts by MOTOYA
ja-font-mplus-ipa-1.0.20060520.p1_6 Mixed Japanese font with IPA, M-plus outline, and Bitstream Vera
ja-font-nasu-20141215_3        Nasu Japanese TrueType fonts
ja-font-rounded-mgenplus-20150602_1 Rounded Mgen+ Japanese TrueType fonts
ja-font-sazanami-20040629_7    Sazanami Japanese TrueType fonts
ja-font-shinonome-0.9.11.p1_7  Shinonome Japanese fonts, 12/14/16 dots
ja-font-std-0.0.20191230       Japanese Standard Fonts
ja-font-takao-003.02.01_6      Improved IPA Japanese fonts
ja-font-ume-0.0.670            Ume Japanese TrueType fonts
ja-font-vlgothic-20200720      VLGothic Japanese TrueType fonts
ja-ngraph-fonts-1.0_3          Japanese Font Setup for math/ngraph
ja-xpdf-jafont-4.02            Japanese font support for xpdf
root@aladin:/home/x #
```


----------



## drhowarddrfine (May 3, 2021)

> I want to make an OS based on FreeBSD.


FreeBSD is already an OS. You can't make another OS based on something that's already an OS. The only thing you can do is package FreeBSD with ports and packages that already exist or that you create.

To use FreeBSD with Japanese input, I presume this is already possible with--as I said--already available packages. I also presume it can be done better.


----------



## astyle (May 3, 2021)

Alain De Vos said:


> pkg search font | grep -i "japa"
> 
> ```
> ghostscript7-jpnfont-7.07_13   Japanese font support for Ghostscript 7.x
> ...



Those projects are what I was referring to when I said that most distros use their source code anyway. It can be a bit of work to get it to work right, and you'd have to know the language to know if they do work right.


----------



## astyle (May 3, 2021)

drhowarddrfine said:


> FreeBSD is already an OS. You can't make another OS based on something that's already an OS. The only thing you can do is package FreeBSD with ports and packages that already exist or that you create.


it's like taking KDE and Ubuntu and calling it Kubuntu... that kind of thing has been done before. Proliferation of derivatives is a bit problematic, IMHO.


----------



## shkhln (May 3, 2021)

astyle said:


> FreeBSD has the support of an entire department at a major university (B in FreeBSD stands for Berkeley)


That was… a while ago.



astyle said:


> that received a truckload of money for R&D.


?


----------



## astyle (May 3, 2021)

drhowarddrfine said:


> FreeBSD is already an OS. You can't make another OS based on something that's already an OS. The only thing you can do is package FreeBSD with ports and packages that already exist or that you create.
> 
> To use FreeBSD with Japanese input, I presume this is already possible with--as I said--already available packages. I also presume it can be done better.


Yes you can make another OS based on something that's already an OS - Just get ahold of the kernel sources, tinker with them, replace modules/components as you see fit. If you know how to do it, it's even possible to replace the default /bin/ee editor or disable stuff you don't need (like the /bin/ifconfig, j/k) or add in Orange Filesystem, or the Calamares installer or even make the whole thing available on a Snapdragon chipset... you can do a truckload of things if you know how to do it or have the patience to learn how to do it.


----------



## ralphbsz (May 3, 2021)

astyle said:


> FreeBSD has the support of an entire department at a major university (B in FreeBSD stands for Berkeley) that received a truckload of money for R&D.


Shkhln already corrected that: The group at Berkeley that created BSD Unix existed from ~1980 to 1995. DARPA funding for it had been slowly drying up, and completely ended in 1995. It had never been large; I think at its peak, CSRG had about 5-10 staff and a dozen or two dozen grad students. Compare that to Linux: Even pre-RedHat, IBM had several thousand engineers working in its "Linux Technology Center", with similar numbers at Oracle, RedHat, Intel, and so on. I remember well when Berkeley CSRG was completely shut down, because several friends of mine suddenly had to look for jobs, but fortunately LBL had just received a large windfall from the DoE, so a few people from CS on campus moved up to the lab. That was the same time that I left academia myself.

Today FreeBSD is supported by a small foundation, which receives a small amount of funding from donors, typically large computer users (Amazon, Apple, Facebook, Google,  Juniper, Microsoft, NetApp, NetFlix, VMWare). I think it runs on an annual budget of a few M$ per year (compare that to the cost of a software engineer, which is typically over 1/4M$ per year).


----------



## drhowarddrfine (May 3, 2021)

astyle Yes. I thought about that in the context of him wanting to have Japanese input but I'm not sure what you're talking about is what he meant.


----------



## ralphbsz (May 3, 2021)

Apyon_l said:


> I'm a student in Japan, and I'd like to create a FreeBSD-based distribution.



Somewhere we should have a good summary about "distributions". Distributions really is a Linux term, and it comes from the fact that Linux is not an operating system, it is only a kernel: the thing called "Linux" is that which is trademarked by Linus Torvalds, and which you can download from kernel.org. For all but hardcore embedded system developers, this is not a thing you can actually run and use. What people really use are distributions, for example RHEL, Fedora, Debian, or SUSE. A distribution takes the Linux kernel (often customized or modifies it), then packages it together with necessary system components (such as an init system, shells, utilities such as ls and rm), useful software (as an example a web browser, word processor, or Mathematica), and usually a desktop or graphical user interface (typically XWindows, KDE or Gnome). It is really hard to draw the line of what parts of that are an "operating system" and what isn't. This allows bringing up a computer (install and boot), logging in, and getting work done. Depending on whether the distribution or installation contains a graphical desktop or not, you work either at the CLI or with a GUI.

FreeBSD (and the other BSDs) works completely different. The base package you get already contains a full function operating system, which brings you all the way to a full OS install which can be booted and used at the CLI. From there, you can install ports or packages (they are mostly the same thing, just installed in a different fashion), which can for example be useful software tools (for example LaTeX for typesetting papers), servers (such as a web or file servers, Apache or Samba), or a graphical desktop. There is no "distribution" in the usual sense here; people just install those packages/ports they need and want.

What you are referring to as a "distribution" is: You are trying to create a "package" (note: I'm using the term here in a different meaning than the standard meaning of "package" in the FreeBSD world, which is a .pkg file), where you bundle the FreeBSD base OS installer with certain packages you have chosen. One such project is GhostBSD, which bundles the FreeBSD base with a GUI. There are also other such derivatives, for example pfSense (a firewall appliance), and FreeNAS (a file server appliance, although they recently moved from using a BSD base to Linux). One thing you could do is, as astyle said above, first create a FreeBSD installation the way you like it, then write down the steps you took. Just publishing those steps as an easy-to-follow HowTo would be a good step.


----------



## rootbert (May 3, 2021)

while I do not want to discourage you, maybe a simple script (shell script or ansible or <whatever>) for configuring a FreeBSD installation is far less work and the end result is the same/very similar


----------



## Apyon_l (May 4, 2021)

I simply want to make it, and I want to do it personally.


----------



## SirDice (May 4, 2021)

I suggest you start by using FreeBSD as-is. Because it's clear you don't have enough understanding of how the system is actually put together. Once you have some experience under your belt you can start thinking about how to customize it.


----------



## Misirca (May 4, 2021)

Apyon_l said:


> I simply want to make it, and I want to do it personally.



Well then you could start by customizing a FreeBSD installation media.

You can translate the bsdinstall scripts into japanese, look here:








						freebsd/usr.sbin/bsdinstall at master · lattera/freebsd
					

FreeBSD's source with custom patches. Contribute to lattera/freebsd development by creating an account on GitHub.




					github.com
				




Then chain the installer with a custom script to install a fully fonctional desktop environment, like here:








						GitHub - broozar/installDesktopFreeBSD: FreeBSD desktop installer
					

FreeBSD desktop installer. Contribute to broozar/installDesktopFreeBSD development by creating an account on GitHub.




					github.com
				




This will be a huge task.

Best luck.


----------



## SirDice (May 4, 2021)

Documentation project probably could use some help with Japanese translations as well: 









						FreeBSD Documentation Project: Translations
					

FreeBSD is an operating system used to power modern servers, desktops, and embedded platforms.




					www.freebsd.org
				



http://www.jp.freebsd.org/doc-jp/


----------



## astyle (May 4, 2021)

I'm getting the impression that the automatic translation services that Apyon_l is using - it's not the best. Something is getting lost in translation, including the point we're all trying to make.

I do see people with unrealistic dreams from time to time - About 10 years ago, I talked a teenager from India out of trying to write a flight simulator from scratch. Sure, the kid knew a bit of Java, and  could probably do a Towers of Hanoi puzzle game, but a flight simulator is a whole 'nother animal. Too unwieldy for a single person to handle. Feedback from the kid suggested to me that I succeeded in that.


----------



## shkhln (May 4, 2021)

On the contrary, this is a suspiciously good result for an automatic translation.


----------



## shkhln (May 4, 2021)

shkhln said:


> On the contrary, this is a suspiciously good result for an automatic translation.


Here's an excerpt from https://ja.wikipedia.org/wiki/Freebsd translated with https://translate.google.com for comparison (emphasis mine):


> It is an OS that can be said to be the _mainstream of UNIX_ in terms of genealogy, and has a track record of being used as a server for Hotmail etc. in the past, but nowadays most of it has been replaced by Linux. Regarding the current usage situation, the _share of the desktop OS_ is 0.01% or less and cannot be measured [4], and the _share of the server OS_ is about 1% [5], which can be said to be a bubble, and the severe situation continues. .. This has led to a decline in both quality and quantity of developers, and it has been pointed out that many security problems have been left unattended, and security experts call it a "dying OS". [6] We are in a situation where even the significance of its existence and future continuity are questioned.


----------



## astyle (May 4, 2021)

shkhln : Even if it translates the words correctly, and gets the grammar rules correctly, something is not getting through to the student. I personally would want to encourage the student to enable Japanese input on a stock FreeBSD install, and go around showing people how easy it is. Just start with that, and then see where it leads.

As for the automatic translation - the English output of that ja.wikipedia.org page has quite a few things I'd pick at: Like 'Footnote' instead of 'References'. Sure, there are differences between the languages that are difficult to translate, let alone teach a computer how to pick the correct translation based on context. Yeah, it's getting better and better with time, and it's a good opportunity to point the student down that road. 

Just to lighten this up, I remember seeing a scene in 'Middle Management Blues' anime where the computer mangled somebody's typing - and the kanji was rendered incorrectly, leading to an embarrassing spelling error. And that was on a Windows machine.


----------



## decuser (May 4, 2021)

I also wonder if the OP really understands just how easy it is to install KDE on stock FreeBSD. I run Plasma and it's pretty easy to install on my base FreeBSD:


```
sudo bectl create kde-install

sudo pkg install -y xorg x11/kde5 sddm plasma5-sddm-kcm

# modify rc.conf to autostart sddm (for kde)
cat << 'EOF' >> /etc/rc.conf
dbus_enable="YES"
hald_enable="YES"
sddm_enable="YES"
EOF

# modify xinit.rc for startx type starts
cat << "EOF" >.xinitrc 
exec /usr/local/bin/startplasma-x11
EOF

sudo reboot

# check kde's working  ok (remember to not select a Wayland Session)

sudo bectl destroy -o kde-install
```


----------



## Jose (May 5, 2021)

decuser said:


> ...
> hald_enable="YES"
> ...


Hald has been dead for some time now.


----------



## dd_ff_bb (May 5, 2021)

By the way i'm not sure if anybody noticed but actually he didn't ask any questions. He just made a statement. 

So in my opinion, all we can say is "good luck and let us know when its completed" 

Also next time you can write your statements in your profile post/status instead of forum posts which is generally used for questions.


----------



## astyle (May 5, 2021)

dd_ff_bb said:


> By the way i'm not sure if anybody noticed but actually he didn't ask any questions. He just made a statement.
> 
> So in my opinion, all we can say is "good luck and let us know when its completed"
> 
> Also next time you can write your statements in your profile post/status instead of forum posts which is generally used for questions.


Good observation about not asking questions. My thinking is,  we probably did the right thing to shower the OP with useful info in response to his statements. Actually asking questions can be surprisingly difficult. From get-go, you gotta clearly describe your situation/goal, what you're doing about it, and THEN ask for help.  OP described the situation/goal, but said nothing about what's being done. Maybe OP is just looking for ideas on how to go about achieving the goal, but that's just my assumption. 

Besides, we don't visit other users' profile pages often enough to have threads dedicated to their status statements. I think that starting a thread was a better way to get a response.


----------



## Apyon_l (May 5, 2021)

上手く翻訳されていなかった
日本語だと質問の意図で聞いたつもりでした
ISOイメージを作るとなるとどうすれば作れますかね
Mod: google says "Was not translated well
I thought I heard it in Japanese with the intention of asking a question
How can I make an ISO image?"


----------



## astyle (May 5, 2021)

Apyon_l said:


> 上手く翻訳されていなかった
> 日本語だと質問の意図で聞いたつもりでした
> ISOイメージを作るとなるとどうすれば作れますかね
> Mod: google says "Was not translated well
> ...


If you're looking for an ISO image of FreeBSD, there's some premade ones right here: https://download.freebsd.org/ftp/releases/amd64/amd64/ISO-IMAGES/13.0/.  Just look for links that end in ".iso"

And hey, you need to LISTEN to an automatic translation, rather than READ it?


----------



## msplsh (May 5, 2021)

They want to run the release engineering scripts to build an ISO.  Presumably after modifying the source.  This would actually be useful information for people trying to solve this problem...


----------

