duncaen / lobase Goto Github PK
View Code? Open in Web Editor NEWPort of the OpenBSD userland to Linux.
Port of the OpenBSD userland to Linux.
lobase ====== lobase is a port of the OpenBSD userland to Linux. Caution ------- There are subtle differences in GNU coreutils and the OpenBSD userland, replacing coreutils on Linux system without caution will result in issues with varying impact. If you build your own linux system from the ground up and you know that your scripts are all portable you can use lobase as main coreutils. Otherwise I suggest to use a prefixed installation and adding lobase to your users shell `PATH`. Installation ------------ $ autoreconf -fi $ ./configure $ make # make install To speed up the compilation use multiple make jobs: $ MAKE_JOBS=$(cat /proc/cpuinfo|grep processor|wc -l) $ make -j"$MAKE_JOBS" # make -j"$MAKE_JOBS" install Prefix Installation ------------------- You can install lobase into its own prefix and then use the `PATH` environment variable to prefer lobases binaries over the default coreutils for your users shell. $ ./configure --prefix=/usr/local/lobase Build and install lobase and then add lobases bin and sbin directories to your path. To make this permanent, set `PATH` in your shell profile. $ PATH=/usr/local/lobase/bin:/usr/local/lobase/sbin:$PATH Simple test to verify that lobase is used: $ which which /usr/local/lobase/bin/which Dependencies ------------ - autoconf - make (GNU Make) - cc (gcc, clang) - yacc (byacc, bison) - lex (flex) - libedit (bc) - libevent (cu) - libressl - libcrypto (bc,dc) - ncurses (bc,ul) - zlib (grep) Debian: # apt-get install libedit-dev libevent-dev libssl-dev libz-dev Void Linux: # xbps-install libedit-devel libevent-devel libressl-devel zlib-dev Not included ------------ Some projects already have portable versions and are not included in lobase. - acme-client https://github.com/kristapsdz/acme-client-portable - cwm https://github.com/chneukirchen/cwm - file https://github.com/brynet/file - libressl https://www.libressl.org/ - nc - mandoc http://mandoc.bsd.lv/ - man - apropos - sndio http://www.sndio.org/ - aucat - aucatctl - smtpd https://www.opensmtpd.org/ - ssh https://www.openssh.com/ Broken ------ - cu should be simple to fix - ftp TODO ---- - mk/bsd.prog.mk - add DPADD support - mk/bsd.lib.mk - install headers - build shared libraries? - libtool? lib --- liboutil Parts of OpenBSDs libutil libopenbsd Parts of OpenBSDs libc bin --- cat chmod Some small differences because OpenBSD support permissions for symlinks cp date dd No SIGINFO support, use SIGUSR1 instead df No support for raw devices on linux domainname echo ed expr hostname kill ksh ln ls No support for file flags (-o) md5 mkdir mv pax pwd rm rmdir sleep stty sync test sbin ---- mknod nologin usr.bin ------- apply awk banner basename bc biff cal calendar cap_mkdb cmp col colrm column comm compress csplit ctags cu cut dc deroff diff diff3 dirname du encrypt env expand false file find fmt fold from ftp getconf getent getopt grep head hexdump htpasswd id Does not support -R to show the current processes routing table indent join jot lam leave lndir logger logname look lorder mail mkdep mktemp newsyslog nice nl nohup paste patch pkg-config pr printenv printf readlink renice rev rs sdiff sed shar signify sort spell split stat Does not support file flags, generations and birthtime on linux tail There are small differences in how -f handles file truncations, kqueue provides events for file truncations, inotify just notifies about a file modification. tee telnet tftp time touch tr true tsort tty ul uname unexpand unifdef uniq units unvis uudecode uuencode vacation vis wc what which whois xargs xinstall Does not support file flags (-f) yes usr.sbin -------- chroot dev_mkdb mtree No file flags support rdate
Not an exhaustive list of everything missing, but it would be nice to see if some of these could be ported over:
arch
factor
less
su
who
Using GCC 10, and musl 2.1.3. Here's a log: https://termbin.com/hbfe
Exclude the obj/* path in .gitignore being pushed accidentally.
Everything compiles o.k. until linking with ld.
Basically, ld shoots a lot of errors at my screen and at the end of all those errors, there's:
collect2: error: ld returned 1 exit status
make[2]: *** [../../../mk/bsd.prog.mk:74: indent] Error 1
make[1]: *** [../../mk/bsd.subdir.mk:40: _SUBDIRUSE] Error 1
make: *** [mk/bsd.subdir.mk:40: _SUBDIRUSE] Error 1
The complete log (including configure) is here: https://pastebin.com/nmbNVPiP
I'm looking for a static built signify. Is this possible with lobase?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.