mirror of
https://github.com/dongdigua/dongdigua.github.io
synced 2024-12-12 07:15:34 +08:00
410 lines
15 KiB
Org Mode
410 lines
15 KiB
Org Mode
#+BLOG: cossig
|
|
#+POSTID: 391
|
|
#+TITLE: CentOS/Fedora 不同配置/变体都默认安装了什么软件(组)
|
|
#+DESCRIPTION: Default Software(Group) in Different Installation Config/Variation of CentOS/Fedora
|
|
#+DATE: <2022-09-29 四>
|
|
#+OPTIONS: toc:1 ^:{}
|
|
|
|
for [[https://cossig.org]](CentOS 中文特别兴趣小组)
|
|
link: [[https://www.cossig.org/391-centos-fedora-default-softwares]]
|
|
所以我这回不用英文了哈哈
|
|
|
|
* CentOS
|
|
CentOS 安装时可选不同的配置
|
|
#+ATTR_HTML: :width 512px
|
|
[[./../images/centos_install_config.png]]
|
|
其实这些就是不同的软件组
|
|
CentOS-Stream 8 为例, 定义软件组的文件是 [[https://git.centos.org/centos/comps/blob/master/f/comps-centos-8-stream.xml][comps.xml]]
|
|
左边的基本环境就是 =<environment>= tag 列表
|
|
一共有11个
|
|
#+BEGIN_SRC xml
|
|
<environment variant="BaseOS">
|
|
<id>custom-environment</id>
|
|
<name>Custom Operating System</name>
|
|
<display_order>5</display_order>
|
|
<!---->
|
|
</environment>
|
|
<environment variant="BaseOS">
|
|
<id>minimal-environment</id>
|
|
<name>Minimal Install</name>
|
|
<display_order>4</display_order>
|
|
<!---->
|
|
</environment>
|
|
<environment>
|
|
<id>server-product-environment</id>
|
|
<name>Server</name>
|
|
<display_order>2</display_order>
|
|
<!---->
|
|
</environment>
|
|
<environment arch="aarch64,s390x,ppc64le,x86_64">
|
|
<id>graphical-server-environment</id>
|
|
<name>Server with GUI</name>
|
|
<display_order>1</display_order>
|
|
<!---->
|
|
</environment>
|
|
<environment variant="BaseOS">
|
|
<id>cloud-server-environment</id>
|
|
<name>Cloud Server</name>
|
|
<display_order>3</display_order>
|
|
<!---->
|
|
</environment>
|
|
<environment variant="BaseOS">
|
|
<id>web-server-environment</id>
|
|
<name>Web Server</name>
|
|
<display_order>50</display_order>
|
|
<!---->
|
|
</environment>
|
|
<environment>
|
|
<id>infrastructure-server-environment</id>
|
|
<name>Infrastructure Server</name>
|
|
<display_order>60</display_order>
|
|
<!---->
|
|
</environment>
|
|
<environment variant="AppStream" arch="x86_64,ppc64le">
|
|
<id>developer-workstation-environment</id>
|
|
<name>Development and Creative Workstation</name>
|
|
<display_order>90</display_order>
|
|
<!---->
|
|
</environment>
|
|
<environment variant="AppStream" arch="x86_64,ppc64le">
|
|
<id>gnome-desktop-environment</id>
|
|
<name>GNOME Desktop</name>
|
|
<display_order>80</display_order>
|
|
<!---->
|
|
</environment>
|
|
<environment variant="AppStream" arch="x86_64,ppc64le">
|
|
<id>workstation-product-environment</id>
|
|
<name>Workstation</name>
|
|
<display_order>3</display_order>
|
|
<!---->
|
|
</environment>
|
|
<environment variant="AppStream" arch="x86_64">
|
|
<id>virtualization-host-environment</id>
|
|
<name>Virtualization Host</name>
|
|
<display_order>70</display_order>
|
|
<!---->
|
|
</environment>
|
|
#+END_SRC
|
|
但还是对不上, 应该很接近了...吧?
|
|
|
|
想起来不联网是没法选择安装软件的
|
|
然后瞅一眼产生的临时文件 =/tmp/dnf.cache/=
|
|
#+BEGIN_SRC text
|
|
├── appstream-831abc7e9d6a1a72
|
|
│ ├── metalink.xml
|
|
│ └── repodata
|
|
│ ├── 95f4408838f85e23117d7d89ab47e1029692a443722e0e315fe3db07c32ee573-modules.yaml.xz
|
|
│ ├── 2047121fda8828f9b4d611cbfb736a89048cb411356e7ac2bdd95d927d044791-filelists.xml.gz
|
|
│ ├── e27fd8f9028bdc339a014f95debd07da4ef7b217522d14721af050aa9e7cf93e-primary.xml.gz
|
|
│ ├── f0d518764a274c71de0773b3590932ded56234b2f6ac4bf025d125b7ed29269f-comps-AppStream.x86_64.xml
|
|
│ ├── gen
|
|
│ │ └── groups.xml
|
|
│ └── repomd.xml
|
|
├── baseos-044cae74d71fe9ea
|
|
│ ├── metalink.xml
|
|
│ └── repodata
|
|
│ ├── 88ded6c02c5c3c62ab02250505cf0b8dee3af85819b666731c3cf813c275db6c-primary.xml.gz
|
|
│ ├── b47aeefede03d4d530f4538bf8f73531fd1a6a2bb66ca1778e3423c4dec34121-filelists.xml.gz
|
|
│ ├── d52d95f0f2d1a56b197a698aa328813a7e45e2d5b2883e04f4a3f604638b7a4a-comps-BaseOS.x86_64.xml
|
|
│ ├── gen
|
|
│ │ └── groups.xml
|
|
│ └── repomd.xml
|
|
#+END_SRC
|
|
那里面的 =*-comps-*.xml= 的 =<environment>= 的 =<display_order>=
|
|
就正好是 1~4 和两个 99
|
|
|
|
@@html:<details>@@
|
|
@@html:<summary>comps-AppStream.x86_64.xml</summary>@@
|
|
#+BEGIN_SRC xml
|
|
<environment>
|
|
<id>graphical-server-environment</id>
|
|
<name>Server with GUI</name>
|
|
<description>An integrated, easy-to-manage server with a graphical interface.</description>
|
|
<display_order>1</display_order>
|
|
<grouplist>
|
|
<groupid>base-x</groupid>
|
|
<groupid>container-management</groupid>
|
|
<groupid>core</groupid>
|
|
<groupid>fonts</groupid>
|
|
<groupid>gnome-desktop</groupid>
|
|
<groupid>guest-desktop-agents</groupid>
|
|
<groupid>hardware-monitoring</groupid>
|
|
<groupid>hardware-support</groupid>
|
|
<groupid>headless-management</groupid>
|
|
<groupid>internet-browser</groupid>
|
|
<groupid>multimedia</groupid>
|
|
<groupid>networkmanager-submodules</groupid>
|
|
<groupid>print-client</groupid>
|
|
<groupid>server-product</groupid>
|
|
<groupid>standard</groupid>
|
|
</grouplist>
|
|
<optionlist><!----></optionlist>
|
|
</environment>
|
|
<environment>
|
|
<id>server-product-environment</id>
|
|
<name>Server</name>
|
|
<description>An integrated, easy-to-manage server.</description>
|
|
<display_order>2</display_order>
|
|
<grouplist>
|
|
<groupid>container-management</groupid>
|
|
<groupid>core</groupid>
|
|
<groupid>hardware-support</groupid>
|
|
<groupid>headless-management</groupid>
|
|
<groupid>server-product</groupid>
|
|
<groupid>standard</groupid>
|
|
</grouplist>
|
|
<optionlist><!----></optionlist>
|
|
</environment>
|
|
<environment>
|
|
<id>virtualization-host-environment</id>
|
|
<name>Virtualization Host</name>
|
|
<description>Minimal virtualization host.</description>
|
|
<display_order>99</display_order>
|
|
<grouplist>
|
|
<groupid>base</groupid>
|
|
<groupid>core</groupid>
|
|
<groupid>standard</groupid>
|
|
<groupid>virtualization-hypervisor</groupid>
|
|
<groupid>virtualization-tools</groupid>
|
|
</grouplist>
|
|
<optionlist><!----></optionlist>
|
|
</environment>
|
|
<environment>
|
|
<id>workstation-product-environment</id>
|
|
<name>Workstation</name>
|
|
<description>Workstation is a user-friendly desktop system for laptops and PCs.</description>
|
|
<display_order>4</display_order>
|
|
<grouplist>
|
|
<groupid>base-x</groupid>
|
|
<groupid>core</groupid>
|
|
<groupid>fonts</groupid>
|
|
<groupid>gnome-desktop</groupid>
|
|
<groupid>guest-desktop-agents</groupid>
|
|
<groupid>hardware-support</groupid>
|
|
<groupid>internet-browser</groupid>
|
|
<groupid>multimedia</groupid>
|
|
<groupid>networkmanager-submodules</groupid>
|
|
<groupid>print-client</groupid>
|
|
<groupid>standard</groupid>
|
|
<groupid>workstation-product</groupid>
|
|
</grouplist>
|
|
<optionlist><!----></optionlist>
|
|
</environment>
|
|
#+END_SRC
|
|
@@html:</details>@@
|
|
|
|
@@html:<details>@@
|
|
@@html:<summary>comps-BaseOS.x86_64.xml</summary>@@
|
|
#+BEGIN_SRC xml
|
|
<environment>
|
|
<id>custom-environment</id>
|
|
<name>Custom Operating System</name>
|
|
<description>Basic building block for a custom RHEL system.</description>
|
|
<display_order>99</display_order>
|
|
<grouplist>
|
|
<groupid>core</groupid>
|
|
</grouplist>
|
|
<optionlist><!----></optionlist>
|
|
</environment>
|
|
<environment>
|
|
<id>minimal-environment</id>
|
|
<name>Minimal Install</name>
|
|
<description>Basic functionality.</description>
|
|
<display_order>3</display_order>
|
|
<grouplist>
|
|
<groupid>core</groupid>
|
|
</grouplist>
|
|
<optionlist><!----></optionlist>
|
|
</environment>
|
|
<environment>
|
|
<id>server-product-environment</id>
|
|
<name>Server</name>
|
|
<description>An integrated, easy-to-manage server.</description>
|
|
<display_order>2</display_order>
|
|
<grouplist>
|
|
<groupid>core</groupid>
|
|
<groupid>hardware-support</groupid>
|
|
<groupid>headless-management</groupid>
|
|
<groupid>server-product</groupid>
|
|
<groupid>standard</groupid>
|
|
</grouplist>
|
|
<optionlist><!----></optionlist>
|
|
</environment>
|
|
#+END_SRC
|
|
@@html:</details>@@
|
|
|
|
* Fedora
|
|
Fedora 分不同的变体, 常见的是 Server 和 Workstation
|
|
与 CentOS 不同, Fedora 是在 [[https://pagure.io/fedora-kickstarts/][kickstarts]] 定义的变体
|
|
在 =[Payload]= 中定义了安装哪些软件(组)
|
|
然后根据 [[https://pagure.io/fedora-comps/blob/main/f/comps-f37.xml.in][comps.xml]] 就知道安装了什么软件
|
|
** Workstation
|
|
=workstation-product-environment=
|
|
#+BEGIN_SRC xml
|
|
<environment>
|
|
<id>workstation-product-environment</id>
|
|
<_name>Fedora Workstation</_name>
|
|
<_description>Fedora Workstation is a user friendly desktop system for laptops and PCs.</_description>
|
|
<display_order>2</display_order>
|
|
<grouplist>
|
|
<groupid>base-x</groupid>
|
|
<groupid>container-management</groupid>
|
|
<groupid>core</groupid>
|
|
<groupid>firefox</groupid>
|
|
<groupid>fonts</groupid>
|
|
<groupid>gnome-desktop</groupid>
|
|
<groupid>guest-desktop-agents</groupid>
|
|
<groupid>hardware-support</groupid>
|
|
<groupid>libreoffice</groupid>
|
|
<groupid>multimedia</groupid>
|
|
<groupid>networkmanager-submodules</groupid>
|
|
<groupid>printing</groupid>
|
|
<groupid>workstation-product</groupid>
|
|
</grouplist>
|
|
<optionlist><!----></optionlist>
|
|
</environment>
|
|
#+END_SRC
|
|
|
|
** Server
|
|
=server-product-environment=
|
|
#+BEGIN_SRC xml
|
|
<environment>
|
|
<id>server-product-environment</id>
|
|
<name>Server</name>
|
|
<display_order>2</display_order>
|
|
<grouplist>
|
|
<groupid>server-product</groupid>
|
|
<groupid>standard</groupid>
|
|
<groupid>core</groupid>
|
|
<groupid>hardware-support</groupid>
|
|
<groupid>headless-management</groupid>
|
|
<groupid>container-management</groupid>
|
|
</grouplist>
|
|
<optionlist><!----></optionlist>
|
|
</environment>
|
|
#+END_SRC
|
|
|
|
** What I want
|
|
花了一阵从 comps.xml 里搜所有安装界面的选项, 只有几个我能全选, 别的就慢慢手动安吧
|
|
(emacs web-mode 和 ripgrep 是好帮手)
|
|
@@html:<details>@@
|
|
@@html:<summary>my choice</summary>@@
|
|
#+BEGIN_SRC xml
|
|
<group>
|
|
<id>standard</id>
|
|
<_name>Standard</_name>
|
|
<_description>Common set of utilities that extend the minimal installation.</_description>
|
|
<default>false</default>
|
|
<uservisible>false</uservisible>
|
|
<packagelist><!----></packagelist>
|
|
</group>
|
|
<group>
|
|
<id>c-development</id>
|
|
<_name>C Development Tools and Libraries</_name>
|
|
<_description>These tools include core development tools such as automake, gcc and debuggers.</_description>
|
|
<default>false</default>
|
|
<uservisible>true</uservisible>
|
|
<packagelist>
|
|
<packagereq type="mandatory">autoconf</packagereq>
|
|
<packagereq type="mandatory">automake</packagereq>
|
|
<packagereq type="mandatory">binutils</packagereq>
|
|
<packagereq type="mandatory">bison</packagereq>
|
|
<packagereq type="mandatory">flex</packagereq>
|
|
<packagereq basearchonly="true" type="mandatory">gcc</packagereq>
|
|
<packagereq basearchonly="true" type="mandatory">gcc-c++</packagereq>
|
|
<packagereq basearchonly="true" type="mandatory">gdb</packagereq>
|
|
<packagereq type="mandatory">glibc-devel</packagereq>
|
|
<packagereq type="mandatory">libtool</packagereq>
|
|
<packagereq type="mandatory">make</packagereq>
|
|
<packagereq type="mandatory">pkgconf</packagereq>
|
|
<packagereq type="mandatory">strace</packagereq>
|
|
<packagereq type="default">byacc</packagereq>
|
|
<packagereq type="default">ccache</packagereq>
|
|
<packagereq type="default">cscope</packagereq>
|
|
<packagereq type="default">ctags</packagereq>
|
|
<packagereq type="default">elfutils</packagereq>
|
|
<packagereq type="default">indent</packagereq>
|
|
<packagereq basearchonly="true" type="default">ltrace</packagereq>
|
|
<packagereq basearchonly="true" type="default">perf</packagereq>
|
|
<packagereq type="default">valgrind</packagereq>
|
|
<packagereq type="optional">astyle</packagereq>
|
|
<packagereq type="optional">cbmc</packagereq>
|
|
<packagereq type="optional">check</packagereq>
|
|
<packagereq type="optional">cmake</packagereq>
|
|
<packagereq type="optional">coan</packagereq>
|
|
<packagereq type="optional">cproto</packagereq>
|
|
<packagereq type="optional">ElectricFence</packagereq>
|
|
<packagereq type="optional">insight</packagereq>
|
|
<packagereq type="optional">nasm</packagereq>
|
|
<packagereq type="optional">pscan</packagereq>
|
|
<packagereq type="optional">python3-scons</packagereq>
|
|
<packagereq type="optional">remake</packagereq>
|
|
<packagereq type="optional">scorep</packagereq>
|
|
<packagereq type="optional">splint</packagereq>
|
|
<packagereq type="optional">yasm</packagereq>
|
|
<packagereq type="optional">zzuf</packagereq>
|
|
</packagelist>
|
|
</group>
|
|
<group>
|
|
<id>container-management</id>
|
|
<_name>Container Management</_name>
|
|
<_description>Tools for managing Linux containers</_description>
|
|
<default>false</default>
|
|
<uservisible>true</uservisible>
|
|
<packagelist>
|
|
<packagereq type="default">podman</packagereq>
|
|
<packagereq type="optional">buildah</packagereq>
|
|
<packagereq type="optional">flatpak</packagereq>
|
|
<packagereq type="optional">flatpak-builder</packagereq>
|
|
</packagelist>
|
|
</group>
|
|
<group>
|
|
<id>rpm-development-tools</id>
|
|
<_name>RPM Development Tools</_name>
|
|
<_description>These tools include core development tools such rpmbuild.</_description>
|
|
<default>false</default>
|
|
<uservisible>true</uservisible>
|
|
<packagelist>
|
|
<packagereq type="mandatory">redhat-rpm-config</packagereq>
|
|
<packagereq type="mandatory">rpm-build</packagereq>
|
|
<packagereq type="default">koji</packagereq>
|
|
<packagereq type="default">mock</packagereq>
|
|
<packagereq type="default">rpmdevtools</packagereq>
|
|
<packagereq type="optional">pungi</packagereq>
|
|
<packagereq type="optional">rpmlint</packagereq>
|
|
</packagelist>
|
|
</group>
|
|
<group>
|
|
<id>multimedia</id>
|
|
<_name>Multimedia</_name>
|
|
<_description>Audio/video framework common to desktops</_description>
|
|
<default>false</default>
|
|
<uservisible>false</uservisible>
|
|
<packagelist>
|
|
<packagereq>alsa-ucm</packagereq>
|
|
<packagereq>alsa-utils</packagereq>
|
|
<packagereq>gstreamer1-plugin-libav</packagereq>
|
|
<packagereq>gstreamer1-plugin-openh264</packagereq>
|
|
<packagereq>gstreamer1-plugins-bad-free</packagereq>
|
|
<packagereq>gstreamer1-plugins-good</packagereq>
|
|
<packagereq>gstreamer1-plugins-ugly-free</packagereq>
|
|
<packagereq>PackageKit-gstreamer-plugin</packagereq>
|
|
<packagereq>pipewire-alsa</packagereq>
|
|
<packagereq>pipewire-gstreamer</packagereq>
|
|
<packagereq>pipewire-pulseaudio</packagereq>
|
|
<packagereq>pipewire-utils</packagereq>
|
|
<packagereq>wireplumber</packagereq>
|
|
<packagereq type="conditional" requires="gstreamer">gstreamer-plugins-espeak</packagereq>
|
|
</packagelist>
|
|
</group>
|
|
#+END_SRC
|
|
@@html:</details>@@
|
|
剩下的不在选项里, 只能和某些环境捆绑的组:
|
|
- swaywm (没错, 因为 sway-desktop-environment 环境也有我不像要的包)
|
|
- multimedia
|
|
- fonts
|
|
- development-libs
|
|
|
|
当我越来越追求极简主义的时候, 我真的适合再接着用 Fedora 吗? 我可能就是需要一个机会尝试其他发行版了.
|
|
我剩下的牢骚在这: https://dongdigua.github.io/cleanup_home.gmi.txt
|