指向.deb包中的真实主目录

时间:2014-07-14 15:03:15

标签: python distutils setup.py deb

我有我的woking setup.py文件;其中包含以下行:

home = os.environ["HOME"]   # home =  /home/dr in my machine; 
distutils.core.setup(
... 
data_files=  [  ('%s/.config/autostart'%home,['data/RockDome-autostart.desktop']),      
               ("%s/.gnome2/nautilus-scripts"%home , ['data/Add to RockDome'])  ,
             ]

现在我继续按dpkg-buildpackage -i -I -rfakeroot创建.deb packge;除了结果.deb包具有以下hirreracy之外,所有都是正确的:

.deb
    / ... other paths 
    /home
         /dr
            /.gnome2
                   /nautilus-scripts
                                    /Add to RockDome
            /.config
                    /autostart
                              /RockDome-autostart.desktop

如你所见; .deb会将一些文件安装到路径中:

  

/home/dr/.gnome2/nautilus-scripts/添加到RockDome

     

/home/dr/.config/autostart/RockDome-autostart.desktop

除了在我的机器上,这条路径是不正确的;在其他机器中将在用户的主目录之外创建dirs !!

1 个答案:

答案 0 :(得分:1)

Debian软件包不应该将文件安装到用户的主目录。如果可能,应将这些文件安装到适当的系统范围内;如果这不是一个选项,postinstall帮助程序脚本可以为每个用户安装它们。 (请记住,系统上可能有多个用户!)