computer engineering, linux, and technology banter for the masses
Don't wanna be here? Send us removal request.
Photo
My desktop
Vintage Notebook by Earspl1t
11 notes
·
View notes
Photo
Give me some lovin'
[Arch] [XMonad] The Body It Changes by Earspl1t
9 notes
·
View notes
Photo
DATS ME
Worn & Warm (Arch + XMonad) by Earspl1t
7 notes
·
View notes
Photo
thats me!

XMonad + Arch Linux + Xinerama by Earspl1t
13 notes
·
View notes
Photo
Arch Linux + Xmonad
Check out the animated gif on Reddit and pass me some karma if you approve!
http://www.reddit.com/r/unixporn/comments/1ao7vg/arch_xmonad_flowers_grow_neckbeards_in_the_spring/
87 notes
·
View notes
Photo
Springtime... Arch Linux + XMONAD
https://github.com/windelicato/dotfiles
#linux#desktop#wallpaper#nerd#computer#os#haskell#artwork#painting#archlinux#programming#hack#hacking#digital-vanity
12 notes
·
View notes
Photo
And both together as one...
https://github.com/windelicato/dotfiles
#xmonad#archlinux#linux#wallpaper#digital-vanity#haskell#programming#code#nerd#hack#computer#screenshot#desktop
45 notes
·
View notes
Photo
Same box, Ubuntu 12.10, Cinnamon, TMUX
12 notes
·
View notes
Photo
Arch Linux + XMONAD
72 notes
·
View notes
Link
Looking for a way to get involved with open source? 24 Pull Requests will help you find projects and track your contributions:
There are loads of ways to get involved in an open source project, improving documentation, helping fix existing issues and bugs, improving code quality and test coverage or adding missing features.
[site] [source on GitHub]
17 notes
·
View notes
Photo
Goodbye summer. Still Arch Linux + Xmonad.
Archey + HTOP + IRSSI + NCMPCPP + VIM + GMRUN
2 notes
·
View notes
Text
Encrypted Password Generator for /etc/shadow
Generates encrypted keys for the following encryption algorithms:
MD5
Blowfish
SHA-256
SHA-512
Compile with
gcc pwgen.c -lcrypt -o pwgen
#define _XOPEN_SOURCE #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <pwd.h> #include <string.h> #include <time.h> int main(int argc, const char *argv[]) { // Generate a pseudo random seed for crypt() const char * seedchars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" "abcdefghijklmnopqrstuvwxyz" "123456789./"; const int len = strlen(seedchars); int i; char seed[11] = "$.$........"; srand((unsigned int) time(NULL)); for (i = 3; i < 12; i++) { int r = rand() %len; seed[i] = seedchars[r]; } char *password, *lock, *key; int selection; printf("********************************\n"); printf("| Choose Algorithm |\n"); printf("| |\n"); printf("| 1. MD5 |\n"); printf("| 2. Blowfish |\n"); printf("| 3. SHA-2%6 |\n"); printf("| 4. SHA-512 |\n"); printf("| |\n"); printf("|******************************|\n"); printf("\nSelection:\t"); scanf("%d", &selection); password = getpass("Password:\t"); if (selection == 1) { seed[1] = '1'; lock = seed; key = crypt(password,lock); } else if (selection == 2) { seed[1] = '2'; lock = seed; key = crypt(password,lock); } else if (selection == 3) { seed[1] = '5'; lock = seed; key = crypt(password,lock); } else if (selection == 4) { seed[1] = '6'; lock = seed; key = crypt(password,lock); } else{ printf("Invalid selection. Exiting"); } printf("\nEncrypted Key:\n%s\n", key); return 0; }
0 notes
Text
Espresso Heuristic Logic Minimizer
I bundled up the old espresso program from 1989 and repackaged it. This thing took me a while to find, so I figured I'd post it incase anyone else searching for it could find it a bit easier. It is bundled with the original manpages and examples. This program got me through 2 semesters of digital design. The example is from a project to design the logic behind a 4-way stoplight.
USAGE:
Format truth table to include:
.i = number of inputs
.o = number of outputs
.ilb = input names
.ob = output names
Example:
~$ cat input.tt # Truth Table for Stoplight FSM .i 14 .o 11 .ilb NS ES turn NSR NSY NSG EWR EWY EWG TR TY TG dir0 dir1 .ob NSR NSY NSG EWR EWY EWG TR TY TG dir0 dir1 000--1--------01000000000 000-----1-----00001000001 000--------1--00000001010 001--1--------01000000001 001-----1-----00001000001 001--------1--00000001001 010--1--------01000000000 010-----1-----00001000000 010--------1--00000001000 011--1--------01000000000 011-----1-----00001000001 011--------1--00000001000 100--1--------01000000010 100-----1-----00001000010 100--------1--00000001010 101--1--------01000000001 101-----1-----00001000001 101--------1--00000001010 110--1--------01000000000 110-----1-----00001000010 110--------1--00000001010 111--1--------01000000000 111-----1-----00001000001 111--------1--00000001010 ----1-------0010010010000 ----1-------0110010010001 ----1-------1010010010010 -------1----0010010010000 -------1----0110010010001 -------1----1010010010010 ----------1-0010010010000 ----------1-0110010010001 ----------1-1010010010010 ---1--1--1--0000000100000 ---1--1--1--0100000000101 ---1--1--1--1000100000010 .e
~$ espresso -o eqntott input.tt NSR = (TY&!dir0&dir1) | (EWY&!dir0&dir1) | (NSY&!dir0&dir1) | (TY&!dir1) | ( EWY&!dir1) | (NSY&!dir1); NSY = (NSG); NSG = (NSR&EWR&TR&dir0&!dir1); EWR = (TY&!dir0&dir1) | (EWY&!dir0&dir1) | (NSY&!dir0&dir1) | (TY&!dir1) | ( EWY&!dir1) | (NSY&!dir1); EWY = (EWG); EWG = (NSR&EWR&TR&!dir0&!dir1); TR = (TY&!dir0&dir1) | (EWY&!dir0&dir1) | (NSY&!dir0&dir1) | (TY&!dir1) | ( EWY&!dir1) | (NSY&!dir1); TY = (TG); TG = (NSR&EWR&TR&!dir0&dir1); dir0 = (NSR&EWR&TR&dir0&!dir1) | (NS&!ES&!turn&NSG) | (NS&!turn&EWG) | ( !ES&!turn&TG) | (TY&dir0&!dir1) | (EWY&dir0&!dir1) | (NSY&dir0&!dir1) | ( NS&TG); dir1 = (NSR&EWR&TR&!dir0&dir1) | (!NS&!ES&turn&TG) | (!NS&!ES&EWG) | (!ES &turn&NSG) | (turn&EWG) | (TY&!dir0&dir1) | (EWY&!dir0&dir1) | (NSY &!dir0&dir1);
And VOILA! Simplified boolean expressions.
To install, simply run the INSTALL script, or look through this script to do it yourself. Make sure to make the script executable by running
chmod 755 INSTALL
espresso-modern.tar.gz
2 notes
·
View notes
Text
Power of WGET
There's a server here at school with hundreds of jazz records streaming in real media (.rm) formats. This script crawls the server and downloads the records, converts them to mp3, and id3 tags them in an organized directory system.
This script displays the true power of WGET.
#!/bin/bash URL="http://www.departments.COLLEGE.edu/music/courses/musc" COURSE="$1/music/" CODE="$2-T" ADDRESS="$URL$COURSE$CODE" TRACK=("01" "02" "03" "04" "05" "06" "07" "08" "09" "10" "11" "12" "13" "14" "15" "16" "17" "18" "19" "20" "21" "22" "23") i=0 echo "Enter artist name" read artist echo "Enter record name" read record cd ~/Music/ if [ ! -d "$artist" ]; then mkdir "$artist" fi cd "$artist" mkdir "$record" cd "$record" for j in "" 1 2 3 4 do wget -q "$ADDRESS$j${TRACK[$i]}.rm" while [ $? -eq 0 ] do echo 'CONVERTING RM FORMAT TO WAV' inputfile="$2-T${j}${TRACK[$i]}.rm" outputfile="$j${TRACK[$i]}.mp3" mplayer -really-quiet $inputfile -ao pcm &> /dev/null echo 'CONVERTING WAV FORMAT TO MP3' lame -h -b 256 --quiet audiodump.wav $outputfile i=$(($i+1)) id3v2 -a "$artist" -A "$record" -T $i $outputfile rm -f audiodump.wav rm -f $inputfile echo "DOWNLOADING TRACK $(($i+1))" wget -q "$ADDRESS${TRACK[$i]}.rm" done i=0; done for f in *.mp3 do echo "Song title for $f" read title id3v2 -t "$title" $f done exit
1 note
·
View note
Photo
I can't tell if this is a joke or for serious. Too funny.



VIM Clutch
VIM Clutch is a hardware pedal for improved text editing speed for users of the magnificent VIM text editor (1, 2). When the pedal is pressed down, the pedal types “i” causing VIM to go into Insert Mode. When released, it types and you are back in Normal Mode.
We don’t use VIM…. :-(
115 notes
·
View notes