[App Sharing] Distrobox
Tofloor
poster avatar
donaldsebleung
deepin
2022-11-27 08:37
Author

Distrobox 能让您在终端里使用您最熟悉喜爱的 Linux 发行版。有了 Distrobox,软件兼容的问题不复存在。Distrobox 能使用 Podman 或 Docker 创建您心仪的 Linux 发行版的容器,与宿主机高度融合,能分享 $HOME 目录、外置储存、U 盘、图形化 APP、声音等等。

该软件包并非上游支持;如遇到任何问题,请发邮件到 [email protected] 或于 https://gitee.com/donaldsebleung/distrobox-spark-store 建工单。

Arch in Deepin

spk://store/development/distrobox

使用 Distrobox 前,您需要安装 Podman 或 Docker,但不能同时安装两者,其中 Podman 由于能运行安全性更高的 rootless 容器而优先。只可惜,Podman 并不在 deepin 默认的仓库里。如要安装 Podman,请于安装 Distrobox 后执行 install-podman 命令,该命令将默认把 Podman 安装到 $HOME/.local 目录下,除非以 root 权限运行,那 Podman 会默认安装到 /usr/local 目录下。您也可以透过 --prefix 选项把 Podman 安装到指定的目录下。

若您打算安装 Docker,请执行 sudo apt update && sudo apt install -y docker.io 命令,并把相关用户加到 docker 群组下: sudo usermod -aG docker $USER;只有在 docker 群组下的用户才能运行 Docker 容器,而 Docker 容器将以 root 权限运行;因此,容器里 root 执行的命令可能会影响宿主机,安全性不如 Podman 。

Reply Favorite View the author
All Replies
jjcui8595
deepin
2022-11-27 14:37
#1

感谢分享

Reply View the author
希声
deepin
2022-11-29 17:57
#2

谢谢,这两天正在了解这个,但是网上对这个的中文教程很少,想知道有了解或者有使用经验的人吗?稳定性及可用性怎么样,感觉deepin加distrobox这是个银弹方案,非常适合开发人员使用,期待一起讨论,

Reply View the author
donaldsebleung
deepin
2022-11-29 18:56
#3
希声

谢谢,这两天正在了解这个,但是网上对这个的中文教程很少,想知道有了解或者有使用经验的人吗?稳定性及可用性怎么样,感觉deepin加distrobox这是个银弹方案,非常适合开发人员使用,期待一起讨论,

基本用法是:

  1. 创建容器: distrobox create --image <镜像名称> --name <容器名称>,例如要创建一个 Ubuntu Jammy 的容器,叫 ubuntu-gamesdistrobox create --image ubuntu:jammy --name ubuntu-games
  2. 进入 ubuntu-games 容器 shell: distrobox enter ubuntu-games。第一次需要等一会儿,因为 Distrobox 会自动配置容器,安装一些软件驱动等等。之后再 distrobox enter 会快很多。首次配置时要跟进配置进度可直接调用 podman logsdocker logs,例如 podman logs -f ubuntu-games
  3. 删除容器前先把它停掉:distrobox stop ubuntu-games && distrobox rm ubuntu-games

我在 Ubuntu 用过一下,感觉挺稳定好用的,最近透过创建 Fedora 容器安装了一个 Ubuntu 默认仓库没有的单机游戏。用户体验也非常好,创建容器时 Distrobox 会自动创建相应 desktop entry 一键开启容器 shell,而容器里安装图形化 APP 后可透过 distrobox-export --app <软件包名称>把它发送到桌面上一键启动。只可惜,desktop entry 这个功能在 deepin 暂时不可用,可能是上游开发者测试时只测试过 GNOME、KDE,没有测试 DDE。

Reply View the author
希声
deepin
2022-11-30 06:02
#4
donaldsebleung

基本用法是:

  1. 创建容器: distrobox create --image <镜像名称> --name <容器名称>,例如要创建一个 Ubuntu Jammy 的容器,叫 ubuntu-gamesdistrobox create --image ubuntu:jammy --name ubuntu-games
  2. 进入 ubuntu-games 容器 shell: distrobox enter ubuntu-games。第一次需要等一会儿,因为 Distrobox 会自动配置容器,安装一些软件驱动等等。之后再 distrobox enter 会快很多。首次配置时要跟进配置进度可直接调用 podman logsdocker logs,例如 podman logs -f ubuntu-games
  3. 删除容器前先把它停掉:distrobox stop ubuntu-games && distrobox rm ubuntu-games

我在 Ubuntu 用过一下,感觉挺稳定好用的,最近透过创建 Fedora 容器安装了一个 Ubuntu 默认仓库没有的单机游戏。用户体验也非常好,创建容器时 Distrobox 会自动创建相应 desktop entry 一键开启容器 shell,而容器里安装图形化 APP 后可透过 distrobox-export --app <软件包名称>把它发送到桌面上一键启动。只可惜,desktop entry 这个功能在 deepin 暂时不可用,可能是上游开发者测试时只测试过 GNOME、KDE,没有测试 DDE。

非常感谢,通过你的表述,总体感觉可用性和稳定性可以,我看官方迭代了30+版本,最近7日内也有更新。所以决定跟进这个方案。

说一下为啥这么期待这个方案:

说起来,我也是deepin老粉了,因为是研发,所以用linux开发效率来讲比win要高不少,所以之前使用deepin v15整个大版本,三年多,后来v20,因为迭代不稳定(升级挂。。。生产用极其危险)、硬件兼容性差(安装卡蓝屏)、资源占用及能耗控制(程序员嘛,对性能有特殊癖好)、社区支持极其差(绝对不黑,帖子没有官方人员回复,wiki没有。。。。)等原因,改投win或者manjaro了。但是仍然几乎每天都来社区看一眼,看看deepin成长到哪了(该死的颜值即正义,优质自研软件等)

manjaro 解决了deepin 以上的所有问题,而且安装软件也比deepin容易方便多了,版本还新(开发类的工具,fish,tmux,zoxide,fcitx5 etc、、、),但是kde桌面及日常工具等,虽然稳定易用,但是有点用不惯。

其实有关注到porting sig 小组正在移植arch+dde,但是有点着急用,所以一边用manjaro过渡,一边找别的能用上dde的稳定,高可用的方案直到看到了您发的这个帖子。。。

总结来说目前觉得,deepin host + distrobox+arch容器(反过来也行,但是deepin没有官方镜像。。。)这个方案,是截至目前对我来讲比manjaro+kde更合适一些,但是,就看distrobox图形化应用、可用性,与宿主机的集成程度等方面是否满足要求了(至于桌面entry,对我来说不是硬需求,manjaro下我都是手动直接启动程序入口)😂

最后的最后,十分感谢你,但是并不感谢社区,社区还是差的不行。。。。但是比以前强

Reply View the author