Pcek betiği ile Compiz eklenti kurulumu

Ubuntu Türkiye Wiki sitesinden
15.46, 7 Şubat 2010 tarihinde Irmak (mesaj | katkılar) tarafından oluşturulmuş 5741 numaralı sürüm (→‎Betiğin Çalışma Mantığı)
Gezinti kısmına atla Arama kısmına atla

Pcek Betiği ile Compiz Eklenti Kurulumu Nasıl Yapılır?

  • Betik sadece uçbirimde çalışıyor,
  • Eklentileri indiriyor,
  • Kuruyor,
  • İndirilen klasörleri siliyor ve 
  • Compizi yeniden başlatıyor..

Kaynak Kodu

 #!/usr/bin/env python
# -*- coding: utf-8 -*-
######hitokiri sunar ( ; #######
from __future__ import division
import os, time

h = "Durdur."
print "Not:! install.py nin çalışması için program kendi dizinin de çalıştırılmalıdır   veya [cd] komutuyla dizine geçilmelidir .....                                   ornk:cd /home/kullanıcı/compiz eklentileri kurulumu  "
soru3 = raw_input ("/tmp/compiz dizini kontrol ediliyor eğer dizin var ve dosyalara sahipse  programın çalışması için silmeniz önerilicektir ;ancak dosyalar  korumaya sahip değilse silinicektir !!!! devam etmek için enter 'a basın:")
os.system("rm -R /tmp/compiz")



       
x = open('/tmp/bağımlılıklar', "a")
x.write ("sudo apt-get install   compiz-fusion-bcop \n sudo apt-get install compiz-dev build-essential libxcomposite-dev libpng12-dev libsm-dev libxrandr-dev libxdamage-dev libxinerama-dev libstartup-notification0-dev libgconf2-dev librsvg2-dev libdbus-1-dev libdbus-glib-1-dev libgnome-desktop-dev x11proto-scrnsaver-dev libxss-dev libxslt1-dev libtool git-core  ")               
x.close()
os.system("mkdir /tmp/compiz")
y = open('/tmp/eklentiler', "a")
y.write ("cd /tmp/compiz/\ngit clone git://anongit.compiz.org/fusion/plugins/snow\ngit clone git://anongit.compiz.org/fusion/plugins/atlantis\ngit clone git://anongit.compiz-fusion.org/users/wodor/anaglyph\ngit clone git://anongit.compiz-fusion.org/fusion/plugins/cubemodel\ngit clone git://anongit.compiz-fusion.org/users/rcxdude/dialog\ngit clone git://anongit.compiz-fusion.org/users/edgurgel/toggle-decoration\ngit clone git://anongit.compiz-fusion.org/users/pat/elements\ngit clone git://anongit.compiz-fusion.org/users/kdubois/extra-animations\ngit clone git://anongit.compiz-fusion.org/inactive/users/smspillaz/fireflies\ngit clone git://anongit.compiz-fusion.org/users/warlock/freewins\ngit clone git://anongit.compiz-fusion.org/users/b0le/photowheel\ngit clone git://anongit.compiz-fusion.org/users/pafy/screensaver\ngit clone git://anongit.compiz-fusion.org/inactive/users/smspillaz/stars\ngit clone git://anongit.compiz.org/fusion/plugins/stackswitch\n  wget -O /tmp/wizard.tar 'http://oreaus.googlepages.com/wizard.tar'\ntar -xf '/tmp/wizard.tar' -C  /tmp/compiz ")                
y.close()      
z = open('/tmp/kurulum', "a")
z.write ("cd /tmp/compiz/atlantis\nmake clean\nmake\nmake install\ncd /tmp/compiz/snow \nmake clean\nmake\nmake install\ncd /tmp/compiz/anaglyph\nmake clean\nmake\nmake install\ncd /tmp/compiz/cubemodel\nmake clean\nmake\nmake install\ncd /tmp/compiz/dialog\nmake clean\nmake\nmake install\ncd /tmp/compiz/toggle-decoration\nmake clean\nmake\nmake install\ncd /tmp/compiz/extra-animations\nmake clean\nmake\nmake install\ncd /tmp/compiz/fireflies\nmake clean\nmake\nmake install\ncd /tmp/compiz/freewins\nmake clean\nmake\nmake install\ncd /tmp/compiz/photowheel\nmake clean\nmake\nmake install\ncd /tmp/compiz/screensaver\nmake clean\nmake\nmake install\ncd /tmp/compiz/stars\nmake clean\nmake\nmake install\ncd  /tmp/compiz/wizard\nmake clean\nmake\nmake install\ncd  /tmp/compiz/stackswitch\nmake clean\nmake\nmake install")                
z.close()


os.system(" chmod +x /tmp/bağımlılıklar " )
os.system(" chmod +x /tmp/eklentiler " )
os.system(" chmod +x /tmp/kurulum " )



os.system("/tmp/bağımlılıklar ")
os.system("clear")
soru = raw_input("......indirme yarıda kesilemez.......Eklentiler indirilsin mi [e/h] ? :")
if soru == "e":
     print "eklentiler indiriliyor"
else:
     print soru, "çıkılıyor" + exit(h)
os.system("/tmp/eklentiler ")
os.system("clear")
soru1 = raw_input("**kurulum yarıda kesilemez**..........Kurulumu başlatmak için enter a basın:")
os.system("/tmp/kurulum ")
os.system("clear")
soru2 = raw_input("Silinsin mi? sorusuna [e] cevabını verin ya da enter a basıp geçin, kurulum tamamlanmıştır... :")
os.system("rm -R /tmp/bağımlılıklar /tmp/eklentiler /tmp/kurulum  /tmp/compiz")
os.system("clear")
True
parola = raw_input("****eklentilerin aktif hale gelmesi için compiz yeniden başlatılmalı, compiz yeniden başlatılsın mı [e/h] ? :")
if parola ==   "e":
    print " Compiz yeniden başlatılıyor.. " + os.system("compiz --replace") + exit(h)
else:
    print parola, " çıkılıyor " + exit(h)

Kullanım

Yukarıdaki kaynak kodu kopyalayıp, boş bir dosyanın içine yapıştırıyoruz ve uzantısını ".py" olacak şekilde kaydediyoruz. Çalıştırdığınızda ise Compiz eklentilerini otomatik olarak kurup, compizi yeniden başlatıyor.


Betiğin Çalışma Mantığı

Öncelikle komutlar; bağımlılıklar , eklentiler , kurulum diye /tmp dizini altında metin belgeleri oluşturuyor, bu belgelere çalıştırma hakkı veriyor; daha sonra gerekli bölümlerde sorular sorulduğunda" eklentiler indirilsin mi" gibi (bu arada gerekli bağımlılıklarda kontrol ediliyor sudo şifresi istenerek), bu oluşturulan dosyaları sisteme okutuyor,bütün işlemler bittikten herhangi bir problem görülmesi ihtimaline karşın indirilen eklentilerin hangilerinin silinip hangilerinin kalıcağı kullanıcıya soruluyor, bu işlemle birlikte /tmp dizininde oluşturulan dosyalarda eş zamanlı olarak kaldırılıyor/siliniyor, Daha sonra "eklentilerin aktif olması için compiz yeniden başlatılsın mı?" sorusu ile betiğin görevi son buluyor..



Kaynak

hitokiri'nin Ubuntu-tr Forum'undaki anlatımı.