Conky Slideshow

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
k3ttc4r
Beiträge: 6
Registriert: 24.07.2009 11:25:24
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Bremen
Kontaktdaten:

Conky Slideshow

Beitrag von k3ttc4r » 29.07.2009 22:30:27

Hallo!

Ich bin zu faul das ganze neu zu schreiben, also bekommt ihr hier eine 1:1 Kopie von meiner Site. Zu finden ist das ganze also Wort für Wort auch unter http://linuxian.net/artikel/conky-teil- ... cript.html

Ich habe mich in Conkys Image-funktion verliebt, und mich sogleich daran gemacht, ein Script zu entwerfen, das mir eine kleine Slideshow auf meinem Desktop kreiert.

Wie ihr das auch könnt? Ganz einfach. Hier ist das Script:

Code: Alles auswählen

#!/bin/sh
 
##########################################################################
##               conky slideshow by Christian Brassat                   ##
##		                 a.k.a.					##
##    __         __    __    __           __ __                         ##
##   /\ \      /'__`\ /\ \__/\ \__       /\ \\ \                        ##
##   \ \ \/'\ /\_\L\ \\ \ ,_\ \ ,_\   ___\ \ \\ \    _ __               ##
##    \ \ , < \/_/_\_<_\ \ \/\ \ \/  /'___\ \ \\ \_ /\`'__\             ##
##     \ \ \\`\ /\ \L\ \\ \ \_\ \ \_/\ \__/\ \__ ,__\ \ \/              ##
##      \ \_\ \_\ \____/ \ \__\\ \__\ \____\\/_/\_\_/\ \_\              ##
##       \/_/\/_/\/___/   \/__/ \/__/\/____/   \/_/   \/_/              ##
##                                                                      ##
##                               v 0.0.2                                ##
##                          GNU GPLv3 2009                              ##
##########################################################################
 
##########################################################################
# Settings
##########################################################################
 
directory="***DIRECTORY***"    # Directory containing the script and the pictures
geometry="400x300"             # Max Geometry of the pictures in the slideshow
 
##########################################################################
# Script (do not change unless you know what you're doing)
##########################################################################
 
# Generates the specified directories
mkdir -p -v $directory/pics 
 
# Converts the image files for conky to use
cp -v * $directory/pics
mogrify -format png -resize $geometry $directory/*
rm -v -f $directory/*.jpg
 
# Creates an array from all pictures
files=($directory/pics/*.*)           	# create an array of the files.
N=${#files[@]}                     	# Number of members in the array
((N=RANDOM%N))
randomfile=${files[$N]}
 
# Sets picture from random file
cp -v $randomfile $directory/current.png
 
# Generates the Script itself
touch $directory/slideshow
echo "#!/bin/sh
 
##########################################################################
##               conky slideshow by Christian Brassat                   ##
##				v 0.0.2					##
##                           aka. k3ttc4r                               ##
##                          GNU GPLv3 2009                              ##
##########################################################################
 
##########################################################################
# Settings
##########################################################################
 
directory='$directory'		    	# Directory containing the script and the pictures
 
##########################################################################
# Script (do not change unless you know what you're doing)
##########################################################################
 
# Creates an array from all pictures
files=(\$directory/pics/*.*)        # create an array of the files.
N=\${#files[@]}                     	# Number of members in the array
((N=RANDOM%N))
randomfile=\${files[\$N]}
 
# Sets picture from random file
cp \$randomfile \$directory/current.png
" > $directory/slideshow
chmod -v +x $directory/slideshow
 
exit
Öffnet dieses Script in einem Texteditor. Unter Settings noch eben schnell konfigurieren - bei directory gebt ihr den Pfad ein unter welchem das Skript und die Bilder gespeichert werden sollen, unter geometry die gewünschte Größe der Bilder. Dann speichert die Datei, und im Terminal macht ihr mit

Code: Alles auswählen

    chmod +x ***DATEI***
daß sie als Programm ausgeführt werden kann.

Nun (immer noch im Terminal) in das Verzeichnis wechseln, in dem sich die Bilder, die ihr benutzen wollt, derzeit befinden. Dann gebt ihr dort den Pfad der Datei ein, die ihr grade bearbeitet und gespeichert habt. Das Script kopiert und resized nun alle Bilder und erzeugt die nötige Scriptdatei, die wir gleich in Conky aufrufen werden. Und das alles vollautomatisch!

Dieses Script könnt ihr nun in Conky verwenden, in dem ihr diese zwei Variablen zu eurer .conkyrc hinzufügt:

Code: Alles auswählen

    ${execi ***GEWÜNSCHTER INTERVALL*** ***PFAD AUS DER DATEI OBEN***/slideshow}
    ${image ***PFAD AUS DER DATEI OBEN***/current.png}
Viel Spaß noch damit!

changelog:
v 0.0.2 - unnötiger cd call entfernt
besucht the|linuxian

Benutzeravatar
catdog2
Beiträge: 5352
Registriert: 24.06.2006 16:50:03
Lizenz eigener Beiträge: MIT Lizenz

Re: Conky Slideshow

Beitrag von catdog2 » 31.07.2009 23:14:56

Das ist ein Perfekter Kandidat fürs Wiki
Unix is user-friendly; it's just picky about who its friends are.

Benutzeravatar
k3ttc4r
Beiträge: 6
Registriert: 24.07.2009 11:25:24
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Bremen
Kontaktdaten:

Re: Conky Slideshow

Beitrag von k3ttc4r » 01.08.2009 13:00:54

Echt, findest Du? So wahnsinnig gut kam mir das Ding dann doch nicht vor, aber wenn du meinst mach ich mir mal Gedanken drüber das zur Wiki hinzuzufügen..
besucht the|linuxian

Antworten