Hallo Community,
nachdem gerade eine Frage bzgl. einer Benutzerverwaltung in Pidgin kam, habe ich kurzerhand ein kleines Skript geschrieben, das das mehr oder weniger gut erledigt. Vielleicht findet es noch jemand nützlich, daher stelle ich es mal hier rein. Mit dem Skript kann man in einem System-Benutzerkonto mehrere Pidgin-Benutzerkonten führen, in denen jeweils mehrere IM-Konten vereinigt sind. User-Case: Die ganze Familie nutzt den PC von einem Benutzerkonto aus, z.B. um auf die gleichen Dateien zugreifen zu können, möchten sich aber unter unterschiedlichen Accounts bei Pidgin anmelden können.
Was schon funktioniert: Auswahl eines Kontos aus einer Liste von drei Profilen beim Start von Pidgin. Umbenennen der Konten durch Editieren der Skriptdatei.
Was noch nicht funktioniert: Hinzufügen und Entfernen von Konten, Umbenennen aus der GUI heraus.
Und hier kommt das Skript:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | #!/bin/bash ################################################### ## Dieses Skript erlaubt die Verwendung mehrerer ## ########### Benutzerprofile in Pidgin. ############ ################################################### ################################################### ## Hier können die Profilnamen angepasst werden. ## ################################################### # PROFIL1="Profil 1" # PROFIL2="Profil 2" # PROFIL3="Profil 3" # # ################################################### # Wenn der Profilordner noch nicht existiert, erstelle ihn und lege drei leere Profildateien an. Erstelle außerdem eine Sicherheitskopie von ~/.purple/accounts.xml: if [ ! -d $HOME/.pidgin-profiles ] then cp $HOME/.purple/accounts.xml $HOME/.purple/accounts.xml_bak zenity --info --text "Es scheint, als wäre es der erste Start von Pidgin-Profiles. Die Konfigurationsdatei $HOME/.purple/accounts.xml, die die Benutzerkonten-Einstellungen enthält, wurde nach $HOME/.purple/accounts.xml_bak gesichert. Wiederherstellung mit 'mv $HOME/.purple/accounts.xml_bak $HOME/.purple/accounts.xml'" mkdir $HOME/.pidgin-profiles touch $HOME/.pidgin-profiles/Profil1.xml touch $HOME/.pidgin-profiles/Profil2.xml touch $HOME/.pidgin-profiles/Profil3.xml fi # Wenn der Ordner, in dem die Information über das zuletzt benutzte Profil gespeichert wird, nicht existiert, erstelle ihn und setze Profil1 als zuletzt benutzt: if [ ! -d $HOME/.pidgin-profiles/last-used ] then mkdir $HOME/.pidgin-profiles/last-used touch $HOME/.pidgin-profiles/last-used/Profil1 fi # Erstelle eine Zenity-Liste mit drei Einträgen, speichere die Wahl des Benutzers in AUSWAHL: AUSWAHL=` zenity --list --radiolist --width=300 --height=200 --text "Wählen Sie ein Profil aus der Liste:" --title "Profile" --column="" --column=Profil --column=Profilname \ \"\" Profil1 "${PROFIL1}" \ \"\" Profil2 "${PROFIL2}" \ \"\" Profil3 "${PROFIL3}" \ ` LASTUSED=`ls $HOME/.pidgin-profiles/last-used` # Ermittle, welches Profil zuletzt benutzt wurde if [ ! -z "$AUSWAHL" ];then # Aktion nur, wenn nicht auf "Abbrechen" geklickt wird cp $HOME/.purple/accounts.xml $HOME/.pidgin-profiles/${LASTUSED}.xml # Speichere das zuletzt benutzte Profil im Profilordner cp $HOME/.pidgin-profiles/${AUSWAHL}.xml $HOME/.purple/accounts.xml # Schiebe das in der Liste gewählte Profil in den Pidgin-Ordner rm $HOME/.pidgin-profiles/last-used/* # Säubere die Information über das zuletzt benutzte Profil touch $HOME/.pidgin-profiles/last-used/$AUSWAHL # Speichre die Information über das zuletzt benutzte Profil pidgin # Starte Pidgin cp $HOME/.purple/accounts.xml $HOME/.pidgin-profiles/${AUSWAHL}.xml # Speichre nach dem Beenden von Pidgin das aktuelle Profil nochmals im Profilordner, um Änderungen während der Benutzung zu berücksichtigen fi |
Feedback ist natürlich erwünscht. ☺
MfG PhotonX