1

(1 replies, posted in Artwork & Screenshots)

lol. I love it.

2

(25 replies, posted in Off Topic / General Chat)

I learned Perl, PHP, and HTML pretty much on my own --  Perl and PHP have pretty good APIs (http://perldoc.perl.org/ and http://www.php.net/manual/en/). HTML tutorials can be found just about anywhere -- Short Order HTML is a great start (old, but great) http://www.amazon.com/Short-Order-HTML- … 0789720493

But as far as real programming languages, C++ used to be the standard in classes (C before that, I think). Now they usually start with Java. The important part is to decide whether you want to start with object-oriented languages. If you've not run into O-O stuff before, you might want to take a look at it before you start learning anything. It usually takes a couple times before it really sinks in.

As far as which to study, Python, Java, and C++ will probably be great, but I'd start with C++ until you feel like you have a good grasp on programming, then move on to one of the others. O'Reilly books are generally very good and available for most languages. They're a little pricey (like all computer books), but they're a great resource and reference guide.

3

(22 replies, posted in Help & Support (Stable))

Regardless of whether you use Adam's Kernel (the one everyone has been talking about), definitely download the eee-control package from the repositories. It helps with fan control and a variety of other things. As an alternative, go for the elmurato scripts.

The eee-control package should give you the boost in performance and battery life you need, as well as the hot key functionality until you can get the kernel.

4

(4 replies, posted in Introductions)

I just realized I never introduced myself, though I've been around (and by that I mean mostly reading and learning) for a few months now.

About me: A Bioinformatics / Biophysics grad student. My focus is in both virology and protein modelling, so not much direct application to #!.

Skills: I'm a decent hat at programming -- nothing too special. Mainly Perl (I know, *boo hiss* from all the "real" programmers), but I know my way around most of the majors. I've never done and OS development, so I'm pretty excited to get involved. I've also done a bit of graphic design, too.

In short, I'm no expert, but I have my niche. I'm a bit of a distro junkie...I've been a bit of  a distro junkie. I love #! -- both as an OS and a community. I look forward to getting more involved and doing what I can to help!

Oh, and I love all things Celtic, books, muppets, and long walks on the beach. Actually, that's a lie...the OCD part of me despises sand. And dirt.

5

(11 replies, posted in Tips, Tricks & Scripts)

Nice. Guess that's why Firefox is so much faster since I upgraded. Thanks for the tip.

6

(3 replies, posted in Help & Support (Stable))

I had a similar problem on my EEE when I first got it. Turns out there were two problems I had:

1) Sleeping or hibernation will screw up the connection when on campus -- for a large network like that, they refresh your connection info every time you log on. Unfortunately when you resume, the OS may try to use the same connection info while the network has moved on. A simple reboot solves this -- however, this doesn't sound like your issue.

2) I've done this a few times myself -- accidentally turning off WiFi using the Fn hotkeys. I've also (with no clue how) accidentally turned of WiFi in the Bios. Next time you reboot, drop by the bios and make sure the WiFi is enabled.

Hope this helps.

I've just turned off compositing on my EEE -- doesn't work too well with the Atom. Plus, Firefox is a bit slow as it is (on the EEE anyway).

You could always give Midori or Epiphany a try instead of Firefox. I just use the faux transparency for Terminator, Conky, Tint2, etc. Since I try not to have more than a couple windows open per desktop anyway, this suits my needs on my EEE.

Again, it's just me. I know these are just suggestions rather than fixes, but I hope it helps. smile

8

(1 replies, posted in Tips, Tricks & Scripts)

Nice! It's a good idea...I've always hated typing in the repeated junk.


A couple of ideas:
1) It's a good idea to include warnings and strict rules:

#!/usr/bin/perl -w
use strict;

2) I like to toss in

use Carp;

to get a bit more feedback for debugging

3) Perl has a built in chmod function: http://perldoc.perl.org/functions/chmod.html

Essentially its

chmod 0755 $file

4) I'd probably use

exec

over

system

since you don't really need to come back to the script -- just end it and forget about it.

5) However, that means you'll want to close the file immediately after you write to it. Another solution (to make Perl more forgivable, and also a little better) would be to change your file handle:

open(my $fh, '>', $file);
print $fh '#!...'."\n".'use strict'."\n";
close($fh);

You use the variable just as you would any other filehandle, but it gets included in garbage collection (i think)...either way, it's a little cleaner. You also don't need the append if the file hasn't been created yet.

Good code...I'll have to use this for template creation myself. Kudos!

I have uploaded the 32-bit main version up...here is the link:

http://crunchbang.squeezeoflime.com/iso … 1.i386.iso

or just visit this [rudimentary] site:

http://crunchbang.squeezeoflime.com/

for a list of all available isos. I'll upload others as I get them.

Trying to get the iso now  -- I don't have unlimited bandwith, but should be enough to help ride the wave. I'll post the links asap.

11

(9 replies, posted in Help & Support (Stable))

Midori is great and pretty fast, though frustratingly uncustomizable (at least with out editing GTK stuff -- I haven't  looked into it that much). I'll have to give Epiphany  a try.

I'd love to help -- just joined Launchpad. I've never done any OS development, but I'd love to get my hands dirty. I have a good amount of programming / project development experience, just lacking a bit in the time area (grad school tends to do that).

How does this work? Are there particular projects or just look at known bugs and try to fix 'em?

I'm a bit of an eclectic when it comes to Linux -- I can't help trying out different distributions and changing things up. Since I've come to #!, I can't bring myself to go anywhere else smile.

13

(59 replies, posted in Tips, Tricks & Scripts)

Regarding the license, I am quite relaxed about it,

Cool. Well, let me know if you change your mind. There needs to be a works cited to a license smile.

P.S. Muppets Rule!

nice 8^).

14

(59 replies, posted in Tips, Tricks & Scripts)

I really like this script! Thank you so much for providing it.

I wanted the ability to have a random wallpaper with multiple possible directories and other possibilities than just stretched, so I rewrote your script to include these. It's not too terribly efficient; so long as the directories are small, it shouldn't be a problem.

I put mine in my /usr/bin/ folder, so I can call it like this:

$ rotate-wallpaper-2 <format> <directory> <format2> <directory2> ... <formatn> <directoryn>

where format is either stretched or centered
i.e.

$ rotate-wallpaper-2 stretched ~/pictures/desktops/ centered ~/pictures/xkcd/

EDIT: Make sure you have the ending '/' on the directory. It's late and my brain is fried, so I'll have to rewrite to handle this later.

It's not quite as refined as the original (I don't check for the command line flags -- it basically takes a format then the applicable directory and so on), but it does check that each directory is a directory, and it makes sure each input is either .jpg or .png.

I have only minimally tested this on my own system, so let me know if there are any problems.

Also, this is my first "submission" on any sort of project other than my own personal projects, so I'm not really sure how the licensing works -- being in the science field, I hesitate to put Philip's name as an owner on anything he has not approved, but I'm not sure if it works that way here. Parts of it are taken directly from his in order to save time, so please let me know how to do this smile.

Let me know what you think!

#!/bin/bash

# Author: 
#     Stephen J Bush <muppetjones@gmail.com> 
# Copyright:
#   © 2009 Stephen J Bush <muppetjones@gmail.com>
#
# This script is a rewrite of rotate-wallpaper from 
# Philip Newborough <corenominal@corenominal.org>. 
# Much of this script was copied directly from his.
#
# License:
#   This program is free software; you can redistribute it and/or
#   modify it under the terms of the GNU Lesser General Public
#   License as published by the Free Software Foundation; either
#   version 2.1 of the License, or (at your option) any later version.
#
#   This program is distributed in the hope that it will be useful,
#   but WITHOUT ANY WARRANTY; without even the implied warranty of
#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
#   Lesser General Public License for more details.
#
#   You should have received a copy of the GNU Lesser General Public
#   License along with this library; if not, write to the Free Software
#   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
#
#   On Debian systems, the complete text of the GNU Lesser General Public
#   License V2.1 can be found in the file `/usr/share/common-licenses/LGPL-2.1'.
#-------------------------------------------------------------------------------  

    COUNT=0
    IMAGES=[]
    IMG_TYPE=[]
    TYPE_COUNT=0
    for i in "$@"; do
        if [ -d "$i" ]; then
            for j in "$i"*; do
                FILE_TYPE=$(file -i "$j")
                if [ "$FILE_TYPE" = "$j: image/png" ] || \
                [ "$FILE_TYPE" = "$j: image/jpeg" ];then
                    IMAGES["$COUNT"]=$j
                    IMG_TYPE["$COUNT"]=$TYPE_COUNT
                    COUNT=$((COUNT + 1))
                fi

            done
        fi
        if [ ! -d "$i" ]; then
            TYPE_COUNT=$((TYPE_COUNT + 1))
            TYPE["$TYPE_COUNT"]=$i
        fi
        
    done

     # Sanity check. Does config directory exist?
    if [ ! -d ~/.config/rotate-wallpaper-2 ]; then
        mkdir ~/.config/rotate-wallpaper-2
    fi
# Sanity check. Does config file exist?
    if [ ! -f ~/.config/rotate-wallpaper-2/count ]; then
        touch ~/.config/rotate-wallpaper-2/count
        echo "0" > ~/.config/rotate-wallpaper-2/count
    fi

# Get  wallpaper number
    PREVIOUS_WALLPAPER="$(cat ~/.config/rotate-wallpaper-2/count)"
    PICK_IMG=$RANDOM
    let "PICK_IMG %= $COUNT"

# ensure it's a new one
    while [ "$PREVIOUS_WALLPAPER" == "$PICK_IMG" ]; do
        PICK_IMG=$RANDOM
        let "PICK_IMG %= $COUNT"
    done

#echo $PICK_IMG $PREVIOUS_WALLPAPER

# implement
    if [ ${TYPE[${IMG_TYPE[$PICK_IMG]}]} == "centered" ]; then
        #echo "centered!" ${IMAGES["$PICK_IMG"]}
        nitrogen --set-centered "${IMAGES[$PICK_IMG]}"
    fi
    if [ ${TYPE[${IMG_TYPE[$PICK_IMG]}]} == "stretched" ]; then
        #echo "stretched!"
        nitrogen --set-stretched "${IMAGES[$PICK_IMG]}"
    fi

    echo "$PICK_IMG" > ~/.config/rotate-wallpaper-2/count
exit