{"id":15148727,"url":"https://github.com/duncaen/lobase","last_synced_at":"2025-09-29T17:32:01.961Z","repository":{"id":61118576,"uuid":"83926543","full_name":"Duncaen/lobase","owner":"Duncaen","description":"Port of the OpenBSD userland to Linux.","archived":true,"fork":false,"pushed_at":"2018-04-06T18:17:38.000Z","size":5124,"stargazers_count":97,"open_issues_count":8,"forks_count":10,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-09-26T13:22:01.039Z","etag":null,"topics":["coreutils","linux","openbsd","unix","utils"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Duncaen.png","metadata":{"files":{"readme":"README","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-03-04T21:41:48.000Z","updated_at":"2024-06-12T04:54:31.000Z","dependencies_parsed_at":"2022-10-11T09:54:31.687Z","dependency_job_id":null,"html_url":"https://github.com/Duncaen/lobase","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Duncaen%2Flobase","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Duncaen%2Flobase/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Duncaen%2Flobase/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Duncaen%2Flobase/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Duncaen","download_url":"https://codeload.github.com/Duncaen/lobase/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219874662,"owners_count":16554606,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["coreutils","linux","openbsd","unix","utils"],"created_at":"2024-09-26T13:22:09.535Z","updated_at":"2025-09-29T17:32:00.449Z","avatar_url":"https://github.com/Duncaen.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"lobase\n======\n\nlobase is a port of the OpenBSD userland to Linux.\n\nCaution\n-------\n\nThere are subtle differences in GNU coreutils and the OpenBSD userland,\nreplacing coreutils on Linux system without caution will result in\nissues with varying impact.\n\nIf you build your own linux system from the ground up and you know that\nyour scripts are all portable you can use lobase as main coreutils.\n\nOtherwise I suggest to use a prefixed installation and adding lobase to\nyour users shell `PATH`.\n\nInstallation\n------------\n\n\t$ autoreconf -fi\n\t$ ./configure\n\t$ make\n\t# make install\n\nTo speed up the compilation use multiple make jobs:\n\n\t$ MAKE_JOBS=$(cat /proc/cpuinfo|grep processor|wc -l)\n\t$ make -j\"$MAKE_JOBS\"\n\t# make -j\"$MAKE_JOBS\" install\n\n\nPrefix Installation\n-------------------\n\nYou can install lobase into its own prefix and then use the `PATH`\nenvironment variable to prefer lobases binaries over the default\ncoreutils for your users shell.\n\n\t$ ./configure --prefix=/usr/local/lobase\n\nBuild and install lobase and then add lobases bin and sbin directories\nto your path.\nTo make this permanent, set `PATH` in your shell profile.\n\n\t$ PATH=/usr/local/lobase/bin:/usr/local/lobase/sbin:$PATH\n\nSimple test to verify that lobase is used:\n\n\t$ which which\n\t/usr/local/lobase/bin/which\n\n\nDependencies\n------------\n\n- autoconf\n- make (GNU Make)\n- cc (gcc, clang)\n- yacc (byacc, bison)\n- lex (flex)\n\n- libedit (bc)\n- libevent (cu)\n- libressl\n  - libcrypto (bc,dc)\n- ncurses (bc,ul)\n- zlib (grep)\n\nDebian:\n\n\t# apt-get install libedit-dev libevent-dev libssl-dev libz-dev\n\nVoid Linux:\n\n\t# xbps-install libedit-devel libevent-devel libressl-devel zlib-dev\n\nNot included\n------------\n\nSome projects already have portable versions and are not included in lobase.\n\n- acme-client\thttps://github.com/kristapsdz/acme-client-portable\n- cwm\t\thttps://github.com/chneukirchen/cwm\n- file\t\thttps://github.com/brynet/file\n- libressl\thttps://www.libressl.org/\n  - nc\n- mandoc\thttp://mandoc.bsd.lv/\n  - man\n  - apropos\n- sndio\t\thttp://www.sndio.org/\n  - aucat\n  - aucatctl\n- smtpd\t\thttps://www.opensmtpd.org/\n- ssh\t\thttps://www.openssh.com/\n\nBroken\n------\n\n- cu\t\tshould be simple to fix\n- ftp\n\n\nTODO\n----\n\n- mk/bsd.prog.mk\n  - add DPADD support\n\n- mk/bsd.lib.mk\n  - install headers\n  - build shared libraries?\n\n- libtool?\n\nlib\n---\n\nliboutil\tParts of OpenBSDs libutil\nlibopenbsd\tParts of OpenBSDs libc\n\nbin\n---\n\ncat\nchmod           Some small differences because OpenBSD support permissions for symlinks\ncp\ndate\ndd              No SIGINFO support, use SIGUSR1 instead\ndf              No support for raw devices on linux\ndomainname\necho\ned\nexpr\nhostname\nkill\nksh\nln\nls              No support for file flags (-o)\nmd5\nmkdir\nmv\npax\npwd\nrm\nrmdir\nsleep\nstty\nsync\ntest\n\nsbin\n----\nmknod\nnologin\n\nusr.bin\n-------\n\napply\nawk\nbanner\nbasename\nbc\nbiff\ncal\ncalendar\ncap_mkdb\ncmp\ncol\ncolrm\ncolumn\ncomm\ncompress\ncsplit\nctags\ncu\ncut\ndc\nderoff\ndiff\ndiff3\ndirname\ndu\nencrypt\nenv\nexpand\nfalse\nfile\nfind\nfmt\nfold\nfrom\nftp\ngetconf\ngetent\ngetopt\ngrep\nhead\nhexdump\nhtpasswd\nid              Does not support -R to show the current processes routing table\nindent\njoin\njot\nlam\nleave\nlndir\nlogger\nlogname\nlook\nlorder\nmail\nmkdep\nmktemp\nnewsyslog\nnice\nnl\nnohup\npaste\npatch\npkg-config\npr\nprintenv\nprintf\nreadlink\nrenice\nrev\nrs\nsdiff\nsed\nshar\nsignify\nsort\nspell\nsplit\nstat            Does not support file flags, generations and birthtime on linux\ntail            There are small differences in how -f handles file truncations,\n                kqueue provides events for file truncations, inotify just notifies\n                about a file modification.\ntee\ntelnet\ntftp\ntime\ntouch\ntr\ntrue\ntsort\ntty\nul\nuname\nunexpand\nunifdef\nuniq\nunits\nunvis\nuudecode\nuuencode\nvacation\nvis\nwc\nwhat\nwhich\nwhois\nxargs\nxinstall        Does not support file flags (-f)\nyes\n\nusr.sbin\n--------\n\nchroot\ndev_mkdb\nmtree           No file flags support\nrdate\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fduncaen%2Flobase","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fduncaen%2Flobase","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fduncaen%2Flobase/lists"}