# what kind of freebsd image for a usbstick installation on Prozessor: ARM Cortex-A8 @1GHz



## senenmut (Aug 16, 2020)

Hi there ,

I have a computer with a processor: ARM Cortex-A8 @1GHz.

Now I want to make a FreeBSD bootable USBStick.

There are so many images that I don't know which one to choose for that processor ?

Does anyone have an idea?

Kind regards,
SM


----------



## rigoletto@ (Aug 16, 2020)

ARM is far more complicated than that, the ARM ecosystem is an absolute total mess where no one follow the standards but do wherever they want, and yet are very secretive about it. You need to give the exactly computer model to than yet look if that may work or not.

*[EDIT]*

Have a look on the WIKI.


----------



## senenmut (Aug 16, 2020)

@rigoletto,
Thanks for attention.

I have seen that the armv7-A architecture is in this processor.    https://en.wikipedia.org/wiki/ARM_Cortex-A8

The model is :  IGEL Thin Client UD2-LX Multimedia D510C ARM Cortex-A8 1GHz 1GB RAM 2GB Flashspeicher

Flash memory 2GB - no harddrive.
For this reason I want to make a bootable FreeBSD usbstick.   OS on stick.

thanks
SM


----------



## rigoletto@ (Aug 16, 2020)

You may try THIS one[1] but IIRC the changes you make will not be saved after reboot.

[1] you can use dd(1) to create the USB (don't forget to decompress the image).

*[EDIT]*

Hmm. This is arm7, this is just supported at -CURRENT for now. You probably need the -GENERICSD version, but no ideia if will work or not.


----------



## senenmut (Aug 16, 2020)

yeah i will try those options you are mentioning.
theese igel fellers have a special own linux version on their machine preinstalled.
for me i will use this harddrive and cooler free , very lightweight tower as a mobile computer to carry with.
real UNIX OS BSD is more important for me. 
so i can use this machine as a booting machine for freebsd from usbstick.
he he he


----------



## mark_j (Aug 17, 2020)

senenmut said:


> rigoletto,
> thanks for attention.
> 
> i have seen that the armv7-A architecture is in this prozessor.    https://en.wikipedia.org/wiki/ARM_Cortex-A8
> ...


I think that unfortunately FreeBSD is much too specific in its Arm builds. I could suggest looking at NetBSD, but that would be against the rules. 

There is this generic one:


			http://ftp.freebsd.org/pub/FreeBSD/snapshots/arm/armv7/ISO-IMAGES/12.1/FreeBSD-12.1-STABLE-arm-armv7-GENERICSD-20200813-r364184.img.xz


----------



## senenmut (Aug 17, 2020)

thank you UNIX MASTERS.

i will report the rsults.

take a few days.


----------



## mark_j (Aug 17, 2020)

Yes, please report back; good or bad.


----------



## SirDice (Aug 17, 2020)

mark_j said:


> I think that unfortunately FreeBSD is much too specific in its Arm builds.


That's because the entire ARM ecosystem is like that. ARM is not like a 'standard' PC. There are no standard components, a mainboard, a cpu and some additional input/output chipsets. The ARM ecosystem is based around SoC. Everybody builds their own. The CPU itself is not the problem, it's what gets crammed inside the chip to do all the other things that is problematic. A lot of it is closed off, not open to tinkerers like us. And because every SoC is different you have to build different systems for it. 



			arm - FreeBSD Wiki


----------



## mark_j (Aug 17, 2020)

SirDice said:


> That's because the entire ARM ecosystem is like that. ARM is not like a 'standard' PC. There are no standard components, a mainboard, a cpu and some additional input/output chipsets. The ARM ecosystem is based around SoC. Everybody builds their own. The CPU itself is not the problem, it's what gets crammed inside the chip to do all the other things that is problematic. A lot of it is closed off, not open to tinkerers like us. And because every SoC is different you have to build different systems for it.
> 
> 
> 
> arm - FreeBSD Wiki


True, but as I later found and linked into the post, FreeBSD does have a generic build. 
This at least gives the OP a starting point. He can then dig around u-boot for the appropriate Texas Instruments SoC.


----------



## senenmut (Aug 17, 2020)

I have the generic one download ready. Will try both and easy testing in a few days. Relax.
What I try is not to have a smartphone or laptop but instead a mini-tower with mini screen and mini keyboard in the suitcase.
A whole mini-office with no limits in comfort.  All together under 5 kilograms. I will unscew the socket from the monitor for having the plain screen on the table , just underlying a book or etc. Will report this experience with pictures.

A checkout worth it.


----------



## mark_j (Aug 17, 2020)

The problem is you might not even boot it. Take a look at crochet, it might give you ideas on getting the device to boot.








						GitHub - freebsd/crochet: Build FreeBSD images for RaspberryPi, BeagleBone, PandaBoard, and others.
					

Build FreeBSD images for RaspberryPi, BeagleBone, PandaBoard, and others. - GitHub - freebsd/crochet: Build FreeBSD images for RaspberryPi, BeagleBone, PandaBoard, and others.




					github.com


----------



## SirDice (Aug 17, 2020)

senenmut said:


> What I try is not to have a smartphone or laptop but instead a mini-tower with mini screen and mini keyboard in the suitcase.


It's not limited to smartphones or laptops, it's everything that's based around an ARM processor. There simply isn't a "standard", it's all custom designed and made. Some are definitely more open than others but even a Raspberry Pi isn't completely "open".


----------



## senenmut (Aug 17, 2020)

With supergrub 2 I can boot everything, even "nobody" Terence Hill.
If there are problems I will try a FreeBSD CD-ROM LIVE CD. That will work.
But before that I will connect a little permanent usb-harddisk to the tower and normally install FreeBSD on that.
Never plug out that hard disk, every time connected.
Nobody is the greatest.




_View: https://www.youtube.com/watch?v=7vzmdkPf3-0

if someone says to "clone" a whole OS such like windows or Unix to another environment he has a big mouth. 
There are other Thin Clients except IGEL out there without a installed OS. Also ready for starting a UNIX OS from USB._


----------



## senenmut (Aug 20, 2020)

update , 20.08.20

hi , i have ordered a second thin client brand fujitsu with a AMD Prozessor.
expected on saturday this week.
i will try it first instead of armv7.
have here current freebsd13amd64bit  on USB Stick prepared to boot with supergrub 2 and will report
as soon as the client dispached here by parcel post.

SM


----------



## SirDice (Aug 21, 2020)

senenmut said:


> have here current freebsd13amd64bit on USB Stick


Topics about unsupported FreeBSD versions


----------



## senenmut (Aug 22, 2020)

thank you SirDice,
thintower maybe today delivered here.
i will run only the original UNIX  BSD , nothing else.    GNU go away.
version 13 current and give FuryBSD a try.

i know that all comes from freebsd and other derivates are "succing stuff from the origin source" that they have not worked out themselves.
back to the roots. the origin source is the best.

"what OS are your running" ?
"UNIX"
"which UNIX ?"
"the genuine UNIX"


----------



## mark_j (Aug 22, 2020)

SirDice is just pointing out v13 isn't supported as it's bleeding edge. Why don't you use 12.1R?


----------



## senenmut (Aug 22, 2020)

thats right mark_j,

i should use 12.1 version.  but for this AMD Prozessor.
may i ask for the memstick FreeBSD 12.1  amd64 image ?

this one i want to write to a USB STICK and then booting it.

i need the smallest memstick composition for 64bit AMD.   or install the smallest 64bit AMD version.
for computers with low recources. (mobile thinclient)
no harddisk. IF install , then on USB Stick and stay in port - never plugged out.  (only backup)

Kindly Regards
SM


----------



## mark_j (Aug 23, 2020)

senenmut said:


> thats right mark_j,
> 
> i should use 12.1 version.  but for this AMD Prozessor.
> may i ask for the memstick FreeBSD 12.1  amd64 image ?



If I understand you correctly, why not use the memstick of 12.1R AMD64: https://download.freebsd.org/ftp/re.../12.1/FreeBSD-12.1-RELEASE-amd64-memstick.img

If you only want to boot (just to see if it boots), then: https://download.freebsd.org/ftp/re.../FreeBSD-12.1-RELEASE-amd64-mini-memstick.img

The mini-memstick is a live file system, so you can check device discovery etc before doing a proper install.






senenmut said:


> i need the smallest memstick composition for 64bit AMD.   or install the smallest 64bit AMD version.
> for computers with low recources. (mobile thinclient)
> no harddisk. IF install , then on USB Stick and stay in port - never plugged out.  (only backup)



I'm not sure what you mean, exactly. The memstick version will install the FreeBSD OS. It is then up to you to choose what to add later, such as  X11, a desktop and so on. If you just want a bare-bones OS, then use the memstick, install the OS and you're done.

If you want to stick to using 13 then you cannot expect help here as the stuff in 13 is possibly unstable, bleeding-edge, bugged and certainly full of debugging (making it slow).


----------



## senenmut (Aug 23, 2020)

hello mark_j,
i made a post in installing section.

i don't understand the memstick.img thing.
if i use memstick , why i have to install later ?
suppose to run it from USB.
 is it possible to install packages to a LIVECD or memstick.img that is running ?

SM


----------



## mark_j (Aug 23, 2020)

The closest you get to a live system is the mini-memstick image. That image DOES NOT include packages.

Perhaps just wait for the machine to arrive, download the mini-memstick and see if it is what you want?

The only other one, not FreeBSD but a derivative of it, is FuryBSD. I dare say, though, it's a bit of a resource hog because of the desktop it uses. It's probably worth a try, though.


----------



## Phishfry (Aug 23, 2020)

senenmut said:


> i don't understand the memstick.img thing.
> if i use memstick , why i have to install later ?


Because the memstick installer is mounted Read Only when booted.
It is only meant for installing and with LiveCD mode you can use Rescue features.
What I have done is install FreeBSD onto a USB stick for computers with no disk or for investigation.


senenmut said:


> is it possible to install packages to a LIVECD or memstick.img that is running ?


No the disk is mounted Read Only.

What you can do is create a NanoBSD image with the packages you desire.
It is a tad complicated but you can create a minimal running system that boots from USB and has packages.








						Introduction to NanoBSD
					

This document provides information about the NanoBSD tools, which can be used to create FreeBSD system images for embedded applications, suitable for use on a USB key, memory card or other mass storage media.




					www.freebsd.org


----------



## a6h (Aug 23, 2020)

senenmut said:


> is it possible to install packages to a LIVECD or memstick.img that is running ?


If by that you mean something similar to _Tails (Debian/Tor) encrypted persistent storage_ or _Kali Linux Live persistence.conf,_ AFAIK the answer is no.
You may, but you have to find a solution. The official medium does not support that.


----------



## Mjölnir (Aug 23, 2020)

senenmut said:


> [...]  A whole mini-office with no limits in comfort.  All together under 5 kilograms.  [...]


Ahem.  My laptop is 1.3 kg incl. 14" screen...

Instead of FuryBSD (see here), have a look at NomadBSD for your x86/AMD thin client.  If I understand it correctly, you can install packages to the live USB system, and they will be persistent.
Do not use CURRENT.  You should go with a RELEASE, and it's also ok to go with STABLE for a desktop system.  My personal choice would be to avoid _GTk_ apps as much as possible, because it's crap, and it's counter-intuitive to put a bloated 72 MB Firefox onto a system designed to work on low resources, but of course that's partly a matter of personal bias.  If you want comfort, the 1st coice is KDE.  It handles low resources well (comparable to XfCE, better than Mate), but of course it suffers from _Linuxisms_ as well as all other DEs, and on top of that it suffers from _featuritis_.  That's the price for a modular and highly integrated DE.

Concerning creation of your own image, have a look at _spin_.


----------



## senenmut (Aug 23, 2020)

Hello @mjollir,

I have checked it out and it is not working. Final conclusion in this post:  I have to make a nanobsd stick. That is no problem because I have here a already installed FreeBSD on a tower with harddisk. Of course I will avoid GTK. My choice is motif. So I want to install libmotif as I have done already on my bsd-tower. I don't want to program for linux , ONLY REAL UNIX. My approach is to program in AWK, Shell, C and Motif and many more libraries that belong to UNIX. The traditional approach combined with new hightech libraries in C.

he he

kindly regards
SM


----------



## Mjölnir (Aug 24, 2020)

_Motif_ is a very modern choice, indeed.  I f you want to invest in the future, learn _Motif_.  I heard rumours the government of Micronesia decided to build the the world's smallest OS with integrated GUI on top of _FreeBSD + Motif_!  He he he!


----------



## senenmut (Aug 24, 2020)

Yeah,
I have prepared here everything. Many books etc. have compiled GUI examples on tower. 
[ I hate GUI designers. 
I want to program code and switching the brain ON ,
not serve a stupid software that is teaching the "methodology how to do that."] 

One question is furthermore, if it is possible to build a nanobsd stick from LIVE FreeBSD or only from installed one.
Things go more mobile today.

Should I start building with installed OS ?

Kindly Regards
SM


----------



## Mjölnir (Aug 24, 2020)

senenmut said:


> I have prepared here everything. Many books etc. have compiled GUI examples on tower.
> [ I hate GUI designers.
> I want to program code and switching the brain ON ,
> not serve a stupid software that is teaching the "methodology how to do that."]


Great!  I hate GUI designers, too.  They're trying to take away _real programmer's_ freedom to write spaghetti code, just because they think UIs should be intuitive & easy to use!  Bullsh*t!  _Motif_ rulez!!!  And it looks beautiful!!!


> One question is furthermore, if it is possible to build a nanobsd stick from LIVE FreeBSD or only from installed one. Things go more mobile today. Should I start building with installed OS ?


_Definitely, Yes_ is the answer to all three.


----------



## a6h (Aug 24, 2020)

mjollnir said:


> _Motif_ rulez


I've never worked with Motif (DE or widgets), but I always admire it. It has mysterious look and feeling. looks very professional and UNIX-y


----------



## senenmut (Aug 24, 2020)

here you got a working example from me.   it works always.   feel free to ask me for how to compile.

Its like nobody - terence hill - short video -   it works.

you need a very simple texteditor.  very simpler than for example "geany"
and the open commandline terminal for compiling instructions. thats all.



```
#include <Xm/Form.h>
#include <Xm/Label.h>
#include <Xm/PushB.h>


int main ( int argc, char ** argv )
{
    Widget              shell, form, label, button;
    XtAppContext app;
    int  i;


    shell = XtAppInitialize ( &app, "Formtest", NULL, 0,
                          &argc, argv, NULL, NULL, 0 );

    Screen * s = XtScreen(shell);

    int dw = WidthOfScreen(s);
    int dh = HeightOfScreen( s );

    Dimension px = (dw-500)/2;
    Dimension py = (dh-300)/2;

    XtVaSetValues ( shell,
              XmNwidth, 500,
              XmNheight, 300,
              XmNx, px,
              XmNy, py,
              NULL );


    form = XtCreateManagedWidget ( "form", xmFormWidgetClass,
                                shell, NULL, 0 );

    label = XtVaCreateManagedWidget ( "label", xmLabelWidgetClass,
                                form, NULL, 0 );

    button = XtVaCreateManagedWidget ( "button", xmPushButtonWidgetClass,
                                form,
                                XmNbottomAttachment,       XmATTACH_FORM,
                                 0 );
    XtVaSetValues ( button,
              XmNwidth, 100,
              XmNheight, 50,
              NULL );


    XtRealizeWidget ( shell );
    XtAppMainLoop ( app );

}
```


----------



## senenmut (Aug 26, 2020)

i am running the nanobsd.sh script and building.    takes some time to build.    15 minutes ??? dont know.

script is only available in the INSTALLED version.   no LIVE CD.

after 15 minutes the process in the freebsd terminal is still running.   i wait more.

does someone know the building time of nanobsd.sh  ???  that could help.


----------



## Mjölnir (Aug 26, 2020)

Hm.  My user is in the group _staff_, which is traditionally used for developers & such: `pw groupmod -m staff <user>` and re-login to apply the change.
I have `mkdir /var/obj`, `rm -fr /usr/obj` & `cd /usr && ln -s ../var/obj .`, `chgrp staff /var/obj && chmod g+sw /var/obj` and finally `chmod a+s /usr/bin/newgrp`.  I have mounted the sources into my user's home (I have CUR, STABLE & REL source trees under /src & symlink to /usr/src): In /etc/fstab(5)

```
/src/13-CUR     /home/paul/Projects/FreeBSD/src/13-CUR unionfs  rw,late,below,noatime       0 0
/src/12-STABLE /home/paul/Projects/FreeBSD/src/12-STABLE unionfs rw,late,below,noatime 0 0
/src/12.1-REL /home/paul/Projects/FreeBSD/src/12.1-REL unionfs rw,late,below,noatime 0 0
```
Then I can (as <user>) `newgrp staff` and run the script from within my $HOME/Projects/FreeBSD/src/....
How long it takes obviously depends on your hardware, and how you make use of it (`-j <max-jobs>` of make(1))


----------



## senenmut (Aug 26, 2020)

thank you mjollnir ,

have 1.4 GB currently in nanobsd package.  building still in progress...

one hour later - 1.4 GB staying still but the items are growing - 34506 items in nanobsd folder.


message from the arch


----------



## senenmut (Aug 26, 2020)

after 1 hour .  status :   1.5 GB  in nanobsd folder   34684 items.  still growing.

1,5 hours  ... still building


----------



## Mjölnir (Aug 26, 2020)

Did you RTFM nanobsd(8)?  There's also picobsd(8) & _tinybsd_.  See also spin.  Very likely you want to set up some customization 1st!  Maybe your hardware is somewhat slow or your're building all images under the nanobsd directory?


----------



## senenmut (Aug 26, 2020)

yeah , i started the original nanobsd script as described.
it takes time
2 hours - 1.6 GB  35920 items
freebsd takes it very precisely.    

of course. a full OS on USB stick isn't anything easy....if should working correct.

SM


----------



## senenmut (Aug 26, 2020)

3 hours :   1,9 GB  36593 items

2 GB - 37179 items

4 hours :  2,2 GB  37990 items


----------



## senenmut (Aug 26, 2020)

$  dmesg |  grep CPU
CPU: Intel (R) Core(TM) 2 Duo CPU   E8400 @ 3.00GHz (2992.54-Mhz 686-class CPU)
FreeBSD/SMP : Multiprocessor System Detected: 2 CPUs
cpu0: <ACPI CPU> on acpi0
est : CPU supports Enhanced Speedstep, but is not recognised.
est : CPU supports Enhanced Speedstep, but is not recognised.


5 hours packing time :   nanobsd folder status - 2.6 GB  45513 items
6 hours packing time :   nanobsd folder status - 3,1 GB  66397 items
7 hours packing time :  nanobsd folder status -   4 GB    71149 items


freebsd friends , its nighttime here , i take a rest.
wonder how great the folder is next day when the sun awakes ?   now its 5GB
freebsd 12.1 i386  takes a night shift.


----------



## Mjölnir (Aug 26, 2020)

I started shortly behind you and I have
_>>> World build completed on Wed Aug 26 21:55:15 CEST 2020_
`du -schx /var/obj/nanobsd.full/src/12.1-REL/amd64.amd64/`
_5.5G    total_


----------



## Phishfry (Aug 26, 2020)

Make sure you change the default drive to USB in your config file:
NANO_DRIVE=da0
NanoBSD has a steep learning curve. Here is some more help:





						NanoBSD [BSD Router Project]
					






					bsdrp.net
				




Once you buildworld you can skip that step to make tweaks with the -b option flag which can save alot of time.


----------



## senenmut (Aug 27, 2020)

hello again ,
i make a coffee.  black.
nanobsd folder wants to make more than 12 GB on this older i386 PC. 12.1 installed. 32bit.
freebsd said that packaging was unsuccessful because there is not enough space.
df -h
57 GB free   thats enough

ok.
no problem. i dont want 32bit nanbsd so i leave this freebsd installation untouched. its for home use only.

mission :   make a freebsd running on the AMD64bit thin client Fujitsu.

i have tried to INSTALL on USB Stick plugged in.   does not work.

so what i will do now is to buy a little external usb hard disk (maybe 80GB) and plug it into the usb of the thinclient.
then i try to install 12.1 STABLE AMD64bit minimemstick FreeBSD on this external drive.

wait ,  i will try Fury BSD first.  why not.   its a HD

SM

the ARMv7-Cortex thin client lies here besides -doesnt matter. not important jet.     AMD should run first

sum it together here my actual mission is to prepare a "water proof backpack" already ordered with :
a complete computer office instead of a android tablet.
screen-thinclient-keyboard-mouse-scanner-usbOSsticks etc.

already packed and ready to use for any mission.    a convenient PLUS would be freebsd for "programming"

because in programming i  would like original UNIX the best.

a complete office on the right shoulder - no compromise.


----------



## Phishfry (Aug 27, 2020)

The problem with NanoBSD and disk space is about your image file size.
The image size is not large enough to suit your build. So you need to increase your image file.
This is where the -b flag comes in handy.
You can simple rerun your config with larger image size and the buildimage stage will only take a few minutes.
`../nanobsd.sh -bc yourconfig.cfg`
Substitute yourconfig.cfg with the name of your configuration file.


----------



## senenmut (Aug 27, 2020)

hello Pishfry,

for that bsd image partition expanding i need clear adive and commands.
it zould destroy the image.
normally an image or partition is resized only if not booted and used.   for example :  from boot cd on.

in this case i try first to install freebsd on the external usb harddrive.

kindly regards


----------



## Mjölnir (Aug 27, 2020)

Forget _FuryBSD_ for now, it's broken.  If you want to try a _ready-to-go_ solution, have a look at NomadBSD.
USB thumb drives nowadays are available up to 256? GB.  I recently purchased a 64 GB stick for ~25€.  No need to carry an external HDD.  Fix a thread or wire to it, so you can not lose it -- these modern thumb drives can be very small.


----------



## senenmut (Aug 27, 2020)

yeah ,

ok. harddrive usb is here - 80GB is enough.  from computershop-freak. nuts and bolts man.
make HD ready with hirenbootcd and diskgenius. surfacecheck. 2 partitions. 40GB  40GB

ok. ill try NOMAD on this HD first , because flashstick failed.
then standard stable 12.1. freebsd install.
nanobsd doen't flow away. if i have a install on AMD64 i can make in from there too.

SM


----------



## Mjölnir (Aug 27, 2020)

You can copy the contents from your previous build(7) in /usr/obj, then the next build will be _much_ faster.  Consider to install devel/ccache to speed up successive builds.


----------



## senenmut (Aug 27, 2020)

make it running , without exception.


----------



## Phishfry (Aug 27, 2020)

NANO_MEDIASIZE= is the directive for image size for NanoBSD

Here is an NanoBSD amd64 USB config file that I use:
You can save this as /usr/src/tools/tools/nanobsd/amd64/amd64.cfg and run like this:

`cd  /usr/src/tools/tools/nanobsd/amd64/`
`../nanobsd.sh -c amd64.cfg`

Note you will also want to create a /usr/src/tools/tools/nanobsd/amd64/pkg/ directory for packages to be fetched into.


```
# Name of this NanoBSD build.  (Used to construct workdir names)
NANO_NAME=amd64

# Source tree directory
NANO_SRC=/usr/src

# Where nanobsd additional files live under the source tree
NANO_TOOLS=tools/tools/nanobsd

# The drive name of the media at runtime
# This value is not used if NANO_LABEL is used
NANO_DRIVE="da0"

# Where cust_pkg() finds packages to install
NANO_PACKAGE_DIR=${NANO_SRC}/${NANO_TOOLS}/${NANO_NAME}/pkg/All
NANO_PACKAGE_LIST="*"

# where package metadata gets placed
NANO_PKG_META_BASE=/var/db

# Object tree directory
# default is subdir of /usr/obj
#NANO_OBJ=""

# The directory to put the final images
# default is ${NANO_OBJ}
NANO_DISKIMGDIR=""

# Parallel Make
NANO_MAKE="make"
NANO_PMAKE="make -j $(sysctl -n hw.ncpu)"

# The default name for any image we create.
NANO_IMGNAME="nanobsd_${NANO_NAME}_${NANO_DRIVE}.img"

# Kernel config file to use
# If this file exists in targets/${NANO_TARGET}/${NANO_ARCH} then it
#  will be copied
NANO_KERNEL=AMD64

# Kernel modules to build; default is none
NANO_MODULES=""

# Customize commands.
NANO_CUSTOMIZE=""

# Early customize commands.
NANO_EARLY_CUSTOMIZE=""

# Late customize commands.
NANO_LATE_CUSTOMIZE=""

# Last Orders commands.
NANO_LAST_ORDERS=""

# Newfs paramters to use
NANO_NEWFS="-b 4096 -f 512 -i 8192 -U"

# Target media size in 512 bytes sectors
NANO_MEDIASIZE=976563

# Number of code images on media (1 or 2)
NANO_IMAGES=2
# 0 -> Leave second image all zeroes so it compresses better.
# 1 -> Initialize second image with a copy of the first
NANO_INIT_IMG2=1

# Size of code file system in 512 bytes sectors
# If zero, size will be as large as possible.
#NANO_CODESIZE=0

# Size of configuration file system in 512 bytes sectors
# Cannot be zero.
NANO_CONFSIZE=2048

# Size of data file system in 512 bytes sectors
# If zero: no partition configured.
# If negative: max size possible
NANO_DATASIZE=0

# Size of the /etc ramdisk in 512 bytes sectors
NANO_RAM_ETCSIZE=30000

# Size of the /tmp+/var ramdisk in 512 bytes sectors
NANO_RAM_TMPVARSIZE=30000

########NANO_RAM_TMPVARSIZE=400000 # 200M
########NANO_RAM_ETCSIZE=50000 # 50M

# Media geometry, only relevant if bios doesn't understand LBA.
NANO_SECTS=63
NANO_HEADS=16

# boot0 flags/options and configuration
NANO_BOOTLOADER="boot/boot0"
NANO_BOOT0CFG="-o packet -s 1 -m 3 -t 36"

# boot2 flags/options
# default force serial console
NANO_BOOT2CFG="-S115200 -d"

# Backing type of md(4) device
# Can be "file" or "swap"
NANO_MD_BACKING="file"

# for swap type md(4) backing, write out the mbr only
NANO_IMAGE_MBRONLY=true

# Set NANO_LABEL to non-blank to form the basis for using /dev/ufs/label
# in preference to /dev/${NANO_DRIVE}
# Root partition will be ${NANO_LABEL}s{1,2}
# /cfg partition will be ${NANO_LABEL}s3
# /data partition will be ${NANO_LABEL}s4
#NANO_LABEL="nanobsd"
NANO_SLICE_ROOT=s1
NANO_SLICE_ALTROOT=s2
NANO_SLICE_CFG=s3
NANO_SLICE_DATA=s4
NANO_ROOT=s1a
NANO_ALTROOT=s2a

# Directory to populate /cfg from
NANO_CFGDIR=${NANO_TOOLS}/${NANO_TARGET}/cfg

# Directory to populate /data from
NANO_DATADIR=${NANO_TOOLS}/${NANO_TARGET}/data

# Default ownwership for nopriv build
NANO_DEF_UNAME=root
NANO_DEF_GNAME=wheel

# Define the image type, acceptable types are disk and cd.
NANO_IMAGE_TYPE="disk"

## Speed to enable the serial console at.
NANO_CONSOLE_SPEED="115200"
# Progress Print level
PPLEVEL=3

SRCCONF=/dev/null
SRC_ENV_CONF=/dev/null

####################################

#Options passed to the buildworld stage of the build#
CONF_BUILD='
WITHOUT_KLDLOAD=YES
'

####################################

#Options passed to the installworld stage of the build#
CONF_INSTALL="
$CONF_BUILD
INSTALL_NODEBUG=YES
NOPORTDOCS=YES
NO_INSTALL_MANPAGES=YES
TARGET_ARCH=amd64
TARGET_CPUTYPE=amd64
TARGET=amd64
#######  FROM FREEBSD 12.0-STABLE SOURCE r342891  ##########
WITHOUT_ACCT=
WITHOUT_AMD=
WITHOUT_APM=
WITHOUT_ASSERT_DEBUG=
WITHOUT_AT=
WITHOUT_ATM=
WITHOUT_AUDIT=
WITHOUT_AUTHPF=
WITHOUT_AUTOFS=
WITHOUT_AUTO_OBJ=
WITHOUT_BHYVE=
WITHOUT_BINUTILS=
WITHOUT_BINUTILS_BOOTSTRAP=
WITHOUT_BLACKLIST_SUPPORT=
WITHOUT_BLUETOOTH=
WITHOUT_BMAKE=
WITHOUT_BOOTPARAMD=
WITHOUT_BOOTPD=
WITHOUT_BSDINSTALL=
WITHOUT_BSD_CPIO=
WITHOUT_BSNMP=
WITHOUT_BZIP2=
WITHOUT_BZIP2_SUPPORT=
WITHOUT_CALENDAR=
WITHOUT_CCD=
WITHOUT_CDDL=
WITHOUT_CLANG=
WITHOUT_CLANG_BOOTSTRAP=
WITHOUT_CLANG_FULL=
WITHOUT_CLANG_IS_CC=
WITHOUT_CPP=
WITHOUT_CROSS_COMPILER=
WITHOUT_CTM=
WITHOUT_CUSE=
WITHOUT_CVS=
WITHOUT_CXGBETOOL=
WITHOUT_DEBUG_FILES=
WITHOUT_DIALOG=
WITHOUT_DICT=
WITHOUT_DMAGENT=
WITHOUT_DOCCOMPRESS=
WITHOUT_DYNAMICROOT=
WITHOUT_ED_CRYPTO=
WITHOUT_ELFTOOLCHAIN_BOOTSTRAP=
WITHOUT_EXAMPLES=
WITHOUT_FDT=
WITHOUT_FINGER=
WITHOUT_FLOPPY=
WITHOUT_FMTREE=
WITHOUT_FORMAT_EXTENSIONS=
WITHOUT_FORTH=
WITHOUT_FP_LIBC=
WITHOUT_FREEBSD_UPDATE=
WITHOUT_FTP=
WITHOUT_GAMES=
WITHOUT_GCC=
WITHOUT_GCC_BOOTSTRAP=
WITHOUT_GCOV=
WITHOUT_GDB=
WITHOUT_GDB_LIBEXEC=
WITHOUT_GNUCXX=
WITHOUT_GNU_DIFF=
WITHOUT_GNU_GREP_COMPAT=
WITHOUT_GPIO=
WITHOUT_GPL_DTC=
WITHOUT_HAST=
WITHOUT_HTML=
WITHOUT_HYPERV=
WITHOUT_ICONV=
WITHOUT_INCLUDES=
WITHOUT_INET6=
WITHOUT_INET6_SUPPORT=
WITHOUT_INFO=
WITHOUT_INSTALLLIB=
WITHOUT_IPFILTER=
WITHOUT_IPFW=
WITHOUT_ISCSI=
WITHOUT_JAIL=
WITHOUT_KDUMP=
WITHOUT_KERNEL_RETPOLINE=
WITHOUT_KERNEL_SYMBOLS=
WITHOUT_KVM=
WITHOUT_KVM_SUPPORT=
WITHOUT_LIB32=
WITHOUT_LIBCPLUSPLUS=
WITHOUT_LLD=
WITHOUT_LLDB=
WITHOUT_LLD_BOOTSTRAP=
WITHOUT_LLD_IS_LD=
WITHOUT_LLVM_COV=
WITHOUT_LLVM_TARGET_AARCH64=
WITHOUT_LLVM_TARGET_ALL=
WITHOUT_LLVM_TARGET_ARM=
WITHOUT_LLVM_TARGET_MIPS=
WITHOUT_LLVM_TARGET_POWERPC=
WITHOUT_LLVM_TARGET_SPARC=
WITHOUT_LLVM_TARGET_X86=
WITHOUT_LOADER_GELI=
WITHOUT_LOADER_OFW=
WITHOUT_LOADER_UBOOT=
WITHOUT_LOCALES=
WITHOUT_LOCATE=
WITHOUT_LPR=
WITHOUT_LS_COLORS=
WITHOUT_LZMA_SUPPORT=
WITHOUT_MAIL=
WITHOUT_MAILWRAPPER=
WITHOUT_MAKE=
WITHOUT_MAKE_CHECK_USE_SANDBOX=
WITHOUT_MAN=
WITHOUT_MANCOMPRESS=
WITHOUT_MAN_UTILS=
WITHOUT_MLX5TOOL=
WITHOUT_MODULE_DRM=
WITHOUT_MODULE_DRM2=
WITHOUT_NAND=
WITHOUT_NCP=
WITHOUT_NDIS=
WITHOUT_NETCAT=
WITHOUT_NETGRAPH=
WITHOUT_NETGRAPH_SUPPORT=
WITHOUT_NLS=
WITHOUT_NLS_CATALOGS=
WITHOUT_NS_CACHING=
WITHOUT_NTP=
WITHOUT_PC_SYSINSTALL=
WITHOUT_PF=
WITHOUT_PMC=
WITHOUT_PORTSNAP=
WITHOUT_PPP=
WITHOUT_PROFILE=
WITHOUT_QUOTAS=
WITHOUT_RADIUS_SUPPORT=
WITHOUT_RBOOTD=
WITHOUT_REPRODUCIBLE_BUILD=
WITHOUT_RESCUE=
WITHOUT_ROUTED=
WITHOUT_SENDMAIL=
WITHOUT_SERVICESDB=
WITHOUT_SETUID_LOGIN=
WITHOUT_SHAREDOCS=
WITHOUT_SOURCELESS=
WITHOUT_SOURCELESS_HOST=
WITHOUT_SOURCELESS_UCODE=
WITHOUT_SSP=
WITHOUT_SVNLITE=
WITHOUT_SYMVER=
WITHOUT_SYSCONS=
WITHOUT_SYSTEM_COMPILER=
WITHOUT_SYSTEM_LINKER=
WITHOUT_TALK=
WITHOUT_TCP_WRAPPERS=
WITHOUT_TELNET=
WITHOUT_TESTS=
WITHOUT_TESTS_SUPPORT=
WITHOUT_TEXTPROC=
WITHOUT_TFTP=
WITHOUT_TIMED=
WITHOUT_TOOLCHAIN=
WITHOUT_UNBOUND=
WITHOUT_UNIFIED_OBJDIR=
WITHOUT_USB_GADGET_EXAMPLES=
WITHOUT_UTMPX=
WITHOUT_VI=
WITHOUT_WARNS=
WITHOUT_WIRELESS=
WITHOUT_WIRELESS_SUPPORT=
WITHOUT_WPA_SUPPLICANT_EAPOL=
WITHOUT_ZFS=
WITHOUT_ZONEINFO=
"

#####################################

#Options passed to both the buildworld and the installworld stage of the build#
CONF_WORLD='
TARGET=amd64
TARGET_ARCH=amd64
WITHOUT_GAMES=YES
'

#####################################


cust_rootpasswd() (
    echo 'freebsd' | pw -V ${NANO_WORLDDIR}/etc/ usermod root -h 0
)

cust_install_build_files () (
    cd ${NANO_TOOLS}/${NANO_NAME}/overlay
    find . -print | grep -Ev '/(CVS|\.svn|\.hg|\.git)' | cpio --no-preserve-owner -Ldumpv ${NANO_WORLDDIR}

if [ -n "${NANO_CUST_FILES_MTREE}" -a -f ${NANO_CUST_FILES_MTREE} ]; then
CR "mtree -eiU -p /" <${NANO_CUST_FILES_MTREE}
fi
)

#Customize Commands Here:
#customize_cmd cust_comconsole
customize_cmd cust_allow_ssh_root
customize_cmd cust_install_files
customize_cmd cust_install_build_files
customize_cmd cust_pkgng
customize_cmd cust_rootpasswd
```


----------



## senenmut (Aug 27, 2020)

hi all,

problem solved.

i have ported the nomadbsd image in the first partition of the external harddrive 36 GB.

then i have plugged it to the thin client.

it works fine.   networkcable gives bandwidth.

all clear.

pkg update works.

so i will use NOMADBSD 64bit.  

don't know WHY it has not worked with a 32 GB USB thumb drive ???  it doesnt matter.  on HD it works fine.

its a very lightweight small HD.

that NOMAD BSD is a real UNIX that works. plus : no installation required.

yeah.

thank you for your attention here.

kindly regards

SM


----------



## senenmut (Sep 1, 2020)

hi ,

after a few days NOMADBSD 64 bit works fine on my thin client AMD 64 bit from a external small HD. 80GB

have compiled a GUI on it. works good.   64bit compiled works not on 32 bit freebsd machine of course.

now i am able to program in 64 bit and 32 bit.   compiling on the target machine. he he

NOMADBSD = FREEBSD = UNIX     has unique POWER and ADVANTAGE.
=================================================================================

what with the ARMv7 Cortex Thin client here.
i do nothing with that strange prozessor.
oh habe an idea. can install "minilinux" on it and then.....       "smash the scrap in disposal"

nobody is the greatest.


----------



## mark_j (Sep 1, 2020)

Linux will probably install on the ARM device. Also look at NetBSD.


----------



## senenmut (Sep 1, 2020)

_View: https://www.youtube.com/watch?v=zXDD4Qve_wY_


----------



## senenmut (Sep 4, 2020)

really,

i have smashed the IGEL thin client Arm A8 Cortex into the trash.
because nothing boots from it. nothing.  not LIVE CD. no memstick.img
no other OS. no Arm image from any operating system boots from CD or SD.
Trash !


----------



## senenmut (Sep 19, 2020)

i have my own programming editor.
and have modified this editor as i want to be looks like.
it's pure written in UNIX.
nobody else has this editor. it's not available anywhere.
he he


----------



## Mjölnir (Sep 19, 2020)

senenmut said:


> i have my own programming editor. and have modified this editor as i want to be looks like.  it's pure written in UNIX. nobody else has this editor.  it's not available anywhere.  he he


_RRRRReady to RRRRRuuuuumble! Yeah! _


----------



## senenmut (Sep 19, 2020)

hi ,    UNIX  fellers ,

here you see my mobile rucksack on the right.
NOMAD BSD is running from external bootable HD.  not installed. the small HD is runder the screen.
In this case i have srewed the holder on the screen.
For mobile rucksack only the screen comes into it.
You see the small thinclient that is able to run BSD in a smooth manner.
On the left you see many USB sticks. There are many experimentable bootable OS for urgency matters.
repairing boot stick like hiren etc.
a complete office in a rucksack !!!    document scanner comes for final step.

Kindly Regards
SM

PS. NomadBSd is a huge range better than linux or windows in operation.  It's even a direct brother of FREEBSD.


----------



## a6h (Sep 19, 2020)

senenmut Nice setup! I like it. Thanks for sharing with us.


----------



## Mjölnir (Sep 19, 2020)

My laptop is 225x331x20 mm, 1.3 kg   ... But it lacks carrying straps...


----------



## ekvz (Sep 20, 2020)

Is that a Futro? If so which one is it?

Edit: Poor IGEL client. I bet it could have been made to work with something somehow.


----------



## senenmut (Sep 20, 2020)

yes , the only thing that weights is the screen.
could take a flat one hd but why ?
the usb sticks a double packed , one backup for every one.
i am a man that is working with a MOUSE and KEYBOARD. i dont like touchscreen handling.

the only company that has created such thing in a size of a smartphone is gemini pda.
a OS is Linix instead of android. multiboot choice.

when i have the scanner i can go everywhere on every kind of mission.

" the touchscreen people can do a camera photo of document and process over google drive ,
  i don't care what they do , i do it not like that way"
what i do google has no idea of.


----------



## Phishfry (Sep 20, 2020)

ekvz said:


> Poor IGEL client. I bet it could have been made to work with something somehow.


I looked into it and I saw NO IGEL Arm Thin clients for sale on ebay.
Then I looked at the IGEL website and there is nothing there about Arm thin clients.
No ARM related files to download at all.

The biggest challenge would probably be getting a supported u-boot for the device.
From there you could perhaps find generic supported OS by the Arm CPU class on Linux.
Either way it would be hard to do.

These IGEL Thin Clients ship with their own specific OS made just for starting a Virtual Machine Instance.


----------



## ekvz (Sep 20, 2020)

Phishfry said:


> I looked into it and I saw NO IGEL Arm Thin clients for sale on ebay.
> Then I looked at the IGEL website and there is nothing there about Arm thin clients.
> No ARM related files to download at all.



Not that i'd care about the original firmware but you are right having a reference might help a bit.



Phishfry said:


> The biggest challenge would probably be getting a supported u-boot for the device.
> From there you could perhaps find generic supported OS by the Arm CPU class on Linux.
> Either way it would be hard to do.
> 
> These IGEL Thin Clients ship with their own specific OS made just for starting a Virtual Machine Instance.



I know. Still no reason to just throw it away. Winter is coming soon


----------



## Phishfry (Sep 20, 2020)

ekvz said:


> Still no reason to just throw it away


Well if you consider that an Intel version of their thin client is cheap then it is worth throwing away.








						IGEL Technology UD2 Intel Baytrail E3815 1.46Ghz D220 Universal Desktop Base  | eBay
					

IGEL Technology. IGEL-D220 Universal Desktop Base. - Storage One 7 + 15 pin SATA connector for DOM. - BIOS Insyde UEFI BIOS. - USB 3x USB 2.0 + 1x USB3.0.



					www.ebay.com
				



E3815 is a very low power CPU from intel.
Plus you can run `freebsd-update` instead of the hassle of manually updating from source.


----------



## ekvz (Sep 20, 2020)

Phishfry said:


> Well if you consider that an Intel version of their thin client is cheap then it is worth throwing away.
> 
> 
> 
> ...



You don't know how many of those things one person can have  Besides it's actually an interesting system. ARM isn't overly common with thin clients and (as you said) the X86 ones are more or less a dime per dozen.


----------



## senenmut (Sep 21, 2020)

that's the point. 
if something went wrong with the hardware if you are on the road you can change it. budget doesn't matters.
in this constellation you can change any part easy.
show goes on.


----------

