More NetBSD-current fun at Linveo!

Not_OlesNot_Oles Hosting ProviderContent Writer

Hello!

  • VPS Share

Would anybody be interested in sharing my free Linveo AMD Ryzen 9 9950X NetBSD VPS in Arizona? It's open to friends who want to help me learn.

  • Goals

Tonight I decided to (1) try some method of rolling release updates of NetBSD pkgsrc. For example, please see pkg_rolling-replace (mailing list, 2008 introduction), please see also the man page. I could use help figuring out the best method of rolling updates with pkgsrc.

Also, I think it might be fun to (2) see whether I can get 9vx working. I could use help with the code and the compiling on 64 bit NetBSD of the vx32 sandboxing library used by 9vx.

Maybe I could (3) try the X Windows installation from pkgsrc instead of the xsrc version, but I haven't looked into pkgsrc X, very much as yet.

  • Procedure

I'm beginning by wiping and reinstalling my NetBSD-current VPS at Linveo. <3 The reinstall is from Linveo vmcontrol, which offers @cmeerw's <3 NetBSD 10.1 image.

The process is installing NetBSD 10.1, then, with changes appropriate for 10.1, following the simple NetBSD 10 to NetBSD-current steps in Quick Recipe For Self-Compiled NetBSD-current On A Linveo VPS.

linveo# ftp -o - https://cdn.netbsd.org/pub/NetBSD/NetBSD-10.1/amd64/binary/sets/comp.tar.xz | progress -z tar xpf - -C /
linveo# which gcc
/usr/bin/gcc
linveo# cd /usr
linveo# mkdir obj src tools
linveo# mkdir /home
linveo# useradd -m -G wheel tom
linveo# passwd tom
Changing password for tom.
New Password:
Retype New Password:
linveo# chown tom obj src tools
linveo# su tom
linveo# 
linveo$ pwd
/usr
linveo$ export CVSROOT="[email protected]:/cvsroot"
linveo$ export CVS_RSH="ssh"
linveo$ cvs checkout -A -P src
linveo$ cd src
linveo$ nohup ./build.sh -j 2 -O ../obj -T ../tools -U distribution && \
> nohup ./build.sh -j 2 -O ../obj -T ../tools -U kernel=GENERIC

I like nohup because it gives me a full transcript of all the terminal output and because I don't have to stay connected. Back in the old days I used to start a NetBSD-current build and then sleep. I don't remember a build which failed to complete, but there might have been one.

I will post again, later, or maybe tomorrow, about whether this build completes.

I hope everyone gets the servers they want!

Thanked by (2)toor admax
Tagged:

Comments

  • Not_OlesNot_Oles Hosting ProviderContent Writer

    Wow! This VPS is fast! Both builds seem to have completed successfully!

    So, sleep now, and install tomorrow.

    ===> Summary of results:
             build.sh command:    ./build.sh -j 2 -O ../obj -T ../tools -U distribution
             build.sh started:    Fri Feb 21 04:34:35 UTC 2025
             NetBSD version:      10.99.12
             MACHINE:             amd64
             MACHINE_ARCH:        x86_64
             Build platform:      NetBSD 10.1 amd64
             HOST_SH:             /bin/sh
             No $TOOLDIR/bin/nbmake, needs building.
             Bootstrapping nbmake
             share/mk MAKECONF:   /etc/mk.conf
             MAKECONF file:       /etc/mk.conf (File not found)
             TOOLDIR path:        /usr/src/../tools
             DESTDIR path:        /usr/src/../obj/destdir.amd64
             RELEASEDIR path:     /usr/src/../obj/releasedir
             Created /usr/src/../tools/bin/nbmake
             Updated makewrapper: /usr/src/../tools/bin/nbmake-amd64
             Successful make distribution
             build.sh ended:      Fri Feb 21 05:41:37 UTC 2025
    ===> .
    
    ===> Summary of results:
             build.sh command:    ./build.sh -j 2 -O ../obj -T ../tools -U kernel=GENERIC
             build.sh started:    Fri Feb 21 05:41:37 UTC 2025
             NetBSD version:      10.99.12
             MACHINE:             amd64
             MACHINE_ARCH:        x86_64
             Build platform:      NetBSD 10.1 amd64
             HOST_SH:             /bin/sh
             share/mk MAKECONF:   /etc/mk.conf
             MAKECONF file:       /etc/mk.conf (File not found)
             TOOLDIR path:        /usr/src/../tools
             DESTDIR path:        /usr/src/../obj/destdir.amd64
             RELEASEDIR path:     /usr/src/../obj/releasedir
             Updated makewrapper: /usr/src/../tools/bin/nbmake-amd64
             Building kernel without building new tools
             Building kernel:     GENERIC
             Build directory:     /usr/src/../obj/sys/arch/amd64/compile/GENERIC
             Kernels built from GENERIC:
              /usr/src/../obj/sys/arch/amd64/compile/GENERIC/netbsd
             build.sh ended:      Fri Feb 21 05:46:55 UTC 2025
    ===> .
    

    I hope everyone gets the servers they want!

  • Not_OlesNot_Oles Hosting ProviderContent Writer

    Here is the new kernel install, followed by a reboot to run the new kernel.

    Then, with the new kernel running, we install the new userland and reboot again so that we are running both the new kernel and the new userland.

    The new kernel needs to be running before we try to run the new userland because some on the new userland binaries may require features from the new kernel, whereas the new kernel should be capable of running both the old and the new userland binaries.

    • New Kernel Install
    linveo# mv /netbsd /netbsd.old
    linveo# ls -l netbsd*
    ls: netbsd*: No such file or directory
    linveo# ls -l /netbsd*
    -rwxr-xr-x  1 root  wheel  29528360 Dec 16 13:08 /netbsd.old
    linveo# mv /usr/obj/sys/arch/amd64/compile/GENERIC/netbsd /
    linveo# ls -l /netbsd*
    -rwxr-xr-x  1 tom   wheel  29585768 Feb 21 05:46 /netbsd
    -rwxr-xr-x  1 root  wheel  29528360 Dec 16 13:08 /netbsd.old
    linveo# date
    Fri Feb 21 19:26:10 UTC 2025
    linveo# 
    
    • Reboot To Run The New Kernel
    linveo# reboot
      [ . . . ]
    linveo# date
    Fri Feb 21 19:27:39 UTC 2025
    linveo# uptime
     7:27PM  up 1 min, 1 user, load averages: 0.00, 0.00, 0.00
    linveo# 
    
    • New Userland Install
    linveo# cd /usr/src
    linveo# ls
    BUILDING     README.md    common       distrib      games        nohup.out    share        usr.bin
    CVS          UPDATING     compat       doc          include      regress      sys          usr.sbin
    Makefile     bin          crypto       etc          lib          rescue       tests
    Makefile.inc build.sh     dist         external     libexec      sbin         tools
    linveo# mv nohup.out nohup-20250221-build.out
    linveo# nohup ./build.sh -j 2 -O ../obj -T ../tools -U install=/
    sending output to nohup.out
    
    # From nohup.out:
    
    make installworld started at:  Fri Feb 21 19:31:25 UTC 2025
    make installworld finished at: Fri Feb 21 19:31:37 UTC 2025
    ===> Successful installworld to /
    ===> build.sh ended:      Fri Feb 21 19:31:37 UTC 2025
    ===> Summary of results:
             build.sh command:    ./build.sh -j 2 -O ../obj -T ../tools -U install=/
             build.sh started:    Fri Feb 21 19:31:25 UTC 2025
             NetBSD version:      10.99.12
             MACHINE:             amd64
             MACHINE_ARCH:        x86_64
             Build platform:      NetBSD 10.99.12 amd64
             HOST_SH:             /bin/sh
             share/mk MAKECONF:   /etc/mk.conf
             MAKECONF file:       /etc/mk.conf (File not found)
             TOOLDIR path:        /usr/src/../tools
             DESTDIR path:        /usr/src/../obj/destdir.amd64
             RELEASEDIR path:     /usr/src/../obj/releasedir
             Updated makewrapper: /usr/src/../tools/bin/nbmake-amd64
             Successful installworld to /
             build.sh ended:      Fri Feb 21 19:31:37 UTC 2025
    ===> .
    
    linveo# 
    
    • Reboot To Run The New Userland Under The New Kernel
    linveo# date
    Fri Feb 21 19:34:19 UTC 2025
    linveo# reboot
      [ . . . ]
    linveo# date
    Fri Feb 21 19:35:42 UTC 2025
    linveo# uptime
     7:35PM  up 1 min, 1 user, load averages: 0.00, 0.00, 0.00
    linveo# 
    
    • Results

    It seems that this VPS is running self-compiled NetBSD-current!

    linveo# uname -r
    10.99.12
    linveo# ls -l /bin | head
    total 1934
    -r-xr-xr-x  2 root  wheel   22056 Feb 21 05:40 [
    -r-xr-xr-x  1 root  wheel   22024 Feb 21 05:40 cat
    lrwxr-xr-x  1 root  wheel      11 Feb 21 05:40 chgrp -> /sbin/chown
    -r-xr-xr-x  1 root  wheel   22232 Feb 21 05:40 chio
    -r-xr-xr-x  1 root  wheel   17584 Feb 21 05:40 chmod
    -r-xr-xr-x  1 root  wheel   33528 Feb 21 05:40 cp
    -r-xr-xr-x  1 root  wheel   57720 Feb 21 05:40 cpio
    -r-xr-xr-x  1 root  wheel  190888 Feb 21 05:40 csh
    -r-xr-xr-x  1 root  wheel   27264 Feb 21 05:40 date
    linveo# 
    

    I hope everyone gets the servers they want!

  • Not_OlesNot_Oles Hosting ProviderContent Writer

    NetBSD uses pkgsrc to compile and install self-compiled binaries for approximately 28,000 third-party programs which are not part of the NetBSD core. For quick reference, besides the pkgsrc.org site, there also is the pkgsrc section of the NetBSD wiki, a mailing list, and an IRC channel.

    Besides the current version of pkgsrc, called HEAD, there are quarterly branch releases.

    Remarkably, pkgsrc runs on many other operating systems besides NetBSD!

    Besides self-compiling, there are pre-compiled binaries available for SmartOS/Illumos, MacOS, NetBSD-current, and Enterprise Linux.

    Here, on our Linveo VPS, is the install via CVS of pkgsrc HEAD, plus downloading of the current package vulnerability list.

    linveo# cd /usr
    linveo# export CVS_RSH=ssh
    linveo# echo $CVS_RSH
    ssh
    linveo# nohup cvs [email protected]:/cvsroot checkout -P pkgsrc
    sending output to nohup.out
    linveo# ls bin       include   libdata   local     nohup.out pkg       sbin      src       tools
    games     lib       libexec   mdec      obj       pkgsrc    share     tests
    linveo# cd pkgsrc
    linveo# ls
    CVS           bootstrap     distfiles     geography     mbone         parallel      sysutils
    Makefile      cad           doc           graphics      meta-pkgs     pkglocate     templates
    README.md     chat          editors       ham           misc          pkgtools      textproc
    _NetBSD-pkgdb comms         emulators     inputmethod   mk            print         time
    archivers     converters    filesystems   lang          multimedia    regress       wm
    audio         cross         finance       licenses      net           science       www
    benchmarks    databases     fonts         mail          news          security      x11
    biology       devel         games         math          packages      shells
    linveo# pkg_admin fetch-pkg-vulnerabilities
    pkg_admin: Cannot create pkg-vulnerability file /usr/pkg/pkgdb/pkg-vulnerabilities: No such file or directory
    linveo# ls /usr
    bin       include   libdata   local     nohup.out pkgsrc    share     tests
    games     lib       libexec   mdec      obj       sbin      src       tools
    linveo# mkdir /usr/pkg /usr/pkg/pkgdb
    linveo# pkg_admin fetch-pkg-vulnerabilities
    linveo# 
    

    I hope everyone gets the servers they want!

  • Not_OlesNot_Oles Hosting ProviderContent Writer
    edited 6:00AM

    Just found two articles from the pkgsrc section of the NetBSD wiki:

    and

    I have been wanting to see good tutorials on these subjects for a while! Yaaay! :)

    I hope everyone gets the servers they want!

Sign In or Register to comment.