Pcek betiği ile Compiz eklenti kurulumu

Ubuntu Türkiye Wiki sitesinden
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<br>
# -*- coding: utf-8 -*-<br>
######hitokiri  sunar ( ; #######<br>
from __future__ import division<br>
import os, time<br>

h  = "Durdur."<br>
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:")<br>
os.system("rm -R /tmp/compiz")<br>



x = open('/tmp/bağımlılıklar', "a")<br>
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  ")<br>
x.close()<br>
os.system("mkdir  /tmp/compiz")<br>
y = open('/tmp/eklentiler', "a")<br>
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-fusion.org/compiz/plugins/stackswitch\nwget  -O /tmp/wizard.tar 'http://oreaus.googlepages.com/wizard.tar'\ntar -xf  '/tmp/wizard.tar' -C  /tmp/compiz ")<br> 
y.close()<br>
z  = open('/tmp/kurulum', "a")<br>
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")<br>
z.close()<br>


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



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

parola  = raw_input("****eklentilerin aktif hale gelmesi için compiz yeniden  başlatılmalı, compiz yeniden başlatılsın mı [e/h] ? :")<br>
if parola ==    "e":<br>
    print " Compiz yeniden başlatılıyor.. " +  os.system("compiz --replace") + exit(h)<br>
else:<br>
    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 forumdaki paylaşımı