Byzantium v0.1a (Scarab) Released!
Approved for: GENERAL RELEASE, DISTRIBUTION UNLIMITED
Project Byzantium, a working group of HacDC, is proud to announce the release of v0.1 alpha of Byzantium Linux, a live distribution of Linux designed to fulfill a crucial role in the evolution of the Internet. That role is a rapidly deployable ad-hoc wireless mesh network which can augment or replace the current telecommunications infrastructure in the event that it is knocked offline (for example, due to a natural disaster) or rendered untrustworthy (widespread surveillance or disconnection by hostile entities). Unlike other mesh networking projects Byzantium was designed to be run on any x86 computer with at least one 802.11 a/b/g/n wireless interface. Byzantium can be burned to a CD- or DVD-ROM (the .iso image is just over 300 megabytes in size), booted from an external hard drive, or can even be installed in parallel with an existing operating system without risk to the user's data and software. Byzantium Linux will then act as a node within the mesh and will automatically connect to other mesh nodes and act as an access point for WiFi-enabled mobile devices.
THIS IS AN ALPHA RELEASE! Do NOT expect Byzantium to be perfect. Some features are not ready yet, others need work. Things are going to break in weird ways and we need to know what those ways are so we can fix them. Please, for the love of LOLcats, do not deploy Byzantium in situations where lives are at stake.
FEATURES:
-
Binary compatible with Slackware v13.37, so existing packages can be converted with a single command.
Able to act as a gateway to the Internet if a link is available.
Linux kernel v2.6.38.8
Drivers for dozens of wireless chipsets
KDE v3.5
LXDE (2010 release of all components)
Mplayer
GCC v4.5.2
Perl v5.12.3
Python v2.6.6
Firefox v4.0.1
X.org v7.4 (? - hard to tell because each module has its own release code)
Custom web-based control panel
SYSTEM REQUIREMENTS (to use)
-
Minimum of 512MB of RAM
i586 CPU or better
CD- or DVD-ROM drive
BIOS must boot removable media
At least one (1) 802.11 a/b/g/n interface
SYSTEM REQUIREMENTS (for persistent changes)
-
The above requirements to use Byzantium
2+GB of free space on thumbdrive or harddrive
WHAT WE NEED:
-
Developers.
Developers!
DEVELOPERS!
No more Bill Ballmer impersonations.
People downloading and running Byzantium to find bugs and tell us where the problems are so we can fix them.
People filing bug reports on our Github page. We can't fix what we don't know about!
People submitting patches.
People booting Byzantium and setting up small meshes (2-5 clients) to tell us how well it works for you with your hardware. We have a hardware compatibility list on our wiki that needs to be expanded.
People who can help us translate the user interface. We especially need people fluent in dialects of Chinese, Arabic, Farsi, and Urdu.
People to help us write and translate documentation.
Homepage (website coming soon)
Download sites
CODA:
You are probably wondering what, if any relevance this has to Eclipse Phase. One of the biggest inspirations for Project Byzantium was the Mesh of Eclipse Phase, and it is likely that, had a few of us not fallen in love with the RPG we would never have remembered learning about mobile IP or mesh routing protocols in undergraduate network programming class. So, we thank everyone who worked on Eclipse Phase for all of your hard work.
Unfortunately, most of my coding skills are in the C languages, MySQL and Javascript, though I am learning Python and am at least nominally skilled at shell script. I might be more useful in documentation for the time being.
Agreed. Some means of maintaining decentralized networks, with every Byzantium node being capable of acting as a server would be an interesting way to maintain communication when the network is cut off from the greater internet. So users might be able to use such programs as IRC (which if memory serves is decentralized) or eMule to interlink with users on whatever size topology can be maintained.
It might also be wise to make Byzantium capable of caching parts of the internet, so that internet users can at least view a backup of websites while the network is cut off from the world. How you might design Byzantium to determine which parts of the internet to cache, I have no clue.
For rapid shutdown, steps can be taken to ensure that the operating system's integrity can be maintained even with power being cut. For small hard drives, the current configuration works quite well. You might want to also make a stripped-down version of Byzantium down the line that is capable of being started via disk, then allowing that disk to be removed so that the entire OS is simply held on RAM until shutdown (of course there will have to be a minimum requirement, but I'm sure that with work you can get it below Windows XP requirement levels).
For larger hard drives and major nodes that such groups might set up, parity code combined with RAID support or even the capability for "false RAID" data storage (mirrored storage of data on a single hard drive; a friend once jokingly called it SLED, for Single Large Expensive Drive, but I don't think he invented that term) would do wonders for making quick shutdown an easy task. This support for large hard drives would also be very handy, should you implement the internet cache I was mentioning earlier.
No, I can't say I am. I will probably join it soon.
If that's the case, this might call for some new chat protocol. This mesh network would provide an excellent testing ground for a truly decentralized chat network that has its backbone built entirely on these mesh servers (and anything else on the internet that is running the chat software).
I would recommend disabling that feature with a live install, and making it active only on an actual hard drive install. Web caching is very memory-intensive, and it could potentially act like a memory leak for a live install (as the caching rapidly eats up RAM without freeing it until shutdown or restart).
Probably for the best. You might want to wait until beta before rolling out a feature like that.
D'oh! I forgot about journaling file systems. EXT4 is probably the best course, at least so long as there are still plans to make it defragmentable while live (I don't think they've finish building that feature yet).







This is an awesome idea, and one I absolutely hope you guys can get off the ground. I haven't done any OS coding before, but if there's anything I might be able to do to help, I'd like to.
On a secondary note, I have a rather Extropian suggestion for this OS; you might want to make this capable of secondary anonymous internet protocols such as i2p, Tor, Freenet, and others that I can't remember; after all, if you are trying to make a mesh system that is more durable than currently existing wireless topologies, you might as well go the extra mile and make it feasible for users to be more trace resistant as well (one way to take down a network is to find its users).
"Question with boldness even the existence of a god; because, if there be one, he must more approve the homage of reason, than that of blindfolded fear." - Thomas Jefferson, Letter to Peter Carr, 1787
"That sounds like heresy. We're going to wipe you from the history books for that crap!" - Texas Board of Education, Ruling on March 12th, 2010