Nvidia Optimus Teknolojisi ve Linux

Başlatan aurora, 11 Eylül 2011 - 20:19:32

« önceki - sonraki »

0 Üyeler ve 3 Ziyaretçi konuyu incelemekte.

salix

Bumblebee terminalden sorunsuz çalışıyor. Fakat bumblebee ui ile glxspheres glxgears normal çalişırken, uygulama düzenle seçeneğinden firefox'u ve diğer uygulamaları çalıştırmıyor. "paket yada kaynak kod adı belirlenemedi" hatası veriyor. hata içeriğinde'de executable path /usr/share/bumblebee-ui/Bumblebee-indicator.py var sadece
İnsan olma şerefine nail oldu ama muktedir olamadı.

burk

@salix
sudo optirun firefox komutuyla tarayıcıyı açtığınızda ne gibi bir çıktı veriyor?

salix

@burk
firefox sorunsuz açılıyor ve herhangi bir çıktı vermiyor  komut satırında.
İnsan olma şerefine nail oldu ama muktedir olamadı.

if

@salix, kullanıcı ara yüzü olan Bumblebee ile Firefox'u çalıştıramıyorsunuz ama uçbirim üzerinden çalıştırabiliyorsunuz anladığım kadarıyla, doğru mu? Bu /usr/share/bumblebee-ui/Bumblebee-indicator.py  içeriği nedir?

salix

@if tam olarak bahsettiğiniz gibi
#!/usr/bin/python
# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*-
### BEGIN LICENSE
#
# This file is part of bumblebee-ui.
#
# bumblebee-ui is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# bumblebee-ui is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with bumblebee-ui. If not, see <http://www.gnu.org/licenses/>.
#
### END LICENSE

# UI MODULE
import pygtk
pygtk.require('2.0')
import gtk
import gobject
import appindicator
import pynotify

# SYSTEM MODULE
import os
import subprocess

# ORIGINAL CLASS
import Config
from AppSettings import Applications_settings, IconSet
from DesktopFile import DesktopFile, DesktopFileSet

class BumblebeeIndicator():
#TODO There must be a better way to get the icon than the URI
#FIXME The notification must be replaced when still visible
    def notify_state(self, title, msg, icon_name):
        pynotify.init("Bumblebee notification")
        self.notification= pynotify.Notification(title, msg, IconSet().get_uri(icon_name,48))
        self.notification.set_urgency(pynotify.URGENCY_CRITICAL)
        #FIXME The notification is to slow and this doesn't work
        #self.notification.set_timeout(1000)
        self.notification.show()

# INITIALIZATION OF INDICATOR AND MENU
    def __init__(self):
        self.ind = appindicator.Indicator ("bumblebee-indicator", "bumblebee-indicator", appindicator.CATEGORY_HARDWARE)
        self.ind.set_status (appindicator.STATUS_ACTIVE)
#TODO The icons style and accesibility must be enhanced : see icons/test directory
        self.ind.set_icon("bumblebee-indicator.svg",'Bumblebee is unactive')
        self.ind.set_attention_icon ("bumblebee-indicator-active.svg",'Bumblebee is active')
               
        self.card_state=False
        self.lock_file = "/tmp/.X%s-lock" % Config.vgl_display
       
        self.build_menu()
       
        self.menu.show()
        self.ind.set_menu(self.menu)

    def quit(self, widget, data=None):
        gtk.main_quit()

    def build_menu(self):
        self.menu = gtk.Menu()
        self.switch = gtk.CheckMenuItem()
        self.initial_state_checker()
        self.switch.set_sensitive(False)
        self.menu.append(self.switch)
       
        self.build_menu_separator(self.menu)
               
        self.prefered_app_submenu = gtk.MenuItem("Preferred Apps")
        self.update_menu()
        self.prefered_app_submenu.connect('activate', self.update_menu)
        self.menu.append(self.prefered_app_submenu)
       
        item2 = gtk.MenuItem("Configure Apps")
        item2.connect("activate", self.app_configure)
        self.menu.append(item2)
       
#TODO An UI to configure Bumblebee would be nice
   
        self.build_menu_separator(self.menu)
       
        quit = gtk.ImageMenuItem(gtk.STOCK_QUIT)
        quit.connect("activate", self.quit)
        self.menu.append(quit)
       
        self.menu.show_all()

    def build_menu_separator(self, menu):
    separator = gtk.SeparatorMenuItem()
    separator.show()
        menu.append(separator)

# FUNCTIONS TO BUILD THE "PREFERRED APP" MENU FROM THE LOCAL DESKTOP FILES
    def update_menu(self, widget=None):
        pref_menu=gtk.Menu()
        self.add_submenu_items( pref_menu, Config.default_preferred_apps )
    self.build_menu_separator( pref_menu )
        self.add_submenu_items( pref_menu, DesktopFileSet().get_configured_from_check() )
        pref_menu.show()
        self.prefered_app_submenu.set_submenu(pref_menu)

    def add_submenu_items(self, submenu, items_list):
        for Name, Exec_list in items_list :
            subitem = gtk.MenuItem(label=Name)
            subitem.connect("activate", self.call_app, Exec_list)
        subitem.show()
            submenu.append( subitem )

# FUNCTIONS TO CHECK FOR THE STATE OF THE INDICATOR
    def initial_state_checker(self):
        if self.attention_state_condition(): self.set_attention_state(notify=False)
        else : self.set_active_state(notify=False)

    def state_checker(self):
        if self.attention_state_condition():
            if self.card_state == False : self.set_attention_state()
        elif self.card_state == True: self.set_active_state()
        return True

    def attention_state_condition(self):
        if os.path.exists(self.lock_file): return True
        else: return False

# FUNCTIONS TO SET THE STATE OF THE INDICATOR AND LAUNCH NOTIFICATION
    def set_attention_state(self, notify=True):
        self.set_status(True, appindicator.STATUS_ATTENTION,
                        Config.attention_label,
                        Config.attention_comment,
                        "bumblebee-indicator-active", notify)

    def set_active_state(self, notify=True):
        self.set_status(False, appindicator.STATUS_ACTIVE,
                        Config.active_label,
                        Config.active_comment, 
                        "bumblebee-indicator", notify)
   
    def set_status(self, status, indicator, label, comment, icon, notify):
        self.ind.set_status(indicator)
        self.card_state = status
        if notify == True: self.notify_state(label, comment, icon)
        self.switch.set_label(label)
        self.switch.set_active(status)
       
# FUNCTION TO DEFINE THE APPLICATIONS SETTING LINK IN THE INDICATOR

    def app_configure(self,widget):
        Applications_settings()

# FUNCTION TO LAUNCH THE APPS WITHIN THE INDICATOR
    def call_app(self, widget, app_exec):
#FIXME There is a problem when closing the launched app and when the indicator has been closed: the indicator is still running : What a daemon!!
        subprocess.Popen(app_exec,shell=False)

# MAIN LOOP LAUNCHING A STATE CHECK EVERY TWO SECONDS
    def main(self):
        self.state_checker()
#FIXME It would be nice to avoid this loop : Maybe by using a signal emitted by the system
        #gtk.timeout_add(2000,self.state_checker)
        gobject.timeout_add_seconds(2, self.state_checker)
        gtk.main()

if __name__ == "__main__":
    indicator = BumblebeeIndicator()
    indicator.main()
İnsan olma şerefine nail oldu ama muktedir olamadı.

if

@salix, bumblebee-indicator'u çalıştırabiliyor musunuz?

salix

@if
evet indicator'u çalıştırabiliyorum. indicator üzerinden glxgears ve glxspheres'de çalışabiliyorum. Lakin uygulamaları seçtiğimiz arayüzden uygulama seçip çalıştıramıyorum.
İnsan olma şerefine nail oldu ama muktedir olamadı.

if

@salix, uygulama seçip çalıştırma işlemini uçbirimden yapınca tek verdiği çıktı "executable path /usr/share/bumblebee-ui/Bumblebee-indicator.py" mu oluyor? Sitesine baktım da bir şey bulurum mu diye, elimde sorunu yansıtan bir çıktı olmayınca bir şey elde edemedim.

salix

@if
yanlış anlaşılmış.Uç birimden istediğim şekilde uygulamaları çalıştırabiliyorum. "executable path /usr/share/bumblebee-ui/Bumblebee-indicator.py" hata içeriği olarak apport ta gözüküyor.(apport'un türkçesi ne?)
İnsan olma şerefine nail oldu ama muktedir olamadı.

if

@salix, doğru anladığımı düşünüyorum:) Şimdi
Alıntı Yapkullanıcı ara yüzü olan Bumblebee ile Firefox'u çalıştıramıyorsunuz ama uçbirim üzerinden çalıştırabiliyorsunuz
bu durumu anladım. Bir önceki iletimde istediğim, bumblebee arayüzü uygulamasını uçbirimde çalıştırın, sonra uygulama seçme işlemini tekrar edin ve çıktıları buraya geçindi. Yani optirun firefox komutunu çalıştırmak değil.

salix

@if
(Bumblebee-Indicator.py:3073): LIBDBUSMENU-GLIB-WARNING **: Translation has an invalid value 'ltr(soldan sağa)' for default text direction.  Defaulting to left-to-right.
İnsan olma şerefine nail oldu ama muktedir olamadı.

if

@slax, komutun başına LC_ALL=C koyup çalıştırınca nedir durum?

salix

#462
@if bu arada appsetting.py uçbirimde çalıştırınca uygulama seçme arayüzü açılıyor. arayüzden firefox'u çalıştır dediğimde şu çıktı geliyor.
Traceback (most recent call last):
  File "/usr/share/bumblebee-ui/AppSettings.py", line 320, in apply_app_set
    True, Config.mode_keys['option'], True, Config.configured_color)
  File "/usr/share/bumblebee-ui/AppSettings.py", line 329, in apply_app_change
    actions[0](file_name)
  File "/usr/share/bumblebee-ui/DesktopFile.py", line 74, in configure_file
    DesktopFile(file_name, local=False).configure_file() #True : add the tag : created for bumblebee
  File "/usr/share/bumblebee-ui/DesktopFile.py", line 195, in configure_file
    self.add_shortcuts()
  File "/usr/share/bumblebee-ui/DesktopFile.py", line 208, in add_shortcuts
    self.write_config_to_file(Config.user_desktop_file_directory + self.file_name_with_extension)
  File "/usr/share/bumblebee-ui/DesktopFile.py", line 186, in write_config_to_file
    with open(output_file_name,'w') as file_object:
IOError: [Errno 2] Böyle bir dosya ya da dizin yok: '/home/salix/.local/share/applications/firefox.desktop'



Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 09 Ocak 2013 - 20:27:18

@if
py dosyasını hangi komutla çalıştırıyoruz.Ben çalıştırıken üzerine tıklayıp terminalde çalıştır diyorum.
İnsan olma şerefine nail oldu ama muktedir olamadı.

heartsmagic

python falanca.py
ile çalışıyor olması lazım.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

salix

@heartmagic teşekkürler
@if
salix@salix-pc:~$ LC_ALL=C python /usr/share/bumblebee-ui/Bumblebee-Indicator.py
Traceback (most recent call last):
  File "/usr/share/bumblebee-ui/AppSettings.py", line 320, in apply_app_set
    True, Config.mode_keys['option'], True, Config.configured_color)
  File "/usr/share/bumblebee-ui/AppSettings.py", line 329, in apply_app_change
    actions[0](file_name)
  File "/usr/share/bumblebee-ui/DesktopFile.py", line 74, in configure_file
    DesktopFile(file_name, local=False).configure_file() #True : add the tag : created for bumblebee
  File "/usr/share/bumblebee-ui/DesktopFile.py", line 195, in configure_file
    self.add_shortcuts()
  File "/usr/share/bumblebee-ui/DesktopFile.py", line 208, in add_shortcuts
    self.write_config_to_file(Config.user_desktop_file_directory + self.file_name_with_extension)
  File "/usr/share/bumblebee-ui/DesktopFile.py", line 186, in write_config_to_file
    with open(output_file_name,'w') as file_object:
IOError: [Errno 2] No such file or directory: '/home/salix/.local/share/applications/firefox.desktop'
İnsan olma şerefine nail oldu ama muktedir olamadı.

if

@salix, sudo cp /usr/share/applications/firefox.desktop /home/salix/.local/share/applications/ komutundan sonra deneyin.

salix

@if
salix@salix-pc:~$ sudo cp /usr/share/applications/firefox.desktop /home/salix/.local/share/applications/
[sudo] password for salix:
cp: normal dosya `/home/salix/.local/share/applications/' oluşturulamadı: Bir dizin değil
[/]
İnsan olma şerefine nail oldu ama muktedir olamadı.

if

mkdir -p /home/salix/.local/share/applications/
sudo cp /usr/share/applications/firefox.desktop /home/salix/.local/share/applications/

sedat1661

Konuyu bölmeden ; :P

Bugün win7 ve Ubuntu 12.10 ( wubi) yüklü cihazıma Zorin OS 6.1 Core 64 bit Kurdum. Acayip hızlı ve alımlı geldi kendileri .

Fakat cihazım Nvidia optimus ekran kartlı olduğu için ve Zorin OS da duyduğuma göre Ubuntu tabanlı olduğu için Ubuntu forumumuzdaki Bumblebee komutları işime yarar mı ?
*Kıyamet günü nereye gitmek istiyorsanız, hazırlığınızı ona göre yapınız.* Ömer bin Abdülazîz (Radıyallahi anh)

tlg

Olur. Örnek olarak bilgisayarımdaki Linux Mint'e Ubuntu komutlarını uyguladım ve bir sıkıntı çıkmadı.

freeman

Merhaba arkadaşlar,
Bu yöntemi sadece Nvidia kartlar da mı yapabiliyoruz? NVidia dışı kartlar da olmaz mı?
Benim bilgisayarımda Ubuntu açıkken aşırı derecede ısınma ve ses oluyor. Hem de hiçbirşey yapmazken, belki bu yöntemle çözümünü bulurum.
Good morning and welcome to the Black Mesa Transit System. This automated train is provided for the security and convenience of the Black Mesa Research Facility personnel.

if

Nvidia'ya ait bir yöntem bu @KaganIsmail. Ekran akrtınız ne ise onunla ve ısınmaya dair aramalar yapın, uygun bir öneri bulabilirsiniz.

ignis

...@ubuntu:~$ sudo apt-get install bumblebee bumblebee-nvidia
[sudo] password for ...:
Paket listeleri okunuyor... Bitti
Bağımlılık ağacı inşa ediliyor.       
Durum bilgisi okunuyor... Bitti       
bumblebee zaten en yeni sürümde.
bumblebee-nvidia zaten en yeni sürümde.
Yükseltilen: 0, Yeni Kurulan: 0, Kaldırılacak: 0 ve Yükseltilmeyecek: 274.
N: Ignoring file 'bumblebee-stable-quantal.list.save' in directory '/etc/apt/sources.list.d/' as it has an invalid filename extension
N: Ignoring file 'bumblebee-stable-quantal.list.save' in directory '/etc/apt/sources.list.d/' as it has an invalid filename extension


böyle bir hata alıyorum, neden olabilir?

apocuk

Bumblebee zaten kurulu görünüyor sisteminizde,
optirun glxgears komutunun çıktısını
buraya geçebilir misiniz?
Mecburiyet Esaretin Diğer Adıdır.....
http://abdurrahmanakturk.wordpress.com/

ignis

Çıktı şu şekilde:

...@ubuntu:~$ optirun glxgears
[ 5490.667066] [ERROR]The Bumblebee daemon has not been started yet or the socket path /var/run/bumblebee.socket was incorrect.
[ 5490.667106] [ERROR]Could not connect to bumblebee daemon - is it running?


Bilgisayarda sanki haddinden fazla bir fan sesi var gibi, özellikle firefox vb. programlar çalışır vaziyetteyken ciddi bir fan sesi artışı oluyor.