Fedora

Включение расцветки Bash

sudo dnf install git wget curl ruby ruby-devel util-linux-user redhat-rpm-config gcc gcc-c++ make fontawesome-fonts powerline vim-powerline tmux-powerline powerline-fonts
sudo gem install colorls
sudo gem update colorls
mkdir ~/.fonts
git clone --depth=1 https://github.com/ryanoasis/nerd-fonts ~/.nerd-fonts
cd .nerd-fonts 
sudo ./install.sh -S
fc-cache -f -v
nano ~/.bashrc

if [ -f `which powerline-daemon` ]; then
  powerline-daemon -q
  POWERLINE_BASH_CONTINUATION=1
  POWERLINE_BASH_SELECT=1
  . /usr/share/powerline/bash/powerline.sh
fi

alias ll='colorls -lA --sd --gs --group-directories-first'
alias ls='colorls --group-directories-first'


Настройка после установки

Смена Wayland на Xorg

sudo nano /etc/gdm/custom.conf

[daemon]
WaylandEnable=false
DefaultSession=gnome-xorg.desktop

Установка драйверов Nvidia

modinfo -F version nvidia
sudo dnf update --refresh -y
sudo dnf install -y akmod-nvidia xorg-x11-drv-nvidia-cuda xorg-x11-drv-nvidia-cuda-libs vdpauinfo libva-vdpau-driver libva-utils vulkan
modinfo -F version nvidia

Установка OpenCL для AMD

Opensource:
sudo dnf install -y xorg-x11-drv-amdgpu vulkan-tools mesa-vulkan-drivers
grubby --update-kernel=ALL --args="radeon.cik_support=0 amdgpu.cik_support=1 amdgpu.ppfeaturemask=0xffffffff"

ROCm:
git clone https://github.com/sukhmeetbawa/OpenCL-AMD-Fedora.git
cd ./OpenCL-AMD-Fedora
./opencl-amd.sh

Ускорение работы DNF

echo 'fastestmirror=1' | sudo tee -a /etc/dnf/dnf.conf
echo 'max_parallel_downloads=10' | sudo tee -a /etc/dnf/dnf.conf
echo 'deltarpm=true' | sudo tee -a /etc/dnf/dnf.conf

Установка связки ключенй

sudo dnf install libgnome-keyring

Отключение автообновление пакетов

sudo dnf remove dnf-automatic
sudo systemctl disable dnf-makecache.service
sudo systemctl disable dnf-makecache.timer
sudo echo "metadata_timer_sync=0" >> /etc/dnf/dnf.conf

Обновление прошивок

sudo dnf install -y *-firmware
sudo fwupdmgr get-devices
sudo fwupdmgr refresh --force
sudo fwupdmgr get-updates
sudo fwupdmgr update

Отключение проверки соединения

sudo dnf remove NetworkManager-config-connectivity-fedora
sudo systemctl restart NetworkManager.service

Смена имени компьютера

sudo hostnamectl set-hostname fedora

Включение Trim

sudo systemctl enable fstrim.timer

Установка crontab

sudo dnf install crontabs
sudo systemctl enable --now crond

Установка обновлений

sudo dnf upgrade --refresh
sudo dnf check
sudo dnf autoremove
sudo reboot now

Отключение SELinux

sudo grubby --update-kernel=ALL --args="selinux=0"

Установка Gnome Tweaks и Extensions

sudo dnf install -y gnome-extensions-app gnome-tweaks
sudo dnf install -y gnome-shell-extension-appindicator

Подключение репозиториев

sudo dnf install -y https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
sudo dnf install -y https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
sudo dnf install -y rpmfusion-free-release-tainted
sudo dnf install -y rpmfusion-nonfree-release-tainted
sudo dnf upgrade --refresh
sudo dnf groupupdate -y core
sudo dnf install -y dnf-plugins-core fedora-workstation-repositories

Включение Flatpak

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak update

Включение Snap

sudo dnf install -y snapd
sudo ln -s /var/lib/snapd/snap /snap
sudo reboot now
sudo snap refresh

Смена приоритета магазина приложений

gsettings set org.gnome.software packaging-format-preference "['RPM', 'flatpak']"

Установка управления Flatpak

flatpak install -y flatseal

Менеджер расширений

flatpak install -y flathub com.mattjakeman.ExtensionManager

Минимальный набор для кастомизации

sudo dnf install -y gnome-tweaks gnome-extensions-app gnome-shell-extension-appindicator

Увеличение максимальной громкости

gsettings set org.gnome.desktop.sound allow-volume-above-100-percent 'true'

Увеличение лимитов

sudo -i
echo 'fs.inotify.max_user_watches = 524288' >> /etc/sysctl.conf
sysctl -p

Установка кодеков

sudo dnf install -y gstreamer1-plugins-{bad-\*,good-\*,base} gstreamer1-plugin-openh264 gstreamer1-libav --exclude=gstreamer1-plugins-bad-free-devel ffmpeg gstreamer-ffmpeg
sudo dnf install -y lame\* --exclude=lame-devel
sudo dnf install -y libdvdcss
sudo dnf groupupdate sound-and-video
sudo dnf config-manager --set-enabled fedora-cisco-openh264
sudo dnf install -y gstreamer1-plugin-openh264 mozilla-openh264
sudo dnf group upgrade --with-optional Multimedia

Поддержки кодеков гарнитуры

sudo dnf install libheif-freeworld

Установка шрифтов

sudo dnf install -y 'google-roboto*' 'mozilla-fira*' fira-code-fonts

Включение русского языкового пакета

sudo dnf install -y langpacks-ru

Включение аппаратного декодирования

sudo rpm -qa |grep -e mesa-va-drivers -e mesa-vdpau-drivers
sudo dnf swap mesa-va-drivers mesa-va-drivers-freeworld
sudo dnf swap mesa-vdpau-drivers mesa-vdpau-drivers-freeworld
sudo dnf swap mesa-va-drivers.i686 mesa-va-drivers-freeworld.i686
sudo dnf swap mesa-vdpau-drivers.i686 mesa-vdpau-drivers-freeworld.i686
sudo dnf groupupdate multimedia --setop="install_weak_deps=False" --exclude=PackageKit-gstreamer-plugin
sudo dnf groupupdate sound-and-video
sudo dnf install -y @multimedia @sound-and-video ffmpeg-libs gstreamer1-plugins-{bad-\*,good-\*,base} gstreamer1-plugin-openh264 gstreamer1-libav lame\*

Отключение SELinux

sudo sed -i -e 's/SELINUX=/SELINUX=disabled #/g' /etc/selinux/config
Отключение ABRT
sudo echo "OnlyFatalMCE = yes" >> /etc/abrt/plugins/oops.conf
sudo systemctl stop abrt-journal-core.service
sudo systemctl stop abrt-oops.service
sudo systemctl stop abrt-xorg.service
sudo systemctl stop abrtd.service
sudo systemctl disable abrt-journal-core.service
sudo systemctl disable abrt-oops.service
sudo systemctl disable abrt-xorg.service
sudo systemctl disable abrtd.service

Переключение языка через Alt+Shift

gsettings set org.gnome.desktop.wm.keybindings switch-input-source "['<Shift>Alt_L']"
gsettings set org.gnome.desktop.wm.keybindings switch-input-source-backward "['<Alt>Shift_L']"

Установка ClamAV

sudo dnf install clamav clamd clamav-update
sudo systemctl stop clamav-freshclam
sudo freshclam
sudo systemctl enable --now clamav-freshclam

Установка иконок Papirus

wget -qO- https://git.io/papirus-icon-theme-install | sh
wget -qO- https://git.io/papirus-folders-install | sh
wget -qO- https://raw.githubusercontent.com/PapirusDevelopmentTeam/papirus-filezilla-themes/master/install.sh | sh
wget -qO- https://raw.githubusercontent.com/PapirusDevelopmentTeam/papirus-libreoffice-theme/master/install-papirus-root.sh | sh

PortProton

sudo dnf update && sudo dnf upgrade --refresh && sudo dnf install curl gamemode icoutils libcurl wget zenity bubblewrap zstd cabextract tar goverlay openssl steam
wget -c "https://github.com/Castro-Fidel/PortWINE/raw/master/portwine_install_script/PortProton_1.0" && sh PortProton_1.0

DroidCam

sudo dnf copr enable meeuw/droidcam
sudo dnf install droidcam
sudo akmods
sudo modprobe v4l2loopback-dc
sudo reboot

Bucklespring

sudo dnf install bucklespring-wayland
sudo usermod -a -G input $(id -un)
buckle-wayland

Дополнительные репозитории

sudo rpm --import https://download.sublimetext.com/sublimehq-rpm-pub.gpg
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
sudo rpm --import https://shop.softmaker.com/repo/linux-repo-public.key
sudo rpm --import https://keys.anydesk.com/repos/RPM-GPG-KEY
sudo rpm --import https://rpm.opera.com/rpmrepo.key

sudo dnf config-manager --add-repo https://repo.vivaldi.com/archive/vivaldi-fedora.repo
sudo dnf config-manager --add-repo https://repo.skype.com/rpm/stable/skype-stable.repo
sudo dnf config-manager --add-repo https://jelmerro.nl/fedora/jelmerro.repo
sudo dnf config-manager --add-repo https://rpm.librewolf.net/librewolf-repo.repo
sudo dnf config-manager --add-repo https://dl.winehq.org/wine-builds/fedora/37/winehq.repo
sudo dnf config-manager --add-repo https://download.sublimetext.com/rpm/stable/x86_64/sublime-text.repo
sudo dnf config-manager --add-repo https://download.opensuse.org/repositories/hardware:razer/Fedora_$(rpm -E %fedora)/hardware:razer.repo
sudo dnf config-manager --add-repo https://pkgs.tailscale.com/stable/fedora/37/tailscale.repo

sudo dnf copr enable perabyte/webapp-manager
sudo dnf copr enable refi64/webapp-manager
sudo dnf copr enable mystro256/rocm-opencl
sudo dnf copr enable gloriouseggroll/amdgpu-vulkan-switcher
sudo dnf copr enable sergiomb/electrons
sudo dnf copr enable wereturtle/stable
sudo dnf copr enable vandebugger/tapper
sudo dnf copr enable principis/howdy
sudo dnf copr enable zeno/scrcpy
sudo dnf copr enable varlad/helix
sudo dnf copr enable cuintle/RHVoice
sudo dnf copr enable principis/NoiseTorch
sudo dnf copr enable kylegospo/grub-btrfs
sudo dnf copr enable polter/far2l
sudo dnf copr enable dani/bucklespring
sudo dnf copr enable atim/gping
sudo dnf copr enable rmnscnce/kernel-xanmod
sudo dnf copr enable frinksy/airshipper
sudo dnf copr enable abn/throttled
sudo dnf copr enable adrake/throttled

sudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/vscode.repo'

sudo sh -c 'echo -e "[SoftMaker_Office_Repository]\nname=SoftMaker Office Repository\nenabled=1\nautorefresh=1\nbaseurl=https://shop.softmaker.com/repo/rpm\npath=/\ntype=rpm-md\nkeeppackages=0\nrepo_gpgcheck=1\ngpgkey=https://shop.softmaker.com/repo/linux-repo-public.key\nenabled_metadata=0" > /etc/yum.repos.d/softmaker.repo'

curl -1sLf 'https://dl.cloudsmith.io/public/asbru-cm/release/cfg/setup/bash.rpm.sh' | sudo -E bash

sudo wget https://download.virtualbox.org/virtualbox/rpm/fedora/virtualbox.repo -O /etc/yum.repos.d/virtualbox.repo

sudo wget https://fedorapeople.org/groups/virt/virtio-win/virtio-win.repo -O /etc/yum.repos.d/virtio-win.repo

sudo cat > /etc/yum.repos.d/AnyDesk-Fedora.repo << "EOF"
[anydesk]
name=AnyDesk Fedora - stable
baseurl=http://rpm.anydesk.com/fedora/$basearch/
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://keys.anydesk.com/repos/RPM-GPG-KEY
EOF

sudo cat > /etc/yum.repos.d/cisofy-lynis.repo << "EOF"
[lynis]
name=CISOfy Software - Lynis package
baseurl=https://packages.cisofy.com/community/lynis/rpm/
enabled=1
gpgkey=https://packages.cisofy.com/keys/cisofy-software-rpms-public.key
gpgcheck=1
priority=2
EOF

sudo tee /etc/yum.repos.d/anydesk.repo << "EOF" > /dev/null
[anydesk]
name=AnyDesk Stable
baseurl=http://rpm.anydesk.com/centos/${basearch}/
gpgkey=https://keys.anydesk.com/repos/RPM-GPG-KEY
EOF

sudo tee /etc/yum.repos.d/opera.repo <<REPO
[opera]
name=Opera packages
type=rpm-md
baseurl=https://rpm.opera.com/rpm
gpgcheck=1
gpgkey=https://rpm.opera.com/rpmrepo.key
enabled=1
REPO

Обновление до нового релиза

sudo dnf upgrade --refresh
sudo dnf install dnf-plugin-system-upgrade
sudo dnf system-upgrade download --releasever=38
sudo dnf system-upgrade reboot
sudo dnf reinstall akmod-nvidia
sudo dnf system-upgrade clean
sudo dnf clean packages
sudo dnf install rpmconf
sudo rpmconf -a
sudo dnf install remove-retired-packages
sudo remove-retired-packages
gsettings set org.gnome.shell disable-user-extensions false


Переключения раскладки

Alt+Shift

gsettings set org.gnome.desktop.wm.keybindings switch-input-source "['<Shift>Alt_L']"
gsettings set org.gnome.desktop.wm.keybindings switch-input-source-backward "['<Alt>Shift_L']"

Смена редакции на KDE

tee migrate-gnome-kde.sh << EOF > /dev/null
#!/usr/bin/bash
sudo dnf shell -y --setopt protected_packages= << EOI
swap fedora-release-workstation fedora-release-kde
swap fedora-release-identity-workstation fedora-release-identity-kde
run
remove @gnome-desktop
run
remove *gnome* *gtk*
run
install @kde-desktop-environment
run
EOI
sudo systemctl enable sddm.service
reboot
EOF

Переключиться в терминальный режим: CTRL+ALT+F3

Залогиниться и выполнить:

chmod +x migrate-gnome-kde.sh
./migrate-gnome-kde.sh