mirror of
https://codeberg.org/landley/toybox.git
synced 2026-01-26 06:07:55 +00:00
Change links from microsoft github to codeberg.
This commit is contained in:
parent
c1a3470842
commit
ea6c172dad
4
README
4
README
@ -151,7 +151,7 @@ The three important URLs for communicating with the toybox project are:
|
||||
|
||||
mailing list: http://lists.landley.net/listinfo.cgi/toybox-landley.net
|
||||
|
||||
git repo: http://github.com/landley/toybox
|
||||
git repo: http://codeberg.org/landley/toybox
|
||||
|
||||
The maintainer prefers patches be sent to the mailing list. If you use git,
|
||||
the easy thing to do is:
|
||||
@ -161,7 +161,7 @@ the easy thing to do is:
|
||||
Then send a file attachment. The list holds messages from non-subscribers
|
||||
for moderation, but I usually get to them in a day or two.
|
||||
|
||||
I download github pull requests as patches and apply them with "git am"
|
||||
I download codeberg pull requests as patches and apply them with "git am"
|
||||
(which avoids gratuitous merge commits). Sometimes I even remember to close
|
||||
the pull request.
|
||||
|
||||
|
||||
@ -88,7 +88,7 @@ shipped with Android due to the license. As long as we're starting over anyway,
|
||||
we can do a better job.</p>
|
||||
|
||||
<p>Toybox's current minimal native development environment builder is a new
|
||||
<a href=https://github.com/landley/toybox/blob/master/scripts/mkroot.sh>tiny
|
||||
<a href=https://codeberg.org/landley/toybox/src/branch/master/mkroot/mkroot.sh>tiny
|
||||
implementation</a> integrated into the toybox source.
|
||||
The "make root" target will create a simple toybox chroot
|
||||
(by default in the root/host directory), and adding a LINUX= argument to
|
||||
@ -98,7 +98,7 @@ bootable system with a wrapper script to run it under the emulator
|
||||
|
||||
<p>The list of commands remaining before we can build Linux From Scratch under
|
||||
the result (with an appropriate
|
||||
<a href=https://github.com/landley/toybox/blob/master/scripts/mcm-buildall.sh>compiler</a>)
|
||||
<a href=https://codeberg.org/landley/toybox/src/branch/master/scripts/mcm-buildall.sh>compiler</a>)
|
||||
is tracked <a href=roadmap.html#dev_env>in
|
||||
the roadmap</a>, and doing so is one of the main goals for toybox's 1.0
|
||||
release.</p>
|
||||
@ -150,7 +150,7 @@ kind of nice to have.</p>
|
||||
|
||||
<b><h2><a name="downloads" />Download</h2></b>
|
||||
|
||||
<p>This project is maintained as a <a href=https://github.com/landley/toybox>git
|
||||
<p>This project is maintained as a <a href=https://codeberg.org/landley/toybox>git
|
||||
archive</a>, and also offers <a href=http://landley.net/toybox/downloads>source
|
||||
tarballs</a> and <a href=http://landley.net/toybox/bin>static binaries</a>
|
||||
of the release versions.</p>
|
||||
|
||||
@ -468,8 +468,8 @@ the linux kernel source's
|
||||
utf8 and unicode, and our terminal control outputs ANSI
|
||||
<a href=https://man7.org/linux/man-pages/man4/console_codes.4.html>escape sequences</a>.
|
||||
Toybox gets <a href=faq.html#cross>tested</a> with gcc and llvm on glibc,
|
||||
musl-libc, and bionic, plus occasional <a href=https://github.com/landley/toybox/blob/master/kconfig/freebsd_miniconfig>FreeBSD</a> and
|
||||
<a href=https://github.com/landley/toybox/blob/master/kconfig/macos_miniconfig>MacOS</a> builds for subsets
|
||||
musl-libc, and bionic, plus occasional <a href=https://codeberg.org/landley/toybox/src/branch/master/kconfig/freebsd_miniconfig>FreeBSD</a> and
|
||||
<a href=https://codeberg.org/landley/toybox/src/branch/master/kconfig/macos_miniconfig>MacOS</a> builds for subsets
|
||||
of the commands.</p>
|
||||
|
||||
<p>For the build environment and runtime environment, toybox depends on
|
||||
@ -508,7 +508,7 @@ it's not out yet.)</p>
|
||||
We use a few of the new features like compound literals (6.5.2.5) and structure
|
||||
initialization by member name with unnamed members zeroed (6.7.9),
|
||||
but mostly we "officially" went from c99 to C11 to work around a
|
||||
<a href=https://github.com/landley/toybox/commit/3625a260065b>clang compiler bug</a>.
|
||||
<a href=https://codeberg.org/landley/toybox/commit/3625a260065b>clang compiler bug</a>.
|
||||
The main thing we use from c99 that c89 hadn't had was // single line comments.
|
||||
(We mostly don't even use C99's explicit width data types, ala uint32_t and
|
||||
friends, because LP64 handles that for us.)</p>
|
||||
|
||||
32
www/faq.html
32
www/faq.html
@ -266,7 +266,7 @@ failing tests. The default VERBOSE=fail stops at the first such failure.</p>
|
||||
<hr /><h2><a name="when" />Q: When were historical toybox versions released?</h2>
|
||||
|
||||
<p>A: For vanilla releases, check the
|
||||
<a href=https://github.com/landley/toybox/tags>date on the commit tag</a>
|
||||
<a href=https://codeberg.org/landley/toybox/tags>date on the commit tag</a>
|
||||
or <a href=https://landley.net/toybox/downloads/binaries/>the
|
||||
example binaries</a> against the output of "toybox --version".
|
||||
Between releases the --version
|
||||
@ -299,7 +299,7 @@ info for that one.</p>
|
||||
|
||||
<p>A: Ideally on the <a href=http://lists.landley.net/listinfo.cgi/toybox-landley.net>mailing list</a>, although <a href=mailto:rob@landley.net>emailing the
|
||||
maintainer</a> is a popular if slightly less reliable alternative.
|
||||
Issues submitted to <a href=https://github.com/landley/toybox>github</a>
|
||||
Issues submitted to <a href=https://codeberg.org/landley/toybox>codeberg</a>
|
||||
are generally dealt with less promptly, but mostly get done eventually.
|
||||
AOSP has its <a href=https://source.android.com/setup/contribute/report-bugs>own bug reporting mechanism</a> (although for toybox they usually forward them
|
||||
to the mailing list) and Android vendors usually forward them to AOSP which
|
||||
@ -334,8 +334,8 @@ and its original author (Rob Landley)
|
||||
continues to maintain the open source project.</p>
|
||||
|
||||
<p>Android's base OS maintainer (Elliott Hughes, I.E. enh)
|
||||
<a href=https://github.com/landley/toybox/commit/69a9f257234a>ported</a>
|
||||
<a href=https://github.com/landley/toybox/commit/6a29bb1ebe62>toybox</a>
|
||||
<a href=https://codeberg.org/landley/toybox/commit/69a9f257234a>ported</a>
|
||||
<a href=https://codeberg.org/landley/toybox/commit/6a29bb1ebe62>toybox</a>
|
||||
to Android in 2014, merged it into Android M (Marshmallow), and remains
|
||||
Android's toybox maintainer. (He explained it in his own words in
|
||||
<a href=http://androidbackstage.blogspot.com/2016/07/episode-53-adb-on-adb.html>this podcast</a>, starting either 18 or 20 minutes in depending how
|
||||
@ -381,7 +381,7 @@ and thus spends less time coding than he does sitting in meetings where testers
|
||||
talk to security people about vendor issues.</p>
|
||||
|
||||
<p>Android has many other coders and security people who submit the occasional
|
||||
toybox patch, but of the last 1000 commits at the <a href=https://github.com/landley/toybox/commit/88b34c4bd3f8>time
|
||||
toybox patch, but of the last 1000 commits at the <a href=https://codeberg.org/landley/toybox/commit/88b34c4bd3f8>time
|
||||
of writing</a> this FAQ entry, Elliott submitted 276 and all other google.com
|
||||
or android.com addresses combined totaled 17. (Rob submitted 591, leaving
|
||||
116 from other sources, but for both Rob and Elliott there's a lot of "somebody
|
||||
@ -554,6 +554,8 @@ $ exit
|
||||
<p>But the rest of the hermetic build works without it:</p>
|
||||
|
||||
<blockquote><pre>
|
||||
$ cc scripts/kconfig.c
|
||||
$ KCONFIG_ALLCONFIG=kconfig/macos_miniconfig ./a.out -n > .config
|
||||
$ scripts/prereq/build.sh #ignoring SO many warnings
|
||||
$ mkdir prereq; mv toybox-prereq prereq/
|
||||
$ for i in $(prereq/toybox-prereq); do ln -s toybox-prereq prereq/$i; done
|
||||
@ -680,13 +682,13 @@ Cobol, most people just try to get on with their lives.)</p>
|
||||
<p>These cross compilers are built from the
|
||||
<a href=http://musl.libc.org/>musl-libc</a> maintainer's
|
||||
<a href=https://github.com/richfelker/musl-cross-make>musl-cross-make</a>
|
||||
project, built by running toybox's <a href=https://github.com/landley/toybox/blob/master/scripts/mcm-buildall.sh>scripts/mcm-buildall.sh</a> in that directory,
|
||||
project, built by running toybox's <a href=https://codeberg.org/landley/toybox/src/branch/master/scripts/mcm-buildall.sh>scripts/mcm-buildall.sh</a> in that directory,
|
||||
and then symlink the resulting "ccc" subdirectory into toybox where
|
||||
"make root CROSS=" can find them, ala:</p>
|
||||
|
||||
<blockquote><b><pre>
|
||||
cd ~
|
||||
git clone https://github.com/landley/toybox
|
||||
git clone https://codeberg.org/landley/toybox
|
||||
git clone https://github.com/richfelker/musl-cross-make
|
||||
cd musl-cross-make
|
||||
../toybox/scripts/mcm-buildall.sh # this takes a while
|
||||
@ -720,7 +722,7 @@ LDFLAGS=--static make distclean defconfig toybox CROSS=m68k-linux-musl-
|
||||
won't run on your host unless you install musl's libc.so into the system
|
||||
libraries (which is an accident waiting to happen adding a second C library
|
||||
to most glibc linux distribution) or play with $LD_LIBRARY_PATH.
|
||||
(The <a href=https://github.com/landley/toybox/blob/master/scripts/root/dynamic>dynamic</a> package
|
||||
(The <a href=https://codeberg.org/landley/toybox/src/branch/master/mkroot/packages/dynamic>dynamic</a> package
|
||||
in mkroot copies the shared libraries out of the toolchain to create a dynamic
|
||||
linking environment in the root filesystem, but it's not nearly as well
|
||||
tested.)</p>
|
||||
@ -824,9 +826,12 @@ auditable version of the cmdline portion of that base.</p>
|
||||
|
||||
<hr /><h2><a name="mkroot" />Q: How do you build a working Linux system with toybox?</h2>
|
||||
|
||||
<p>A: Toybox has a built-in <a href=https://github.com/landley/toybox/blob/master/mkroot/mkroot.sh>system builder</a> called "<a href=https://github.com/landley/toybox/blob/master/mkroot/README>mkroot</a>", with the Makefile target "<b>make
|
||||
root</b>". To enter the resulting root filesystem, "<b>sudo chroot
|
||||
root/host/fs /init</b>". Type "exit" to get back out.</p>
|
||||
<p>A: Toybox has a built-in
|
||||
<a href=https://codeberg.org/landley/toybox/src/branch/master/mkroot/mkroot.sh>system builder</a>
|
||||
called "<a href=https://codeberg.org/landley/toybox/src/branch/master/mkroot/README>mkroot</a>",
|
||||
with the Makefile target "<b>make root</b>". To enter the resulting root
|
||||
filesystem, "<b>sudo chroot root/host/fs /init</b>".
|
||||
Type "exit" to get back out.</p>
|
||||
|
||||
<p>Prebuilt binary versions of these system images, suitable for running
|
||||
under the emulator <a href=https://qemu.org>qemu</a>, are uploaded to
|
||||
@ -865,13 +870,14 @@ pointing at a directory full of cross compilers. The ones I test this with are
|
||||
built from the musl-libc maintainer's
|
||||
<a href=https://github.com/richfelker/musl-cross-make>musl-cross-make</a>
|
||||
project, built by running toybox's
|
||||
<a href=https://github.com/landley/toybox/blob/master/scripts/mcm-buildall.sh>scripts/mcm-buildall.sh</a> in a musl-cross-make checkout directory,
|
||||
<a href=https://codeberg.org/landley/toybox/src/branch/master/scripts/mcm-buildall.sh>scripts/mcm-buildall.sh</a>
|
||||
in a musl-cross-make checkout directory,
|
||||
and then symlinking the resulting "ccc" subdirectory into toybox where CROSS=
|
||||
can find them:</p>
|
||||
|
||||
<blockquote><b><pre>
|
||||
cd ~
|
||||
git clone https://github.com/landley/toybox
|
||||
git clone https://codeberg.org/landley/toybox
|
||||
git clone https://github.com/richfelker/musl-cross-make
|
||||
cd musl-cross-make
|
||||
../toybox/scripts/mcm-buildall.sh # this takes a while
|
||||
|
||||
@ -25,7 +25,7 @@
|
||||
<b>Download</b>
|
||||
<ul>
|
||||
<li>Git repo:
|
||||
<ul><li><a href="https://github.com/landley/toybox">github</a></li>
|
||||
<ul><li><a href="https://codeberg.org/landley/toybox">codeberg</a></li>
|
||||
<li><a href=https://landley.net/toybox/git>local</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
@ -47,7 +47,7 @@
|
||||
<ul>
|
||||
<li><a href="http://lists.landley.net/listinfo.cgi/toybox-landley.net">Mailing List</a></li>
|
||||
<li>IRC #toybox on libera.chat</li>
|
||||
<li><a href=https://github.com/landley/toybox/commits/master.atom>Commit RSS feed</a></li>
|
||||
<li><a href="https://codeberg.org/landley/toybox.rss">Commit RSS feed</a></li>
|
||||
<li><a href="/notes.html">Maintainer's Blog</a></li>
|
||||
<li><a href="https://patreon.com/landley">Patreon</a></li>
|
||||
</ul>
|
||||
|
||||
@ -37,7 +37,7 @@ public domain code</a> and slaps <a href=http://www.opensource.apple.com/source/
|
||||
|
||||
<p>To work around this perception, the above license is the
|
||||
<a href=https://www.openbsd.org/policy.html>OpenBSD suggested template
|
||||
license</a>, <a href=https://github.com/landley/toybox/commit/ee86b1d8e25cb0ca9d418b33eb0dc5e7716ddc1e>minus the half sentence</a>
|
||||
license</a>, <a href=https://codeberg.org/landley/toybox/commit/ee86b1d8e25cb0ca9d418b33eb0dc5e7716ddc1e>minus the half sentence</a>
|
||||
requiring the license text be copied verbatim into derived works. If 2BSD is
|
||||
ok, then 0BSD should be ok, despite being equivalent to placing code in the
|
||||
public domain.</p>
|
||||
|
||||
@ -45,7 +45,7 @@ $ ls --help
|
||||
<p>To compile toybox from source:</p>
|
||||
|
||||
<blockquote><p>
|
||||
$ git clone https://github.com/landley/toybox<br />
|
||||
$ git clone https://codeberg.org/landley/toybox<br />
|
||||
$ cd toybox<br />
|
||||
$ make defconfig toybox<br />
|
||||
$ ./toybox<br />
|
||||
@ -61,7 +61,7 @@ to provide a portable executable without external userspace dependencies.
|
||||
To reproduce that:</p>
|
||||
|
||||
<blockquote><p>
|
||||
$ git clone https://github.com/landley/toybox<br />
|
||||
$ git clone https://codeberg.org/landley/toybox<br />
|
||||
$ cd toybox<br />
|
||||
$ wget https://landley.net/bin/toolchains/latest/x86_64-linux-musl-cross.tar.xz<br />
|
||||
$ tar xvf x86_64-linux-musl-cross.tar.xz<br />
|
||||
@ -71,7 +71,7 @@ $ ./toybox
|
||||
|
||||
<p>You can also build individual toybox commands as standalone executables,
|
||||
either by name ("<b>make sed</b>") or using the "<b>make change</b>" target (as in change
|
||||
for a $20) to build all of them at once. This is much less efficient than
|
||||
for a $20 bill) to build all of them at once. This is much less efficient than
|
||||
the default build, the individual commands add up to around ten times the
|
||||
size of the equivalent all-in-one toybox binary.</p>
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user