在NixOS上安装kdesu

时间:2017-08-20 20:59:29

标签: kde nix nixos kde-plasma

在程序/链接上设置高级属性以作为另一个用户启动时,它会抛出错误:

Sorry - Plasma
KDEInit could not launch 'kdesu':
Could not open library 'libkdeinit5_kdesu'.
Cannot load library /run/current-system/sw/lib/libkdeinit5_kdesu: (/run/current-system/sw/lib/libkdeinit5_kdesu.so: cannot open shared object file: No such file or directory)

我尝试使用以下方法安装kdesu:

[root@nixos:~]# nix-env -qaP kdesu
nixos.kdeFrameworks.kdesu  kdesu-5.36.0

[root@nixos:~]# nix-env -iA nixos.kdeFrameworks.kdesu
replacing old ‘kdesu-5.36.0’
installing ‘kdesu-5.36.0’
building path(s) ‘/nix/store/2bn27h5drw0800gk5z2rmwfx78gqbbdc-user-environment’
created 2209 symlinks in user environment

[root@nixos:~]# kdesu
bash: kdesu: command not found

[root@nixos:~]# which kdesu
which: no kdesu in (/root/bin:/run/wrappers/bin:/etc/per-user-pkgs/root/bin:/root/.nix-profile/bin:/nix/var/nix/profiles/default/bin:/run/current-system/sw/bin)

我也尝试过安装nix-env -iA nixos.kde-cli-tools,但这也不起作用。

有关如何在NixOS上安装kdesu的任何建议吗?

2 个答案:

答案 0 :(得分:1)

作为一般规则,与NixOS上的许多发行版不同,直接安装库并不能按预期工作;需要库的应用程序将无法找到它。相反,包必须声明它的所有依赖项。

具有可选依赖项的软件包倾向于通过配置添加它们。你可能想在/etc/nixos/configuration.nix

中尝试这样的事情
services.xserver.desktopManager.plasma5.extraPackages = with kdeFrameworks; 
    [ kdesu
    ];

答案 1 :(得分:0)

我很高兴看到你在Nixpkgs上提出了一个问题,因为这不是配置问题,而是包装错误。

看起来kdesu生活在某些libexec目录中,而且还没有添加到您的路径中。它属于kde-cli-tools包。您可以使用

运行它

$(nix-build '<nixpkgs>' -A kde-cli-tools --no-out-link)/lib/libexec/kf5/kdesu

您可以使用上述内容作为别名来启动kdesu,直到fix to the packaging bug到达。