feat: add command-line interface and package management functionality

- Implemented a new CLI using Clap for managing Fedora configurations and packages.
- Added commands for configuring dnf, adding repositories, installing RPM Fusion, adding users to groups, and managing packages.
- Created data files for various package lists (AMD, Intel, common, firmware, gnome extra) and user groups.
- Introduced Zsh completion script for improved command-line usability.
- Removed the old CLI implementation and integrated the new structure into the main application logic.
This commit is contained in:
2025-05-01 20:35:29 +02:00
parent 2a96fd211a
commit 4cf779b3fe
15 changed files with 2245 additions and 134 deletions

16
data/amd_list Normal file
View File

@@ -0,0 +1,16 @@
libva
libva-utils
gstreamer1-vaapi
ffmpeg
mesa-dri-drivers
mesa-va-drivers-freeworld
mesa-vdpau-drivers-freeworld
mesa-va-drivers-freeworld.i686
mesa-vdpau-drivers-freeworld.i686
rocm-opencl
rocminfo
rocm-clinfo
rocm-hip
rocm-runtime
rocm-smi
rocm-hip-devel

42
data/common_list Normal file
View File

@@ -0,0 +1,42 @@
@development-tools
@virtualization
@multimedia
@sound-and-video
vim
papirus-icon-theme
jetbrains-mono-fonts-all
rsms-inter-fonts
rsms-inter-vf-fonts
fish
rustup
git
htop
btop
fastfetch
inxi
dejavu-fonts-all
liberation-fonts
liberation-narrow-fonts
google-noto-emoji-fonts
google-noto-color-emoji-fonts
google-noto-sans-fonts
google-roboto*
mozilla-fira*
adobe-source-code*
adobe-source-sans-pro-fonts
fontawesome-fonts-all
google-droid-fonts-all
bitstream-vera-fonts-all
fira-code-fonts
cascadia-fonts-all
intel-one-mono-fonts
curl
gstreamer1-plugins-base
gstreamer1-plugins-good
gstreamer1-plugins-bad-free
gstreamer1-plugins-good-extras
gstreamer1-plugins-bad-free-extras
gstreamer1-plugins-ugly-free
gstreamer1-plugin-libav
gstreamer1-plugin-openh264
https://downloads.sourceforge.net/project/mscorefonts2/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm

1
data/firmware_list Normal file
View File

@@ -0,0 +1 @@
*-firmware

7
data/gnome_extra_list Normal file
View File

@@ -0,0 +1,7 @@
gnome-tweaks
gnome-extensions-app
gnome-shell-extension-appindicator
gnome-shell-extension-dash-to-dock
gnome-shell-extension-caffeine
gnome-shell-extension-gsconnect
gnome-shell-extension-system-monitor

13
data/intel_list Normal file
View File

@@ -0,0 +1,13 @@
intel-media-driver
libva-intel-driver
libva-intel-media-driver
libva
libva-utils
gstreamer1-vaapi
ffmpeg
intel-gpu-tools
mesa-dri-drivers
mesa-va-drivers-freeworld
mesa-vdpau-drivers-freeworld
mesa-va-drivers-freeworld.i686
mesa-vdpau-drivers-freeworld.i686

15
data/user_groups Normal file
View File

@@ -0,0 +1,15 @@
libvirt
video
audio
bin
colord
daemon
dbus
flatpak
games
input
kvm
pipewire
polkitd
qemu
render