onsdag 24 augusti 2011

kryptera fil

Krypterar en fil:
openssl des3 -salt -in infile.txt -out krypterad_fil.txt


Dekrypterar till en fil
(OBS! Man måste ange ett annat namn på -out annars förstörs originalfilen!)
openssl des3 -d -salt -in krypterad_fil.txt -out normalfile.txt

Dekrypterar till stdout:
openssl des3 -d -salt -in encryptedfile.txt

söndag 22 maj 2011

Egna skript i dolphin

(Nu har jag bytt till Kubuntu)

Skapar ett till alternativ under åtgärder (Skapa kopia) i menyn som dyker upp när man högerklickar på en fil.

Man får namnge en ny kopia av filen så om man vill göra en kopia i samma mapp som man är i och ge den ett valfritt namn så är det bara ett klick bort.

i mappen
~/.kde/share/kde4/services/

skapade jag filen backupFile.desktop. Det är viktigt att den slutar på .desktop

Detta ska filen inehålla:
[Desktop Entry]
Type=Service
ServiceTypes=KonqPopupMenu/Plugin
MimeType=application/octet-stream;
Actions=backupFile

[Desktop Action backupFile]
Name=Skapa kopia
Icon=background
Exec=~/bin/cp_backup_dialog.sh %u

MimeTypen som jag har angett gör att meny alternativet Skapa kopia visas för alla sorters filer men inget annat.
Actions visar vilka actions som finns tillgängliga. Här finns det bara en tillgänglig, backupFile.

Icon visar en icon annars visas bara text i menyn.
Exec=~/bin/cp_backup_dialog.sh %u kör ett skript som jag har gjort och %u gör att sökvägen och filnamnet på den filen man har högerklickat på skickas till skriptet.

Här är skriptet:

01if [[ -f "$1" ]]; then # True if FILE exists and is a regular file.
02    selectedFile="$1"
03    backupPathName=$(zenity --text="Skriv in namnet för kopian och eventuell ny sökvägen." --entry-text="$selectedFile" --entry)


04    if [[ $? == 0 ]]; then # True if previos command exicutet correctly.
05        backupname=${backupPathName##*/}

06        if [[ -n "$backupname" ]]; then # True if the length of "STRING" is non-zero. -n

07            if [[ -a "$backupPathName" ]]; then # True if FILE exists.

08                if zenity --question --ok-label=JA --cancel-label=NEJ --text="Filen $backupname finns redan, vill du skriva över den?"; then
09                    if [[ -w "$backupPathName" ]]; then # True if FILE exists and is writable.
10                        cp "$1" "$backupPathName"
11                        if [[ $? == 0 ]] ; then # True if previos command exicutet correctly.
12                            zenity --info --text "Backupen är nu klar, filen $backupPathName har skapats."
13                        else
14                        zenity --info --text "Backupen misslyckades, kanske har du inte skrivrättigheter här"
15                        fi

16                    else
17                        zenity --info --text "Filen $backupPathName är skrivskyddad så backupen kunde inte tas."
18                    fi
19                else
20                    zenity --info --text "Backupen är ej genomförd"
21                fi
22            else
23                cp "$1" "$backupPathName"
24                if [[ $? == 0 ]] ; then # True if previos command exicutet$backupname correctly.
25                    zenity --info --text "Backupen är nu klar, filen $backupPathName har skapats."
26                else
27                    zenity --info --text "Backupen misslyckades, kansk $backupnamee har du inte skrivrättigheter här eller så finns inte mappen du angav."
28                fi
29            fi
30        else
31            zenity --info --text "Backupen är ej genomförd, du namngav inte filen."
32        fi
33    else
34        zenity --info --text "Backupen är ej genomförd"
35    fi
36else

37        zenity --info --text "Du har inte valt någon fil."
38fi


För en mer ordentlig genomgång hur allt fungerar(inte mitt skript men resten) så kolla in

torsdag 21 april 2011

Flash i helskärm

Flash filmer i helskärm har strulat för mig. De har fungerat nån gång ibland men oftast har bilden bara fryst på en gång.

Med inställningshanteraren CompizConfg kan man fixa det även om det finns en viss risk att man inte kommer ut från helskärmsläget ifall man pressar den för hårt mellan lägena.

Programmet som måste vara installerat är Avancerade inställningar för skrivbordseffekter

I inställningshanteraren CompizConfg gå till Avancerad sökning och sök efter helskärm. Allmänna Alternativ - Omdirigera tillbaka helskärmsfönster ska förkryssas.
Sen i FF kan man högerklicka på filmen och välja inställningar och där under bildskärmen finns Aktivera maskinvaruacceleration, se till att den är aktiverad.

tisdag 1 februari 2011

Installera det senaste QT biblioteket

Installera det senaste QT biblioteket.
I skrivandets stund så är det v4.7.1

Hämta filen här och sen pakar du upp den och kör följande kommando i dens mapp.

./configure
make
sudo make install

När jag körde ./configure så fick jag ett felmeddelande "Qt configure error: Basic XLib functionality test failed" men det gick till sig efter att jag installerade "libxext-dev", libxrender-dev. Jag vet inte vilken av dem som hjälpte men jag installerade båda för säkerhetsskull.

Obs! se till att tidigare bibliotek är borttagna för säkerhetsskul. Om ni har installerat den tidigare så gå in i mappen där källkoden finns och kör följande kommando: "sudo make uninstall"

onsdag 26 januari 2011

PySide/PyQt4 kod komplitering i Eclip

Kåd kompilering för PySide/PyQt4 i Eclips
1. Window -> Preferences... -> Pydev -> Interpreter - Python
2. Under "Forced builtin libs" fliken, klicka "New..."
3. Skriv in PySide och klicka OK (om man vill ha kompilation för PyQt4 så skriver man det)

Obs!
Om du installerat PyDev efter att du insallerat PySide/PyQt4 så kan det bli strul med biblioteken. Om det strular är det enklast att ta bort Python interpriatorn och installera om den och sen göra om det där tre punkterna. :)

Om man använder olika python versioner måste man repetera de tre punkterna för varje python Interpreter som man vill använda.

Av nån anledning måste jag skriva så här för att komplitering ska fungera någorlunda...:
import PySide.QtCore
import PySide.QtDeclarative
import PySide.QtGui

Den visar inte nån annan än QtCore som förslag vid första punkten och om jag skriver QtDeclarative så efter den andra punkten så visar den vilka valmöjligheter man har.
PySide.QtDeclarative.

Originalet är taget härifrån:
http://www.saltycrane.com/blog/2007/06/how-to-get-code-completion-for-pyqt/

Installation av Pyside

Som jag har sagt tidigare så är detta som en stor Post-it lapp för mig så här är länken till PySide sidan som visar hur enkelt man kan installera PySide.

PySide installation