Flatpak概念及其基础使用方法

Flatpak概念及其基础使用方法

图源:陌芋Marginal 🎆🎇🎆 108115520

为什么使用Flatpak?

  • 问题:已经有了aptdnf等这种系统级的包管理器,为什么还要使用Flatpak?
    1. Flatpak给软件提供相对独立的运行环境(沙箱),并提供权限控制功能,避免软件破坏或任意修改系统;
    2. Flatpak很大程度上解决了软件的兼容性问题,让“新系统跑旧软件”或“旧系统跑新软件”成为可能;因此Flatpak可以在非滚动更新的发行版上安装 比系统源内版本更高的软件;
    3. Flatpak支持诸多发行版,在不同的发行版上能够获得几乎相同的软件使用体验
    4. Flatpak允许同一个软件的不同版本在系统内共存
    5. Flatpak允许非root用户在单用户作用域内安装软件
  • 问题:我在用Snap或者AppImage,它们和Flatpak有什么区别嘛?
    1. Flatpak性能中等,略优于Snap,略差于AppImage;
    2. Flatpak、AppImage不需要服务(Service),而Snap需要Snapd;
    3. Flatpak、Snap提供权限控制功能,而AppImage不提供;
    4. Flatpak、Snap统一提供所有软件包的更新,而AppImage需要打包者自行适配应用内更新或利用第三方工具更新;
    5. Flatpak、Snap在发行版的预装情况方面有区别:
      • Flatpak预装在这些发行版中:
        • Fedora (Workstation/Silverblue/Kinoite)
        • Manjaro
        • Endless OS
        • Linux Mint
        • Rocky Linux (GNOME)
        • AlmaLinux (GNOME)
        • CentOS (GNOME)
        • EuroLinux (GNOME)
        • Pop!_OS
        • elementary OS
        • Clear Linux (Desktop)
        • PureOS
        • Zorin OS
        • MX Linux
        • KDE neon
        • ……
      • 而Snap预装在这些发行版中:
        • Ubuntu系列 (Ubuntu Desktop, Ubuntu Server, KUbuntu, XUbuntu……)
        • KDE neon
        • Manjaro
        • Solus
        • Zorin OS
        • ……
    6. Flatpak和Snap均得到了两个软件中心(GNOME Software Center、KDE Plasma Discover)的支持,而Appimage需要使用第三方软件中心(如prateekmedia/appimagepoolapp-outlet/app-outlet(同样支持Flatpak)
阅读更多
【持续更新】宝藏精品软件收集

【持续更新】宝藏精品软件收集

图源:SWKL:D - :D 110336778

持续收录一些装机必备软件,以及小众精品软件和好用的Web应用(在线服务)。

前缀

  • AD:软件含有广告;
  • Pay:软件含有一次性付费内容;
  • Pro:软件含有月度/季度/年度付费内容(会员、订阅);

输入法

阅读更多
自定义Fedora Toolbox镜像

自定义Fedora Toolbox镜像

图源:LINO - 崩壊3rd繫体字版6周年 108386100

Toolbox 可看做是Podman的Wrapper,力求将容器与主机的操作系统(Host OS)无缝集成。与Toolbox类似的工具还有Distrobox。它们在牺牲一些容器安全性(端口控制、资源控制、文件的独立性等)的情况下可以做到:

  • 用户穿透:在容器中使用与当前Host user一样的user与home目录;
  • 设备穿透:直接使用Host的/dev/media等;
  • 网络穿透:直接使用Host网络,获得与主机一致的网络体验;
  • 服务穿透:通过直接使用Host的/run/user/<uid>/tmp以及关键服务的Socket,实现在容器中访问主机的显示服务(X11/Wayland)、网络服务(Avahi)、D-Bus、systemd journal等;

因此,Toolbox可以用来:

  • **作为不可变系统的软件安装方式之一。**如Fedora Silverblue、Fedora CoreOS等不可变系统中均预装Toolbox,另一些不可变系统中可能预装Distrobox;
  • 使用其他发行版的镜像,在当前发行版中无缝运行针对其他发行版制作的程序。如在Fedora下运行只提供Ubuntu deb包的GUI程序;
  • 在没有Host的root权限时创造一个假root环境。如非privileged的Toolbox容器同样可以使用sudo dnf install安装软件;
    • 需要镜像中预装sudo,并支持sudowheel组获取root权限,且支持NOPASSWD选项;
  • 使用不同版本的镜像实现**“旧程序运行在新系统上”或“新程序运行在旧系统上”**,或对程序进行兼容性测试;
  • 可以通过对镜像进行自定义,实现快速且一致的开发环境搭建
阅读更多
Linux&Windows小技巧(5)

Linux&Windows小技巧(5)

文章内容:Edge、Chrome和Firefox的展台模式;Scoop的使用方法

图源:Anmi - 水族館 83088427

Microsoft Edge 展台模式

《小技巧(3)》 中,我以 Microsoft Edge 为例简单描述了 Windows 操作系统级展台模式功能的设置方法。

对于操作系统级的“展台模式”,常用于以下场景:

  • 商场电子展柜、企业宣传展板等;
  • 数据看板大屏、监控系统大屏、比赛实况大屏等;
  • 图书馆、办事处、机场等的公用电脑;

以上场景具有的共同特点是:需要应用保持全屏;限制用户只使用这个应用或访问特定网页;提供一定交互能力。

在绝大多数情况下,被展示的内容都可以用网页的形式(播放幻灯片、播放视频等也可以用网页实现)呈现。这种场景下,OS级展台模式功能的配置流程复杂、维护困难、可能导致操作系统不稳定等问题就显得有些大材小用了。

如果只是想临时启动 Edge 的展台模式,或是在运行 Edge 的同时运行其他程序,再或者是在 Linux 或 macOS 下启动展台模式,最简便的办法是直接使用命令行。

启动命令

Edge 是基于 Chromium 二次开发的浏览器。因此,与 Chromium 启动展台模式的命令类似。以百度为例启动展台模式:

1
.\chrome.exe --kiosk 'https://www.baidu.com'

定位到 msedge.exe 所在路径,一般为:

1
C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe

在该路径下启动 PowerShell,启动展台模式:

1
.\msedge.exe --kiosk 'https://www.baidu.com' --edge-kiosk-type=fullscreen
OS 折腾笔记:peco/bat、文件链接与Kiosk Mode

OS 折腾笔记:peco/bat、文件链接与Kiosk Mode

图源:Miv4t - 《MACHiNERY》,Pid:77186528

Windows 下的 cat 和 grep

lscatgrep这三个命令,往往是Linux初学者最先了解的、日常使用Linux时不可或缺的。对于Windows系统而言,同样有三个命令可以完成上述工作:dirtypefindstr

例如,用type显示文件内容:

或者用findstr结合管道匹配先前程序输出内容中的字符串:

也可以结合正则表达式:

如果你不满足于系统命令的显示效果,你也可以尝试下面两款开源于Github的工具:

阅读更多
Your browser is out-of-date!

Update your browser to view this website correctly.&npsb;Update my browser now

×