#!/bin/sh setVar() { if [ ! "$value" = "" ]; then name=`echo "$name" | sed 'y:-\[\]:_____:'` value=`echo "$value" | sed 's:":\\\":g'` export $name="$value" fi } #convert true/false to 1/0 bool() { if [ ! "$1" = "" ]; then if [ "$1" = "True" ]; then cmd="$cmd $2 1" else cmd="$cmd $2 0" fi fi } str() { if [ ! "$1" = "" ]; then cmd="$cmd $2 \"$1"\" fi } convert_desktop_to_eap() { echo "Adding $1 to e menu" for l in `cat $1`; do #on empty line clear vars if [ "$l" = "" ]; then #grab previous var if it exists setVar name="" value="" else #if an = is in the line it's a name/value pair if echo "$l" | grep -q "="; then #grab previous var if it exists setVar name=`echo "$l" | cut -d "=" -f 1` value=`echo "$l" | cut -d "=" -f 2-` else #if previous value assume this is a continuation if [ ! "$value" = "" ]; then value="$value $l" fi fi fi done setVar cmd="" #set up options bool "$StartupNotify" -set-startup-notify str "$Name" -set-name str "$Comment" -set-comment str "$Exec" -set-exe if [ ! "$cmd" = "" ]; then eapFile="$PATH_TO_EAP/$2" if [ -e $eapFile ]; then echo "EAP file for $2 already created"; else echo "Converting $1 to $2" #cp ~/.e/e/applications/all/aterm.eap gpe-othello.eap ##empty out eap file ##enlightenment_eapp | grep -- -set- | cut -d " " -f 3 | xargs -iCMD enlightenment_eapp gpe-othello.eap CMD \"\" #enlightenment_eapp gpe-othello.eap -del-all cat < /tmp/gpeEap.edc images { image: "$Icon" COMP; } collections { group { name: "icon"; max: 48 48; parts { part { name: "image"; mouse_events: 0; description { state: "default" 0.0; aspect: 1.0 1.0; image.normal: "$Icon"; } } } } } EOF edje_cc --image_dir "$PATH_TO_PIXMAPS" /tmp/gpeEap.edc "$eapFile" rm /tmp/gpeEap.edc cmd="enlightenment_eapp \"$eapFile\" $cmd" #pipe command in sh to allow it to re-interpret quotes echo $cmd | /bin/sh -s fi if `echo "$Categories" | grep -q "SystemSettings"`; then dir="Settings" elif `echo "$Categories" | grep -q "PIM"`; then dir="PIM" elif `echo "$Categories" | grep -q "Network"`; then dir="Network" elif `echo "$Categories" | grep -q "Games"`; then dir="Games" elif `echo "$Categories" | grep -q "Game"`; then dir="Games" elif `echo "$Categories" | grep -q "AudioVideo"`; then dir="Multimedia" elif `echo "$Categories" | grep -q "Panel"`; then dir="Utility/Panel" elif `echo "$Categories" | grep -q "Utility"`; then dir="Utlity" else dir="" fi #dir=`echo "$Categories" | sed 'y:;:/:'` mkdir -p "$PATH_TO_E_GPE/$dir" orderFile="$PATH_TO_E_GPE/$dir"/.order add=1 if [ -e "$orderFile" ]; then if grep -q "$2" "$orderFile"; then echo "$2 is already in the $dir menu" add=0 fi fi if [ "$add" -eq 1 ]; then echo "Adding $2 to $dir menu" echo "$2" >> "$orderFile" fi fi } PATH_TO_DESKTOP="/usr/share/applications" PATH_TO_PIXMAPS="/usr/share/pixmaps" PATH_TO_EAP="/home/root/.e/e/applications/all" PATH_TO_E_GPE="/home/root/.e/e/applications/favorite/GPE" if [ ! -d $PATH_TO_E_GPE ]; then mkdir -p $PATH_TO_E_GPE fi if [ ! -d $PATH_TO_EAP ]; then mkdir -p $PATH_TO_EAP fi cd "$PATH_TO_DESKTOP" for f in `ls *.desktop`; do eap=`echo "$f" | cut -d . -f 1` convert_desktop_to_eap "$PATH_TO_DESKTOP/$f" "$eap.eap" done