- Saved searches
- Use saved searches to filter your results more quickly
- License
- marmolak/gray386linux
- Name already in use
- Sign In Required
- Launching GitHub Desktop
- Launching GitHub Desktop
- Launching Xcode
- Launching Visual Studio Code
- Latest commit
- Git stats
- Files
- README.md
- About
- Search Results for "linux i386"
- GHDL
- gopsutil
- Gotenberg
- aptly
- Exe GNU/Linux
- ryanboot
- Unofficial Apache OO Debian repository
- GnoppixNG
- laz4android
- Lilidog
Saved searches
Use saved searches to filter your results more quickly
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
Linux distribution for i386 machines only.
License
marmolak/gray386linux
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
README.md
_______ .______ ___ ____ ____ ____ ___ __ / _____|| _ \ / \ \ \ / / |___ \ / _ \ / / | | __ | |_) | / ^ \ \ \/ / __) | | (_) | / /_ | | |_ | | / / /_\ \ \_ _/ |__ < >_ < | '_ \ | |__| | | |\ \----./ _____ \ | | ___) | | (_) | | (_) | \______| | _| `._____/__/ \__\ |__| |____/ \___/ \___/ Linux for i386 machines
Gray386linux is single user, source based (but binary build is provided) Linux distribution with tiny but current user space ( busybox + musl ). Main target is a real i386 net-booted machines with at least 8 MB RAM (should work even with 4 MB RAM - and it should work when net-boot is out of a game).
Used Linux kernel is 3.7.10 which should be last kernel directly support i386, however in reality some patching is needed to compile it. So I think that no one ever built/tested this kernel version for/on real i386.
Additional patches & features:
- make kernel compilable - avoid some hard coded cmpxchg in kernel source code.
- cmpxchg, xadd, bswap instruction emulator/simulator - currently I'm not able to force gcc to not emit them. Seems like lack of cmpxchg instruction is one of reasons why Linux dropped support for real i386.
- Skip endbr32 instruction for user space - distributions started to use CET for gcc and even for libraries. endbr32 is handled as a multinop on i686 generations of CPUs (Pentium II for example) but they are not supported on real i386 (result is CPU exception which is handled by patch - not reproducible in QEMU ). You can recompile gcc without support of CET which is one of reasons why Nix is involved.
- Fix floppy issues - patches from Linux kernel 5.17 git.
- Experimental support for ontrack disk manager partitions - ontrack moves real FAT to a different offset.
- Provide Nix based build environment which allows build of Linux kernel with old gcc and perl .
Main goal of this tiny distribution is to be able to boot via network and be used to:
- Deployment of preconfigured DOS disk images - you can prepare basic setup on virtual machine then move it on real hardware.
- Play around with old hardware.
- As a proof that, with some effort, it works & to learn some old/new stuff :).
Currently, it's not possible to run gray386linux on i486 machines (but it's possible to run gray386linux on Cyrix 486DLC and similar CPUs). Are you interested in Linux for i486 machines? Take a look at gray486linux. i486 machines are still able to run actual Linux kernel (2023).
How to get a binary build?
It's easy. Just take a look at bin directory.
Two versions of build has been cancelled because fpu version doesn't add load of bytes (~24 KB) and works on both (non fpu & fpu) machines.
NOTE: gray386linux is mainly source based distribution so binaries can be older than current configuration.
How to build a gray386linux
Tested build environments:
11. Decide how to build
If you want just default build, and you have installed make and bash then you can just type make in src directory. You are done and GOTO 100 . But if you don't like make , you can just type ./graybuild.sh in src directory. In both cases, results will be placed in results directory.
In case you want to make some changes then follow next steps.
20. Get num of cpus
Nix-shell scripts take handle of it.
If you don't want to use nix-shell , just type:
28. Get kernel headers with nix-shell
28. Install kernel headers
make headers_install ARCH=i386 INSTALL_HDR_PATH=../gray386/
29. Leave nix-shell
30. Build user env with nix-shell
40. Build musl libc
CFLAGS="$CFLAGS -I$(realpath "$/../gray386/include")" ./configure --target=i386 --prefix=$(realpath "$/../gray386/")
50. Build busybox
51. (optional) Build dropbear SSH client (+~266 K)
CC="$(realpath $PWD/../gray386/bin/musl-gcc)" ./configure --enable-static --enable-bundled-libtom --disable-syslog --disable-harden --disable-zlib --disable-shadow --disable-utmp --disable-utmpx --disable-wtmpx --disable-loginfunc --prefix="$(realpath $PWD/../gray386/_install/)"
cp dbclient ../gray386/_install/bin
59. Leave nix-shell
60. Build kernel with nix-shell
61. Update .config in kernel directory
There is mapping hidden in .config and you need to change it to UID of user under you compile a kernel.
Then you can do some other changes with:
make -j"$GR_CPUS" ARCH=i386 nconfig
70. In Linux kernel directory
(optional) make -j"$GR_CPUS" ARCH=i386 nconfig
make -j"$GR_CPUS" ARCH=i386 bzImage
80. Exit nix-shell
81. (optional) Test build
You need to have qemu installed.
In kernel directory just run
90. Cleanup build
About
Linux distribution for i386 machines only.
Search Results for "linux i386"
YouHodler is a crypto asset-based “banking” platform that provides an alternative solution to traditional banking. Its platform provides consumers with easy-to-use growth cryptocurrency products, as well as flexibility in managing crypto/fiat financial services.
The premier cloud-based TMS software that makes logistics simple with one login for all inbound and outbound transportation management across parcel, LTL, FTL, ocean, and intl air. Seamless integration into your current tech stack (ERP/ WMS/CRM) and highly configurable to your existing workflows. With connections to 300+ carriers, brokers, & marketplaces, getting the best rates and optimizing shipping processes is easy. Trusted by Toshiba, NewEgg, Forever 21, e-commerce, and top automakers.
GHDL
. generator (LLVM, GCC or, x86_64/i386 only, a built-in one), it is much faster than any interpreted simulator. It can handle very large designs, such as leon3/grlib. GHDL runs on GNU/Linux, Windows and macOS; on x86, x86_64, armv6/armv7/aarch32, aarch64 and ppc64. You can freely download nightly assets, use OCI images (aka Docker/Podman containers), or try building it on your own machine.
gopsutil
gopsutil tag policy is almost same as Semantic Versioning but automatically increases like Ubuntu versioning. gopsutil aims to keep backward compatibility until a major version change. Tagged at the end of the month, but if there are only a few commits, it can be skipped. All works are implemented without cgo by porting C structs to golang structs.
Gotenberg
Gotenberg provides a developer-friendly API to interact with powerful tools like Chromium and LibreOffice for converting numerous document formats (HTML, Markdown, Word, Excel, etc.) into PDF files, and more! Thanks to Docker, you don't have to install each tool in your environments; drop the Docker image in your stack, and you're good to go! The webhook feature allows you to upload the output file to the destination of your choice. There are many options to fit your requirements, from the.
aptly
Aptly allows you to mirror remote repositories, manage local package repositories, take snapshots, pull new versions of packages along with dependencies, and publish as Debian repository. You can try it right now for free, aptly is available both as CLI tool and HTTP REST service. Quickly serve published snapshots over HTTP. Take and update mirrors of any Debian/Ubuntu remote repository. At any point in time, take a snapshot of the mirror to fix the current set of packages. Merge two or more.
Open LMS delivers an effective and engaging learning experience. Open LMS is Open Source at its core. Migrating to Open LMS is simple and easy.
As the largest commercial provider of hosting and support services for the open-source Moodle™ learning platform, we help organizations and institutions deliver great learning experiences without complexities
Exe GNU/Linux
Exe GNU/Linux is a complete operating system image for your PC which can be written to CD, DVD or USB and used in temporary "live" mode or as a permanent installation. Most desktop or laptop PC's can run Exe GNU/Linux as a selectable alternative to or a replacement for their current operating systems. Exe GNU/Linux contains only open-source, free, GPL-licenced software. Exe GNU/Linux live images are based on Devuan GNU/Linux and use the Trinity Desktop Environment (TDE). Versions for i386.
ryanboot
Ryanboot-offical-linux-netbooter is a minimal distribution used to remotely boot other Linux distributions over a network. Aim for more easy to Install/netboot different distribution, now OVER 50+ distro (20210723, still updating) can be boot from their offical (mirror) site or sourceforge.net by only a 50MB iPXE image(usb&iso). TUI customise for: Mirror, Release, Version, Kernel Parameter, TUI/GUI (if available), Auto detection i386/amd64 (if available)
Unofficial Apache OO Debian repository
This project intend to provide an unofficial Debian repository of Apache OpenOffice for i386 and amd64 ports while it's not in official Debian repositories.
GnoppixNG
Gnoppix is a Linux distribution based on Debian, available in for amd64 ,i386 and ARM architectures. Gnoppix is a great choice for users who want a lightweight and easy-to-use with security in mind. Gnoppix was first announced in June 2003. Currently we're working on a Gnoppix version for WSL, Mobile devices like smartphones and tablets as well.
laz4android
Laz4Android is a Lazarus for Android Package. Thanks the FreePascal team and the Lazarus team. Now Laz4Android is only run on Windows.Sorry for this! Last update:2022-08-15 FPC: 3.2.2 (win32/win64/arm-android/aarch64-android/i386-android/x86_64-android/jvm-android) Lazarus:2.2.2 Android NDK: r19c 1.Update to Lazarus 2.2.2 source + FPC 3.2.2 I recommend using laz4android + LAMW(Lazarus Android Module Wizard) to develop android apps. LAMW on this: https://github.com/jmpessoa.
Authentication Cloud faster, easier, and more user-friendly. Let customers access your online services without passwords and costly SMS fees.
Nevis lets you wow your customers, partners, and employees with excellent authentication and authorization convenience. Nevis offers a single, all-encompassing identity and access management solution for all your identity use cases. With its comprehensive CIAM functions, you can offer your privacy-minded consumers an exceptional user experience, personalized interactions, and the level of secure access to your services that is essential for today’s disruptive, digital transformation demands.
Lilidog
Welcome to Lilidog! - Lilidog Linux is a lightweight full featured distribution based on Debian with Openbox. - Versions Full - (Approx. 1300 packages), comes with everything necessary to get started without needing initial extra downloads. I would advise most folks to use the full version if looking for an 'out of the box' computing solution with everything you need. Minimal - (Approx. 1080 packages), has everything the full version does, minus most of the main packages so people can.