Jun 23

Call for Recommendations: Linux Distro

Category: Software, Thoughts

Ok here’s the scoop.  I’m starting work on a Linux distro meant to be run as a live OS with persistent changes on a USB flash drive.  The distro is targeted at Computer Science students so they can take the distro with them.  I’m debating building it as a desktop OS as well to be used as a primary distro.

The basic jist is that the distro is meant to be run on lab computers in CS departments and allow access to university resources.  These include things like Windows/CIFS shares, Zephyr/XMPP, and things like that.

Here are some of my current ideas

  • Window Managers

  • e17
    Great window manager, just currently unstable
    KDE
    Already built into the package manager I’m thinking of using, seems to be a dev favorite
    GNOME
    Stable and simple
  • Programming Software

    • emacs/vim (both graphical and console versions)
    • Various programming language integration versions for above editors
    • GNU Compiler Collection (the whole thing, C, ADA, Java, etc)
    • Java JDK (depending on redistribution licensing but it shouldn’t be a problem)
    • Eclipse and Netbeans IDEs with various plugins
    • gdb/DDD
    • dtrace (depending on usability)
    • Various other compilers like GHC and SBCL
    • Developer tools for AIs and such (CommonLisp and PROLOG stuff)
  • Usability Software

    • OpenOffice 3.1
    • Compression software (tar, unrar, 7zip, etc)
    • OpenSSH (obviously)
    • Firefox
    • Rhythmbox
  • Math Software

    • Maxima
    • IT++
    • GNU libmatheval
    • Octave
  • Documentation

    • Free Documentation and tutorials for programming languages and theory
    • Software to cache web pages locally so they can be pulled up without an internet connection
  • Security Software

  • grsecurity/PAX
    Help mitigate attacks against the system and also has the added benefit of forcing the CS Student to code properly and prevents them from doing stuff they shouldn’t be doing
    SELinux
    Again, helps mitigate attacks and prevents the user from doing things with code that he shouldn’t be doing
    ClamAV/chkrootkit/rkhunter
    Just in case :)
  • Package Managers

  • Nix
    I have a preference for Nix because its purely functional (id est, non-destructive) which will help mitigate issues with dependency hell, and also allow easy rollback to previously working software if testing new versions. My issue is that because its purely functional, it’ll use up a lot of drive space. Flash drives should be large enough where this isn’t an issue, but there would probably be the need for a cleanup script that’ll clean out older versions
    Pacman
    This one is good because its on a rolling release system and has lots of packages (pacman is Arch Linux’s package manager), it just doesn’t offer the flexibility of Nix
    APT
    There’s always Debian’s package manager. It could prove to be difficult, however, to run this on a rolling release system because of how its designed. Preferably stay away from this package manager and other staged release package managers

If you like where this is headed, you can help out or you can at least give me some ideas for the OS.  Included software, underlying systems, stuff like that.  Obviously I’d like to use as much F/OSS code as humanly possible.  I’m not opposed to stepping outside of the bounds of F/OSS, but due to licensing regarding redistribution, I figure it’ll be a heck of a lot less of a headache.

No comments

No Comments

Leave a comment

Powered by WP Hashcash