2013-02-21 82 views
1

執行我喜歡讓我的守護程序是自動啓動後的setup.py安裝是否有可能定義命令setup.py

殼,我可以通過歸檔此:

更新的rc.d kmsd默認21

在setup.py(disutil),該怎麼做?

是否可以這樣做,或者我只能讓我的用戶在安裝後手動調用這個命令?

謝謝

回答

2

是的,這是可能的。我在我自己的代碼中使用遺留構建系統預編譯一些庫。

像下面這樣的東西應該可以工作,但我應該告誡它說我沒有測試下面的代碼。

from distutils.core import setup, Command 
import distutils.command.install as InstallCommand 
from subprocess import call 

class FinallyDoSomething(Command): 
    description = "Do my custom stuff" 
    user_options = [] 
    def initialize_options(self): 
     pass 

    def finalize_options(self): 
     pass 

    def run(self): 
     call(["update-rc.d", "kmsd", "defaults", "21"]) 

class NewInstall(InstallCommand): 
    sub_commands = InstallCommand.sub_commands + [ 
      ('custom_install', None),] 

setup(name='PackageName', 
     version='0.1', 
     #The rest of the setup config 
     cmdclass={ 
      'install': NewInstall, 
      'custom_install': FinallyDoSomething, 
      }, 
    ) 
+0

它的工作原理,謝謝 – Cody 2013-02-22 07:18:14

相關問題