Archive for the 'Software' Category

Call for Recommendations: Linux Distro

June 23rd, 2009 | 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

Ubuntu e17 install

February 12th, 2009 | Category: Software

e17 is a rocking WM. Its lightweight and has all kinds of crazy cool stuff. Unfortunately there aren’t any stable releases and binaries tend to be hard to come by.

I wanted to slap e17 on my laptop which is running Ubuntu 8.10 Intrepid Ibex, and there exist scripts like easy_e17 to simplify the process but I found it just complicated and convoluted things. So, I just opted to do it manually.

The e17 User’s Guide is actually the best starting place.

From there its just compile and follow instructions. Also you’ll need to create a way to start e17 when your PC boots. I already had GDM installed and working so I just did the GDM Install (for Intrepid the path is /usr/share/xsessions). You’ll need the enlightenment.desktop file which, if you installed to the default location, is in /usr/local/share/xsessions. Just copy that file into the /usr/share/xsessions folder then log out. Hit the Sessions button at the login window and select Enlightenment. Should be good to go.

Needless to mention, after you run the autoconf script, you can change your CFLAGS in the Makefile. DO NOT DO THIS IF YOU ARE UNFAMILIAR WITH USING GCC CFLAGS. If you are familiar, I also assume you know where to get your CFLAGS, if not, the usual sources have them.

Again, don’t edit your CFLAGS if you don’t know what this does or how to use it. e17 will not run or might have adverse effects on your system if you specify incorrect CFLAGS.

I take no reponsibility for your install.

e17 is lightening fast and it works great too. If you have 2-3 hours then I recommend this (you can probably do it a lot faster but this is a pretty good time to set aside, just for playing with it if nothing else).

Keep in mind that e17 is also technically experimental software, and that tons of work is always being done on it. You can repeat this build and install process however often you want.

No comments

My Five Points of an Ideal OS

December 08th, 2008 | Category: Software, Thoughts

So there are plenty of operating systems out there and more are gaining ground.  OSX and Linux are really starting to punch holes in Microsoft’s to-date stranglehold on the consumer/business desktop OS market, but these OS’s are not without their own problems.

First OSX.  Lets step through my issues with OSX step by step.  First is that OSX is based on BSD-UNIX (and the Mach kernel), namely FreeBSD, a operating system family emphasizing F/OSS, and while this in and of itself is not a problem, what Apple did with it, is.  OSX was turned spawned out of not only BSD-UNIX but also numerous other F/OSS projects that then formed a good portion of the basis for OSX.  Apple then essentially threw a pretty GUI on it, and made it so it will only run on their proprietary hardware.  I know there are other aspects of OSX, but I cannot get past this part because it totally circumvents the entire F/OSS model and philosophy.  Second, Apple’s OSX is horribly insecure.  Yeah, few virus’s exist for OSX but that’s because it’s more obscure than anything else.  Heck Vista was called more secure than OSX and you may be asking why this is.  Well, a lot of the open source codebase that comprises OSX hasn’t been updated in huge amounts of time.  Furthermore, OSX doesn’t do any modern sort of heap/stack/library protection or randomization.  It inherits a lot of UNIX’s security, but its legacy security.  It really needs to be brought up to date.  Finally, my last problem with OSX, is that Apple doesn’t contribute any F/OSS back to the F/OSS community.  I would be a hell of a lot less critical of Apple Computer if they simply contributed back to the F/OSS community.  It could be anything really, from simple tools to make life easier on UNIX, to open-sourcing their filesystem, to even making OSX/UNIX application interop easier, but none of this has ever come to fruition.  Plus, it seems like in general, Apple users have something crammed up where the sun doesn’t shine about F/OSS (example).  This isn’t always the case but seriously, loop-holing around BSD style licenses is one thing, but flat out ignoring the GPL is just not cool.

Read more

No comments

A correction on Java

May 04th, 2008 | Category: Software

So I have a correction/confession on my prior comments about Java. I’m currently near the tail-end of my latest semester in college and two of my classes(one focuses on C++ and the other on Java) are pounding me down with homework at the moment.

So I have a confession, Java really isn’t that bad. On the contrary, it’s actually quite good in my opinion. What I meant by my statement is mostly because of my hatred of doing manual GUI’s in Java(I haven’t attempted them in C++). Ever since then I’ve found Visual Editor in Eclipse and the NetBeans GUI editor and both have been promising.

But as it were, more updates after I finish this->semester. This includes gaming stuffs, and more satire, projects, etc.

Also I hope I can ditch my full-time job for a part time at some point.

No comments

The REAL difference between C++ and Java

April 27th, 2008 | Category: Satires, Software

Some people argue about the difference between C++ and Java, well, I think I’ve finally figured it out.

With C++, the experience is ultimately rewarding. Sure you want to beat your head in with a slice of lemon, wrapped around a large gold brick(even though that’s considered enjoyable for some people); but in the end, it makes you feel like a king of computers. You finally shake off that last compiler error and finalize the debugging and you feel like all 1337 having done so, ever the more confident until you sit down for another session with it.

Java, by contrast, makes you feel like you’ve just been halfway through brain surgery and the surgeon went for lunch, so no all you’re left with is the janitor and a pair of rats, who have found their way to your brain after trying to flee from the janitor attempting to smash them. Even once you DO finish with the compiler(which is stupidly annoying), and take care of the few odd bugs(you WON’T be able to fix them all lest you risk more compiler errors) you feel like a couple of Ewoks are using your once shiny helmet as a musical drum.

Even so, I guess it’s possible to accomplish a lot with Java, still, doesn’t stop it from being annoying.

No comments