首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PKGBUILD和makepkg:“警告:目录权限不同”

PKGBUILD和makepkg:“警告:目录权限不同”
EN

Stack Overflow用户
提问于 2020-09-15 06:47:42
回答 1查看 103关注 0票数 0

向setup.py提供--root,如下所示:

代码语言:javascript
复制
package() {
    cd "$srcdir"/"$_gitname"
    python3 setup.py install --prefix=$pkgdir/usr --root=$pkgdir
}

包含以下setup.py文件:

代码语言:javascript
复制
import DistUtilsExtra.auto


DistUtilsExtra.auto.setup(
    name='alsacontrol',
    version='0.1.0',
    description='ALSA configuration interface',
    license='GPL-3.0',
)

在PKGBUILD文件中生成以下错误:

代码语言:javascript
复制
warning: directory permissions differ on /mnt/data/
filesystem: 700  package: 755

当使用makepkg -is时。

EN

回答 1

Stack Overflow用户

发布于 2020-09-15 06:54:45

以下是带有--root和--前缀的文件权限:

代码语言:javascript
复制
➜  alsa-control pwd
/mnt/data/Code/alsacontrol-aur/pkg/alsa-control
➜  alsa-control ls -lha
total 80K
drwxr-xr-x 4 mango mango 4.0K Sep 15 00:50 .
drwxr-xr-x 3 mango mango 4.0K Sep 15 00:50 ..
-rw-r--r-- 1 mango mango  54K Sep 15 00:50 .BUILDINFO
drwxr-xr-x 3 mango mango 4.0K Sep 15 00:50 mnt
-rw-r--r-- 1 mango mango 3.2K Sep 15 00:50 .MTREE
-rw-r--r-- 1 mango mango  515 Sep 15 00:50 .PKGINFO
drwxr-xr-x 5 root  root  4.0K Sep 15 00:50 usr

这里没有--root和only --前缀:

代码语言:javascript
复制
➜  alsa-control ls -lha
total 76K
drwxr-xr-x 3 mango mango 4.0K Sep 15 00:52 .
drwxr-xr-x 3 mango mango 4.0K Sep 15 00:52 ..
-rw-r--r-- 1 mango mango  54K Sep 15 00:52 .BUILDINFO
-rw-r--r-- 1 mango mango 3.1K Sep 15 00:52 .MTREE
-rw-r--r-- 1 mango mango  515 Sep 15 00:52 .PKGINFO
drwxr-xr-x 5 mango mango 4.0K Sep 15 00:52 usr

这里有--root,但没有--前缀:

代码语言:javascript
复制
➜  alsa-control pwd
/mnt/data/Code/alsacontrol-aur/pkg/alsa-control
➜  alsa-control ls -lha
total 76K
drwxr-xr-x 3 mango mango 4.0K Sep 15 01:06 .
drwxr-xr-x 3 mango mango 4.0K Sep 15 01:06 ..
-rw-r--r-- 1 mango mango  54K Sep 15 01:06 .BUILDINFO
-rw-r--r-- 1 mango mango 3.1K Sep 15 01:06 .MTREE
-rw-r--r-- 1 mango mango  515 Sep 15 01:06 .PKGINFO
drwxr-xr-x 5 mango mango 4.0K Sep 15 01:06 usr

如您所见,将--root与--prefix组合在一起会产生奇怪的结果。

我保留了--根目录,这样我也可以将文件安装到/etc,并在我的脚本中删除了--前缀:

setup.py:

代码语言:javascript
复制
    data_files=[
        ('share/alsacontrol/', ['data/asoundrc-template']),
        ('share/applications/', ['data/alsacontrol.desktop']),
        ('/etc/xdg/autostart/', ['data/alsacontrol-daemon.desktop']),
    ],

PKGBUILD:

代码语言:javascript
复制
package() {
    cd "$srcdir"/"$_gitname"
    python3 setup.py install --root=$pkgdir
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63892732

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档