Sejak memasang "dark" theme, saya cenderung menjadi malas menulis. Untuk sementara, dark theme saya disable dulu yaa. Terima kasih (^_^) (bandithijo, 2024/09/15) ●
Prakata
Catatan ini merupakan kumpulan packages dan beberapa konfigurasi yang saya lakukan setelah melakukan proses instalasi Fedora Workstation.
Saya memutuskan untuk mengkategorikan catatan ini sebagai “note” dan bukan sebagai “blog” karena kemungkinan saya akan terus memperbaharui isinya seiring dengan berjalannya waktu pemakaian apabila saya menemukan paket-paket yang menarik.
Selain itu, memiliki sebuah catatan “perjalanan” akan menumbuhkan rasa percaya diri untuk terus maju ke depan. Maksud saya, apabila terjadi kegagalan karena satu dan lain hal, kita tidak segan untuk memulai lagi dari awal. Ataupun, kita dapat dengan mudah memulai percabangan untuk awal baru yang lain.
Pre Install
Verify your download with CHECKSUM files.
Setelah mengunduh file ISO, lakukan verifikasi untuk menguji keamanan dan integritas file ISO yang telah didownload.
Langkah awal, import Fedora’s GPG key(s).
$ curl https://getfedora.org/static/fedora.gpg | gpg --import
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 12543 100 12543 0 0 10945 0 0:00:01 0:00:01 --:--:-- 10945
gpg: key 1161AE6945719A39: public key "Fedora (34) <fedora-34-primary@fedoraproject.org>" imported
gpg: key 49FD77499570FF31: public key "Fedora (33) <fedora-33-primary@fedoraproject.org>" imported
gpg: key 6C13026D12C944D0: public key "Fedora (32) <fedora-32-primary@fedoraproject.org>" imported
gpg: key 50CB390B3C3359C4: public key "Fedora (31) <fedora-31-primary@fedoraproject.org>" imported
gpg: key 7BB90722DBBDCF7C: public key "Fedora (iot 2019) <fedora-iot-2019@fedoraproject.org>" imported
gpg: key 21EA45AB2F86D6A1: public key "Fedora EPEL (8) <epel@fedoraproject.org>" imported
gpg: key 6A2FAEA2352C64E5: public key "Fedora EPEL (7) <epel@fedoraproject.org>" imported
gpg: key 3B49DF2A0608B895: public key "EPEL (6) <epel@fedoraproject.org>" imported
gpg: Total number processed: 8
gpg: imported: 8
Dapat dilihat, kita telah berhasil mengimport 8 public keys.
Kemudian, download file CHECKSUM dari yang dapat kita download di halaman ini, di sini. Download file CHECKSUM yang sesuai dengan file ISO yang teman-teman gunakan.
Kemudian, verifikasi file CHECKSUM tersebut.
$ gpg --verify-files *-CHECKSUM
$ gpg --verify-files Fedora-Workstation-34-1.2-x86_64-CHECKSUM
gpg: Signature made Sat 24 Apr 2021 03:37:01 AM WITA
gpg: using RSA key 8C5BA6990BDB26E19F2A1A801161AE6945719A39
gpg: Good signature from "Fedora (34) <fedora-34-primary@fedoraproject.org>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 8C5B A699 0BDB 26E1 9F2A 1A80 1161 AE69 4571 9A39
CHECKSUM harus memiliki keterangan “Good signature”dari salah satu key.
Letakkan file ISO (*.iso) dengan file checksum (*-CHECKSUM) pada direktori yang sama.
├─ Fedora-Workstation-34-1.2-x86_64-CHECKSUM
└─ Fedora-Workstation-Live-x86_64-34-1.2.iso
Selanjutnya, lakukan pengecekan checksum terhadap file ISO yang telah kita download.
$ sha256sum -c *-CHECKSUM
$ sha256sum -c Fedora-Workstation-34-1.2-x86_64-CHECKSUM
Fedora-Workstation-Live-x86_64-34-1.2.iso: OK
sha256sum: WARNING: 19 lines are improperly formatted
* Abaikan saja warning 19 lines are improperly formated, hal ini terjadi karena di dalam file *-CHECKSUM tersebut juga terdapat PGP Signature. Coba komentar saja baris-baris selain SHA256SUM valuenya (termasuk blankline), maka warningnya akan berkurang hilang.
NaN Packages That I Need to Install
Enable fastest mirror and Delta RPM
Sumber: https://www.linuxsec.org/2020/03/menggunakan-fastest-mirror-di-fedora.html
Edit file /etc/dnf/dnf.conf
, lalu tambahkan baris,
1
2
3
4
5
6
[main]
...
...
...
fastestmirror=True
deltarpm=True
Kemudian, tambahkan “kode negara” &country=ID
di belakang meta link repository yang ada di /etc/yum.repos.d/
.
Repository utamanya adalah fedora-updates.repo
.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[updates]
...
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f$releasever&arch=$basearch&country=ID
...
...
[updates-debuginfo]
...
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-debug-f$releasever&arch=$basearch&country=ID
...
...
[updates-source]
...
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-debug-f$releasever&arch=$basearch&country=ID
...
...
Update system
Lakukan refresh dan update repository dengan perintah,
$ sudo dnf up --ref
up, adalah short hand dari upgrade.
–ref, adalah short hand dari –refresh.
dnf update dan dnf upgrade sama, namun konvensi terbaru sudah menggunakan dnf upgrade.
Enable RPMFusion Repository
Sumber: https://docs.fedoraproject.org/en-US/quick-docs/setup_rpmfusion/
Free Repository
$ sudo dnf in https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
Nonfrere Repository
$ sudo dnf in https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
Enabling Appstream data from the RPM Fusion repositories (GNOME)
This procedure describes how to install the Appstream data provided by the RPM Fusion software repositories.
Prerequisites
- You have internet access.
- You are using the Gnome desktop environment.
- You have the RPMFusion repositories installed
Procedure
$ sudo dnf group update core
Install gnome-tweaks
GNOME Tweaks allows adjusting advanced configuration settings in GNOME 3. This includes things like the fonts used in user interface elements, alternative user interface themes, changes in window management behavior, GNOME Shell appearance and extension, etc.
Sebelumnya, paket ini bernama gnome-tweak-tool
.
$ sudo dnf in gnome-tweaks
gnome-extensions-app
GNOME Extensions is an application for configuring and removing GNOME Shell extensions.
GNOME Shell Extension sudah dipisahkan dari GNOME Tweaks, kita perlu memasang tools tambahan untuk mengatur ekstensi2 tersebut selain menggunakan web apps https://extensions.gnome.org/local/.
$ sudo dnf in gnome-extensions-app
DConf Editor
Graphical tool for editing the dconf configuration database.
$ sudo dnf in dconf-editor
GConf Editor
gconf-editor allows you to browse and modify GConf configuration sources.
$ sudo dnf in gconf-editor
How to disable Gnome Software autostart
Sumber: https://forums.fedoraforum.org/showthread.php?315410-How-to-disable-Gnome-Software-autostart
Disable download-updates
of Gnome Software with dcof-editor.
[org/gnome/software]
download-updates=false
Disable autostart gnome-software service. Sumber: https://askubuntu.com/questions/959353/disable-gnome-software-from-loading-at-startup
-
Copy of the
/etc/xdg/autostart/gnome-software-service.desktop
file to the~/.config/autostart/
directory. -
Open the copied
.desktop
file with a text editor and remove theNoDisplay=true
-
Now GNOME Software should appear in your Startup Applications list. Disable it. Alternatively, you may append an
X-GNOME-Autostart-enabled=false
Disable Super+P on GNOME for Switch Monitor by default
Sumber: https://askubuntu.com/a/1038869/777616
Development Group Packages
These tools include general development tools such as git and CVS.
$ sudo dnf group install "Development Tools"
Detail packages
Mandatory Packages:
gettext
Default Packages:
diffstat
doxygen
git
patch
patchutils
subversion
systemtap
Optional Packages:
buildbot
colordiff
cvs
cvs2cl
cvsgraph
cvsps
darcs
dejagnu
expect
gambas3-ide
git-annex
git-cola
git2cl
gitg
gtranslator
highlight
lcov
manedit
meld
monotone
myrepos
nemiver
qgit
quilt
rapidsvn
rcs
robodoc
scanmem
subunit
svn2cl
tig
tkcvs
tortoisehg
translate-toolkit
utrac
Tilix
Official site: https://github.com/gnunn1/tilix
Tilix is an advanced GTK3 tiling terminal emulator that follows the Gnome Human Interface Guidelines.
Features...
- Layout terminals in any fashion by splitting them horizontally or vertically
- Terminals can be re-arranged using drag and drop both within and between windows
- Terminals can be detached into a new window via drag and drop
- Input can be synchronized between terminals so commands typed in one terminal are replicated to the others
- The grouping of terminals can be saved and loaded from disk
- Terminals support custom titles
- Color schemes are stored in files and custom color schemes can be created by simply creating a new file
- Transparent background
- Supports notifications when processes are completed out of view
$ sudo dnf in tilix
NetworkManager-tui
Kalau tidak terbiasa menggunakan nmcli
(command line tools yang sudah included dengan NetworkManager), bisa menggunakan nmtui
.
Berbeda dengan Arch Linux, package NetworkManager menyediakan nmcli
dan nmtui
. Di Fedora, NetworkManager hanya menyediakan nmcli
. Kita perlu memasang package NetworkManager-tui untuk dapat menggunakan nmtui
.
Official site: https://networkmanager.dev/
This adds a curses-based “TUI” (Text User Interface) to NetworkManager, to allow performing some of the operations supported by nm-connection-editor and nm-applet in a non-graphical environment.
$ sudo dnf in NetworkManager-tui
Install Vim
Fedora Workstation sudah preinstalled vim-mimimal
dengan file binary bernama vi
.
Karena saya lebih sering menggunakan Neovim, maka saya tidak akan memasang paket vim
.
htop
Official site: http://hisham.hm/htop/
htop is an interactive text-mode process viewer for Linux, similar to top.
$ sudo dnf in htop
iftop
Official site: http://www.ex-parrot.com/~pdw/iftop/
iftop does for network usage what top(1) does for CPU usage. It listens to network traffic on a named interface and displays a table of current bandwidth usage by pairs of hosts. Handy for answering the question “why is our ADSL link so slow?”.
$ sudo dnf in iftop
iperf
Official site: http://sourceforge.net/projects/iperf2
Iperf is a tool to measure maximum TCP bandwidth, allowing the tuning of various parameters and UDP characteristics. Iperf reports bandwidth, delay jitter, datagram loss.
$ sudo dnf in iperf
nmap
Official site: http://nmap.org/
Nmap is a utility for network exploration or security auditing. It supports ping scanning (determine which hosts are up), many port scanning techniques (determine what services the hosts are offering), and TCP/IP fingerprinting (remote host operating system identification). Nmap also offers flexible target and port specification, decoy scanning, determination of TCP sequence predictability characteristics, reverse-identd scanning, and more.
$ sudo dnf in nmap
nmon
Official site: http://nmon.sourceforge.net
nmon is a systems administrator, tuner, benchmark tool, which provides information about CPU, disks, network, etc., all in one view.
$ sudo dnf in nmon
wavemon
Official site: https://github.com/uoaerg/wavemon
wavemon is a wireless device monitoring application that allows you to watch all important information like device configuration, encryption, and power management parameters and network information at once. Adaptive level bargraphs for link quality, signal/noise strength and signal-to-noise ratio. The customizeable “level alarm” feature that notices the user of changes in signal level strength audibly and/or visually. wavemon is able to list of access points in range and shows full-screen level histogram displaying signal/noise levels and SNR.
$ sudo dnf in wavemon
nethogs
Official site: https://github.com/raboof/nethogs/
NetHogs is a small “net top” tool. Instead of breaking the traffic down per protocol or per subnet, like most such tools do, it groups bandwidth by process and does not rely on a special kernel module to be loaded. So if there’s suddenly a lot of network traffic, you can fire up NetHogs and immediately see which PID is causing this, and if it’s some kind of spinning process, kill it.
$ sudo dnf in nethogs
Glances
Official site: https://github.com/nicolargo/glances
Glances is a CLI curses based monitoring tool for both GNU/Linux and BSD. Glances uses the PsUtil library to get information from your system.
$ sudo dnf in glances
Zenith
Official site: https://github.com/bvaisvil/zenith
Zenith - sort of like top or htop but with zoom-able charts, CPU, GPU, network, and disk usage.
Manual Build
Deps,
$ sudo dnf in rust
$ sudo dnf in rust-std-static
$ sudo dnf in cargo
$ git clone https://github.com/bvaisvil/zenith
$ cd zenith
$ make
$ sudo make install
vizex
Official site: https://github.com/bexxmodd/vizex
Visualize disk space and disk usage in your UNIX\Linux terminal.
vizex is the terminal program for the UNIX/Linux systems which helps the user to visualize the disk space usage for every partition and media on the user’s machine. vizex is highly customizable and can fit any user’s taste and preferences.
$ pip install --user vizex
LM Sensors
Official site: http://github.com/lm-sensors/lm-sensors/
The lm_sensors package includes a collection of modules for general SMBus access and hardware monitoring.
$ sudo dnf in lm_sensors
Neofetch
Official site: https://github.com/dylanaraps/neofetch
Neofetch displays information about your system next to an image, your OS logo, or any ASCII file of your choice. The main purpose of Neofetch is to be used in screenshots to show other users what OS/distribution you’re running, what theme/icons you’re using and more.
$ sudo dnf in w3m-img
$ sudo dnf in neofetch
Sound Converter
Official site: http://soundconverter.org
SoundConverter is the leading audio file converter for the GNOME Desktop. It reads anything GStreamer can read (Ogg Vorbis, AAC, MP3, FLAC, WAV, AVI, MPEG, MOV, M4A, AC3, DTS, ALAC, MPC, Shorten, APE, SID, MOD, XM, S3M, etc…), and writes to Opus, Ogg Vorbis, FLAC, WAV, AAC, and MP3 files, or use any GNOME Audio Profile.
SoundConverter aims to be simple to use, and very fast. Thanks to its multithreaded design, it will use as many cores as possible to speed up the conversion. It can also extract the audio from videos.
$ sudo dnf in soundconverter
Audacity
Official site: https://www.audacityteam.org/
Audacity is a cross-platform multitrack audio editor. It allows you to record sounds directly or to import files in various formats. It features a few simple effects, all of the editing features you should need, and unlimited undo. The GUI was built with wxWidgets and the audio I/O supports PulseAudio, OSS and ALSA under Linux.
$ sudo dnf in audacity
Audacious
Official site: https://audacious-media-player.org/
Audacious is an advanced audio player. It is free, lightweight, currently based on GTK+ 2, runs on Linux and many other *nix platforms and is focused on audio quality and supporting a wide range of audio codecs. It still features an alternative skinned user interface (based on Winamp 2.x skins). Historically, it started as a fork of Beep Media Player (BMP), which itself forked from XMMS.
$ sudo dnf in audacious
pass
Official site: http://zx2c4.com/projects/password-store/
Stores, retrieves, generates, and synchronizes passwords securely using gpg and git.
$ sudo dnf in pass
pwgen
Official site: http://sf.net/projects/pwgen
pwgen generates random, meaningless but pronounceable passwords. These passwords contain either only lowercase letters, or upper and lower case, or upper case, lower case and numeric digits. Upper case letters and numeric digits are placed in a way that eases memorizing the password.
$ sudo dnf in pwgen
hashcat
Official site: https://github.com/hashcat/hashcat
Hashcat is the world’s fastest and most advanced password recovery utility, supporting five unique modes of attack for over 200 highly-optimized hashing algorithms. hashcat currently supports CPUs, GPUs, and other hardware accelerators on Linux, Windows, and Mac OS, and has facilities to help enable distributed password cracking.
$ sudo dnf in hashcat
FileRoller
Official site: https://wiki.gnome.org/Apps/FileRoller
File Roller is an application for creating and viewing archives files, such as tar or zip files.
$ sudo dnf in file-roller
Bash Completion
Official site: https://github.com/scop/bash-completion
bash-completion is a collection of shell functions that take advantage of the programmable completion feature of bash.
$ sudo dnf in bash-completion
Change ZSH to your shell
Official site: http://zsh.sourceforge.net/
The zsh shell is a command interpreter usable as an interactive login shell and as a shell script command processor. Zsh resembles the ksh shell (the Korn shell), but includes many enhancements. Zsh supports command line editing, built-in spelling correction, programmable command completion, shell functions (with autoloading), a history mechanism, and more.
$ sudo dnf in zsh
$ sudo dnf in util-linux-user
$ chsh -s $(which zsh)
Arandr
Official site: http://christian.amsuess.com/tools/arandr/
ARandR is designed to provide a simple visual front end for XRandR 1.2/1.3. Relative monitor positions are shown graphically and can be changed in a drag-and-drop way.
$ sudo dnf in arandr
xcalib
Official site: http://xcalib.sourceforge.net/
Tiny monitor calibration loader for X.org.
$ sudo dnf in xcalib
GIT-SVN
Official site: https://git-scm.com/
Git tools for interacting with Subversion repositories.
$ sudo dnf in git-svn
TIG
Official site: https://jonas.github.io/tig/
Tig is a repository browser for the git revision control system that additionally can act as a pager for output from various git commands.
When browsing repositories, it uses the underlying git commands to present the user with various views, such as summarized revision log and showing the commit with the log message, diffstat, and the diff.
Using it as a pager, it will display input from stdin and colorize it.
$ sudo dnf in tig
Git-Credential-Libsecret
Official site: https://git-scm.com/
Git helper for accessing credentials via libsecret.
$ sudo dnf in git-credential-libsecret
1
2
3
4
...
[credential]
helper = /usr/libexec/git-core/git-credential-libsecret
SSH AskPass
Official site: http://lxqt.org/
Askpass openssh transition dialog for LXQt desktop suite.
$ sudo dnf in lxqt-openssh-askpass
Saya memilih menggunakan versi lxqt-openssh-askpass.x86_64, daripada versi openssh-askpass.x86_64 dan x11-ssh-askpass.x86_64.
Transmission Daemon
Official site: http://www.transmissionbt.com
Transmission BitTorrent client daemon.
$ sudo dnf in transmission-daemon
tremc
Official site: https://github.com/tremc/tremc
Curses interface for transmission
$ git clone https://github.com/tremc/tremc.git
$ cd tremc
$ sudo make install
YouTube-DL
Official site: https://yt-dl.org
Small command-line program to download videos from YouTube and other sites.
$ sudo dnf in youtube-dl
yt-dlp
Official site: https://github.com/yt-dlp/yt-dlp
yt-dlp is a command-line program to download videos from many different online video platforms, such as youtube.com. The project is a fork of youtube-dl with additional features and fixes.
$ sudo dnf in yt-dlp
Newsboat (RSS Reader)
Official site: https://www.newsboat.org
Newsboat is a fork of Newsbeuter, an RSS/Atom feed reader for the text console.
$ sudo dnf in newsboat
Ranger File Manager
Official site: https://ranger.github.io/
Ranger is a free console file manager that gives you greater flexibility and a good overview of your files without having to leave your *nix console. It visualizes the directory tree in two dimensions: the directory hierarchy on one, lists of files on the other, with a preview to the right so you know where you’ll be going.
$ sudo dnf in ranger
$ sudo dnf in python3-devel
$ sudo dnf in libX11-devel
$ sudo dnf in libXext-devel
$ pip install --user ueberzug
For enhanced file previews.
$ sudo dnf in mediainfo
$ sudo dnf in highlight
$ sudo dnf in atool
$ sudo dnf in bsdtar
$ sudo dnf in unrar
$ sudo dnf in p7zip
$ sudo dnf in odt2txt
Samba
Official site: https://www.samba.org
Samba is the standard Windows interoperability suite of programs for Linux and Unix.
Sumber: https://docs.fedoraproject.org/en-US/quick-docs/samba/
Install dan enable samba service.
$ sudo dnf in samba
$ sudo systemctl enable smb --now
$ firewall-cmd --get-active-zones
$ sudo firewall-cmd --permanent --zone=FedoraWorkstation --add-service=samba
$ sudo firewall-cmd --reload
Membuat user samba.
$ sudo smbpasswd -a bandithijo
Install samba support for file manager gui.
$ sudo dnf in gvfs-smb
Install Opus Audio Codec
$ sudo dnf in libogg
$ sudo dnf in opus-tools
(RPMFusion - Nonfree)
$ sudo dnf in audacious-plugins-freeworld-ffaudio
Virt-Manager (libvirt)
Official site: https://virt-manager.org/
Virtual Machine Manager provides a graphical tool for administering virtual machines for KVM, Xen, and LXC. Start, stop, add or remove virtual devices, connect to a graphical or serial console, and see resource usage statistics for existing VMs on local or remote machines. Uses libvirt as the backend management API.
Sumber: https://fedoramagazine.org/full-virtualization-system-on-fedora-workstation-30/
Sumber: https://docs.fedoraproject.org/en-US/quick-docs/getting-started-with-virtualization/
Cek apakah CPU spport untuk virtualization,
$ egrep '^flags.*(vmx|svm)' /proc/cpuinfo
Kalau tidak menampilkan apapun, berarti CPU yang kamu gunakan tidak mendukung fitur virtualization.
Cek group package untuk virtualization.
$ dnf groupinfo virtualization
Install dengan cara,
$ sudo dnf in @virtualization
Alternatively, to install the mandatory, default, and optional packages, run:
$ sudo dnf group install --with-optional virtualization
Verifikasi KVM kernel module berhasil diload.
$ lsmod | grep kvm
Edit file /etc/libvirt/libvirtd.conf
$ sudo vi /etc/libvirt/libvirtd.conf
Set the domain socket group ownership to libvirt
1
2
3
...
unix_sock_group = "libvirt"
...
Adjust the UNIX socket permissions for the R/W socket
1
2
3
...
unix_sock_rw_perms = "0770"
...
Add user to libvirt gorup
$ sudo usermod -a -G libvirt $(whoami)
This adds the current user to the group. You must log out and log in to apply the changes.
firefox-dev
Official site: https://www.mozilla.org/en-US/firefox/developer/
copr source: https://copr.fedorainfracloud.org/coprs/the4runner/firefox-dev/
$ sudo dnf copr enable the4runner/firefox-dev
$ sudo dnf in firefox-dev
Chromium browser
$ sudo dnf in chromium
$ sudo dnf in chromium-libs-media-freeworld
If Chromium can’t play video, replace chromium with chromium-freeworld by RPMFusion.
chromium-freeworld is an open-source web browser, powered by WebKit (Blink).
$ sudo dnf swap chromium chromium-freeworld
Chromedriver
WebDriver is an open source tool for automated testing of webapps across many browsers. It provides capabilities for navigating to web pages, user input, JavaScript execution, and more. ChromeDriver is a standalone server which implements WebDriver’s wire protocol for Chromium. It is being developed by members of the Chromium and WebDriver teams.
$ sudo dnf in chromedriver
Google Chrome
Click the following link: https://www.google.com/chrome/browser/desktop/index.html
Click on Download Chrome and select Fedora 64 or 32 bits download and install the repo.
$ sudo dnf in google-chrome-stable_current_x86_64.rpm
Qutebrowser
Official site: http://www.qutebrowser.org
qutebrowser is a keyboard-focused browser with a minimal GUI. It’s based on Python, PyQt5 and QtWebEngine and free software, licensed under the GPL. It was inspired by other browsers/addons like dwb and Vimperator/Pentadactyl.
$ sudo dnf in qutebrowser
Install Breave adblock,
$ pip install --user adblock
Kemudian, update list dengan :adblock-update
.
Additional hints, Sumber: https://github.com/qutebrowser/qutebrowser/blob/master/doc/install.asciidoc#on-fedora
Fedora only ships free software in the repositories. To be able to play videos with proprietary codecs with QtWebEngine, you will need to install an additional package from the RPM Fusion Free repository.
$ sudo dnf in qt5-qtwebengine-freeworld
lynx
Official site: http://lynx.browser.org/
Lynx is a text-based Web browser. Lynx does not display any images, but it does support frames, tables, and most other HTML tags. One advantage Lynx has over graphical browsers is speed; Lynx starts and exits quickly and swiftly displays web pages.
$ sudo dnf in lynx
Setup Default Browser
Cek default browser yang digunakan saat ini.
$ xdg-settings get default-web-browser
google-chrome.desktop
Kalau mau diganti ke qutebrowser,
$ xdg-settings set default-web-browser org.qutebrowser.qutebrowser.desktop
Codec from RPMFusion
$ sudo dnf in gstreamer1-plugins-{bad-\*,good-\*,base} gstreamer1-plugin-openh264 gstreamer1-libav --exclude=gstreamer1-plugins-bad-free-devel
$ sudo dnf in lame\* --exclude=lame-devel
$ sudo dnf group upgrade --with-optional Multimedia
Another audio video support
$ sudo dnf in ffmpegthumbnailer
$ sudo dnf in rpmfusion-free-obsolete-packages
Install FFMPEG
Official site: http://ffmpeg.org/
FFmpeg is a complete and free Internet live audio and video broadcasting solution for Linux/Unix. It also includes a digital VCR. It can encode in real time in many formats including MPEG1 audio and video, MPEG4, h263, ac3, asf, avi, real, mjpeg, and flash.
$ sudo dnf in ffmpeg
$ sudo dnf in ffmpeg-libs
$ sudo dnf in compat-ffmpeg28
Tor
Official site: https://www.torproject.org
The Tor network is a group of volunteer-operated servers that allows people to improve their privacy and security on the Internet. Tor’s users employ this network by connecting through a series of virtual tunnels rather than making a direct connection, thus allowing both organizations and individuals to share information over public networks without compromising their privacy. Along the same line, Tor is an effective censorship circumvention tool, allowing its users to reach otherwise blocked destinations or content. Tor can also be used as a building block for software developers to create new communication tools with built-in privacy features.
This package contains the Tor software that can act as either a server on the Tor network, or as a client to connect to the Tor network.
$ sudo dnf in tor
HandBrake
Official site: http://handbrake.fr/
HandBrake is a general-purpose, free, open-source, cross-platform, multithreaded video transcoder software application. It can process most common multimedia files and any DVD or Bluray sources that do not contain any kind of copy protection.
This package contains the command line version of the program.
$ sudo dnf in handbrake
MPV
Official site: https://mpv.io/
Mpv is a movie player based on MPlayer and mplayer2. It supports a wide variety of video file formats, audio and video codecs, and subtitle types. Special input URL types are available to read input from a variety of sources other than disk files. Depending on platform, a variety of different video and audio output methods are supported.
(RPMFusion - Free)
$ sudo dnf in mpv
$ sudo dnf in celluloid
User script that may help you steroid your mpv.
Manual Build
$ sudo dnf in ffmpeg-devel
$ ./bootstrap.py
$ ./waf configure
$ ./waf
$ sudo ./waf install
DNSCrypt-Proxy
Official site: https://github.com/jedisct1/dnscrypt-proxy
A flexible DNS proxy, with support for modern encrypted DNS protocols such as DNSCrypt v2 and DNS-over-HTTP/2.
Features...
- DNS traffic encryption and authentication. Supports DNS-over-HTTPS (DoH) and DNSCrypt.
- DNSSEC compatible
- DNS query monitoring, with separate log files for regular and suspicious queries
- Pattern-based local blocking of DNS names and IP addresses
- Time-based filtering, with a flexible weekly schedule
- Transparent redirection of specific domains to specific resolvers
- DNS caching, to reduce latency and improve privacy
- Local IPv6 blocking to reduce latency on IPv4-only networks
- Load balancing: pick a set of resolvers, dnscrypt-proxy will automatically measure and keep track of their speed, and balance the traffic across the fastest available ones.
- Cloaking: like a HOSTS file on steroids, that can return preconfigured addresses for specific names, or resolve and return the IP address of other names. This can be used for local development as well as to enforce safe search results on Google, Yahoo and Bing.
- Automatic background updates of resolvers lists
- Can force outgoing connections to use TCP; useful with tunnels such as Tor.
Sumber: https://wiki.archlinux.org/title/Systemd-resolved#Manually
$ sudo dnf in dnscrypt-proxy
Edit file /etc/dnscrypt-proxy/dnscrypt-proxy.toml
.
Kemudian, definisikan server_names=
sesuai yang kalian pergunakan. Pada contoh ini, saya menggunakan cloudflare. Daftar dari public server yang menyediakan layanan dnscrypt, dapat teman-teman lihat di sini.
1
server_names = ['cloudflare']
Edit file /etc/systemd/resolved.conf
.
Cari bagian #DNS=
dan #Domains=
. Uncomment dan isikan seperti di bawah ini.
Atau, tambahkan saja dibagian paling bawah.
1
2
3
4
5
[Resolve]
#...
#...
DNS=127.0.0.1
Domains=~.
Kemudian, restart systemd-resolved service
$ sudo systemctl restart systemd-resolved.service
* Perlu restart/reboot system.
Adwaita-Qt5 theme
Official site: https://github.com/FedoraQt/adwaita-qt
Adwaita theme variant for applications utilizing Qt5.
$ sudo dnf in adwaita-qt5
Qt5Ct
Official site: https://sourceforge.net/projects/qt5ct/
qt5ct allows users to configure Qt5 settings (theme, font, icons, etc.) under DE/WM without Qt integration.
$ sudo dnf in qt5ct
Change default cursor on lightdm
ComixCursors: https://www.gnome-look.org/p/999996
Change value of /usr/share/icons/default/index.theme
1
2
[Icon Theme]
Inherits=ComixCursors-Opaque-White
Change default cursor on GDM
Sumber: https://wiki.archlinux.org/title/GDM#Changing_the_cursor_theme
GDM disregards GNOME cursor theme settings and it also ignores the cursor theme set according to the XDG specification. To change the cursor theme used in GDM, either create the following keyfile
1
2
[org/gnome/desktop/interface]
cursor-theme='theme-name'
and then recompile the GDM database or alternatively log in to the GDM user and execute the following:
$ sudo gsettings set org.gnome.desktop.interface cursor-theme 'theme-name'
Switch Between Java Versions
Memeriksa versi java yang terpasang.
$ java -version
openjdk version "11.0.13" 2021-10-19
OpenJDK Runtime Environment 18.9 (build 11.0.13+8)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.13+8, mixed mode, sharing)
Untuk melakukan switch antara versi Java yang terpasang.
$ sudo alternatives --config java
There is 1 program that provides 'java'.
Selection Command
-----------------------------------------------
*+ 1 java-11-openjdk.x86_64 (/usr/lib/jvm/java-11-openjdk-11.0.13.0.8-2.fc35.x86_64/bin/java)
Enter to keep the current selection[+], or type selection number: █
Kebetulan saya hanya punya 1 versi Java, yaitu Java 11 dengan OpenJDK.
Neovim
Official site: https://neovim.io
Neovim is a refactor - and sometimes redactor - in the tradition of Vim, which itself derives from Stevie. It is not a rewrite, but a continuation and extension of Vim. Many rewrites, clones, emulators and imitators exist; some are very clever, but none are Vim. Neovim strives to be a superset of Vim, notwithstanding some intentionally removed misfeatures; excepting those few and carefully-considered excisions, Neovim is Vim. It is built for users who want the good parts of Vim, without compromise, and more.
$ sudo dnf in neovim
Neovim Nightly (build)
$ sudo dnf in cmake
$ sudo dnf in gcc-c++
$ sudo dnf in luajit-devel
$ sudo dnf in libtool
$ sudo dnf in libvterm-devel
$ sudo dnf in nodejs
$ sudo dnf in python3-neovim
$ cd ~/.local/src
$ git clone https://github.com/neovim/neovim.git
$ cd neovim
$ make CMAKE_BUILD_TYPE=RelWithDebInfo -j$(expr nproc + 1)
$ sudo make install
Rebuild.
$ make distclean
Saya menggunakan ripgrep,
Official site: https://crates.io/crates/ripgrep
Line-oriented search tool that recursively searches the current directory for a regex pattern while respecting gitignore rules. ripgrep has first class support on Windows, macOS and Linux.
$ sudo dnf in ripgrep
PostgreSQL
Official site: http://www.postgresql.org/
PostgreSQL is an advanced Object-Relational database management system (DBMS). The base postgresql package contains the client programs that you’ll need to access a PostgreSQL DBMS server, as well as HTML documentation for the whole system. These client programs can be located on the same machine as the PostgreSQL server, or on a remote machine that accesses a PostgreSQL server over a network connection. The PostgreSQL server can be found in the postgresql-server sub-package.
Saya lebih memilih menggunakan container untuk memasang PostgreSQL.
Bisa baca catatannya di sini, Mudah Banget! PostgreSQL dengan Podman untuk Development
$ sudo dnf in postgresql-server
$ sudo /usr/bin/postgresql-setup --initdb
$ sudo systemctl start postgresql.service
$ sudo -iu postgres
[postgres@fedora-x61 ~]$ createuser --interactive
Enter name of role to add: bandithijo
Shall the new role be a superuser? (y/n) y
[postgres@fedora-x61 ~]$ createdb bandithijo
[postgres@fedora-x61 ~]$ psql
postgres=# ALTER DATABASE bandithijo OWNER TO bandithijo;
Tambahkan pada file /var/lib/pgsql/data/pg_hba.conf
.
1
2
3
4
5
# TYPE DATABASE USER ADDRESS METHOD
...
...
#host all all 127.0.0.1/32 ident
host all bandithijo 127.0.0.1/32 trust
Or, using another way with Container.
Since, Fedora has built in container utility named as Podman. So, I decided to use this tool than using Docker.
I’ll use bitnami/postgresql container image from quay.io.
# podman pull quay.io/bitnami/postgresql:13.3.0
# podman run --name postgresql --net host -v /var/lib/pgsql/data/userdata:/bitnami/postgresql/data:Z -e ALLOW_EMPTY_PASSWORD=yes bitnami/postgresql:13.3.0
postgresql container imge from bitnami is set User: 1001. So, for convenient purposes,
$ sudo chown -R 1001:1001 /var/lib/pgsql
* /var/lib/pgsql is where Fedora put postgresql data.
Generate systemd unit file.
# podman generate systemd --new --files --name postgresql
# mv container-postgresql.service /etc/systemd/system
# systemctl daemon-reload
Stop and remove postgresql running container.
# podman stop postgresql
# podman rm postgresql
That’s it! Now you’re able to start and check the status of running container with systemct start and status.
SQLite3
Official site: http://www.sqlite.org/
SQLite is a C library that implements an SQL database engine. A large subset of SQL92 is supported. A complete database is stored in a single disk file. The API is designed for convenience and ease of use. Applications that link against SQLite can enjoy the power and flexibility of an SQL database without the administrative hassles of supporting a separate database server. Version 2 and version 3 binaries are named to permit each to be installed on a single host.
$ sudo dnf in sqlite
$ sudo dnf in sqlite-devel
$ sudo dnf in libsqlite3x
$ sudo dnf in libsqlite3x-devel
Saya memerlukan install juga package -devel
.
yarnpkg
Official site: https://github.com/yarnpkg/yarn
Fast, reliable, and secure dependency management.
$ sudo dnf in yarnpkg
Ruby on Rails Developer
Saya lebih suka menggunakan rbenv untuk mendevelop Ruby apps.
Paket-paket yang diperlukan untuk rbenv-install mem-build Ruby.
$ sudo dnf in openssl-devel
$ sudo dnf in libxml2-devel
$ sudo dnf in libxslt-devel
$ sudo dnf in readline-devel
Reinstall all your Ruby with rbenv (remove and install).
For database support library (PostgreSQL, MySQL/MariaDB, SQLite).
$ sudo dnf in libpq-devel
$ sudo dnf in mysql++-devel
$ sudo dnf in libsqlite3x-devel
pomo
Official site: https://github.com/tj/pomo
Command-line application for the Pomodoro time management technique, with notification and tmux status bar support.
(rubygems)
$ gem install pomo
Build ADVCMP
Sumber: https://github.com/jarun/advcpmv
A patch for GNU Core Utilities cp, mv to add progress bars.
$ sudo dnf in patch
$ wget http://ftp.gnu.org/gnu/coreutils/coreutils-8.32.tar.xz
$ tar xvJf coreutils-8.32.tar.xz
$ cd coreutils-8.32/
$ wget https://raw.githubusercontent.com/jarun/advcpmv/master/advcpmv-0.8-8.32.patch
$ patch -p1 -i advcpmv-0.8-8.32.patch
$ ./configure
$ make
TLP
Saya tidak lagi menggunakan tlp sejak Fedora 35 sudah menggunakan Power Profiles Daemon.
Official site: http://linrunner.de/en/tlp/tlp.html
TLP is an advanced power management tool for Linux. It comes with a default configuration already optimized for battery life. At the same time it is highly customizable to fulfill specific user requirements.
TLP supplies separate settings profiles for AC and battery power and can enable or disable Bluetooth, WiFi and WWAN radio devices upon system start-up.
For ThinkPads it provides a unified way to configure charging thresholds and re-calibrate the battery for all models which support it (via tp-smapi or acpi-call).
TLP is a pure command line tool with automated background tasks, it does not contain a GUI.
$ sudo dnf in tlp
Untuk ThinkPad lama, seperti seri X61 yang saya gunakan.
$ sudo dnf copr enable suhanc/tp_smapi
$ sudo dnf in tp_smapi
Untuk ThinkPad baru, seperti X260 yang saya gunakan.
$ git clone https://github.com/teleshoes/tpacpi-bat
$ cd tpacpi-bat
$ ./install.pl
Beberapa catatan tentang tlp:
-
https://linrunner.de/tlp/faq/battery.html#how-to-choose-good-battery-charge-thresholds
-
https://forums.lenovo.com/t5/Windows-10/Power-Manager-for-Windows-10/m-p/2113645?page=3#2129075
Cronie (Cronjob)
Official site: https://github.com/cronie-crond/cronie
Cronie contains the standard UNIX daemon crond that runs specified programs at scheduled times and related tools. It is a fork of the original vixie-cron and has security and configuration enhancements like the ability to use pam and SELinux.
$ sudo dnf in cronie
Jalankan & enable-kan crond.service
.
$ sudo systemctl enable --now crond.service
Email Backend
imap
Official site: http://isync.sourceforge.net/
mbsync is a command line application which synchronizes mailboxes. Currently Maildir and IMAP4 mailboxes are supported. New messages, message deletions and flag changes can be propagated both ways. mbsync is suitable for use in IMAP-disconnected mode.
$ sudo dnf in isync
smtp
Official site: https://marlam.de/msmtp/
It forwards messages to an SMTP server which does the delivery.
$ sudo dnf in msmtp
Neomutt
Official site: https://neomutt.org/
NeoMutt is a small but very powerful text-based MIME mail client. NeoMutt is highly configurable, and is well suited to the mail power user with advanced features like key bindings, keyboard macros, mail threading, regular expression searches and a powerful pattern matching language for selecting groups of messages.
$ sudo dnf copr enable chriscowleyunix/neomutt
$ sudo dnf in neomutt
Manual Build
Sumber: https://neomutt.org/dev/build/build
Deps
$ sudo dnf in libidn-devel
$ sudo dnf in gpgme-devel
$ sudo dnf in notmuch-devel
$ sudo dnf in sqlite-devel
$ sudo dnf in cyrus-sasl-devel
$ sudo dnf in tokyocabinet-devel
$ sudo dnf in tokyocabinet
$ sudo dnf in urlview
$ ./configure --ssl --lua --notmuch --gpgme --gss --autocrypt --sqlite --sasl --mixmaster --fmemopen --homespool --tokyocabinet --locales-fix
$ make
$ sudo make install
FreeRDP
Official site: http://www.freerdp.com/
The xfreerdp & wlfreerdp Remote Desktop Protocol (RDP) clients from the FreeRDP project.
xfreerdp & wlfreerdp can connect to RDP servers such as Microsoft Windows machines, xrdp and VirtualBox.
$ sudo dnf in freerdp
x11vnc
Official site: https://github.com/LibVNC/x11vnc
What WinVNC is to Windows x11vnc is to X Window System, i.e. a server which serves the current X Window System desktop via RFB (VNC) protocol to the user.
Based on the ideas of x0rfbserver and on LibVNCServer it has evolved into a versatile and productive while still easy to use program.
$ sudo dnf in x11vnc
Rofi
Official site: https://github.com/DaveDavenport/rofi
Rofi is a dmenu replacement. Rofi, like dmenu, will provide the user with a textual list of options where one or more can be selected. This can either be, running an application, selecting a window or options provided by an external script.
$ sudo dnf in rofi
Rofi-Calc
Manual Build
Sumber: https://github.com/svenstaro/rofi-calc
Deps,
$ sudo dnf in rofi-devel
$ sudo dnf in qalculate
$ git clone https://github.com/svenstaro/rofi-calc
$ cd rofi-calc
$ autoreconf -i
$ mkdir build
$ cd build/
$ ../configure
$ make
$ sudo make install
LazyGit
Official site: https://github.com/jesseduffield/lazygit
A simple terminal UI for git commands, written in Go with the gocui library.
from Author...
Rant time: You've heard it before, git is powerful, but what good is that power when everything is so damn hard to do? Interactive rebasing requires you to edi a goddamn TODO file in your editor? Are you kidding me? To stage part of a file you need to use a command line program to step through each hunk and if a hunk can't be split down any further but contains code you don't want to stage, you have to edit an arcane patch file by hand? Are you KIDDING me?! Sometimes you get asked to stash your changes when switching branches only to realise that after you switch and unstash that there weren't even any conflicts and it would have been fine to just checkout the branch directly? YOU HAVE GOT TO BE KIDDING ME!
If you're a mere mortal like me and you're tired of hearing how powerful git is when in your daily life it's a powerful pain in your ass, lazygit might be for you.
$ sudo dnf copr enable atim/lazygit
$ sudo dnf in lazygit
LazyDocker
Official site: https://github.com/jesseduffield/lazydocker
A simple terminal UI for both docker and docker-compose, written in Go with the gocui library.
from Author...
Memorising docker commands is hard. Memorising aliases is slightly less hard. Keeping track of your containers across multiple terminal windows is near impossible. What if you had all the information you needed in one terminal window with every common command living one keypress away (and the ability to add custom commands as well). Lazydocker's goal is to make that dream a reality.
$ sudo dnf copr enable atim/lazydocker
$ sudo dnf in lazydocker
Seahorse
Official site: https://wiki.gnome.org/Apps/Seahorse
Seahorse is a graphical interface for managing and using encryption keys. It also integrates with nautilus, gedit and other places for encryption operations. It is a keyring manager.
$ sudo dnf in seahorse
Crow translate
Official site: https://crow-translate.github.io/
A simple and lightweight translator that allows you to translate and speak text using Google, Yandex Bing, LibreTranslate and Lingva.
Sumber: https://github.com/crow-translate/crow-translate
Deps,
$ sudo dnf in extra-cmake-modules
$ sudo dnf in qt5-qtbase-devel
$ sudo dnf in qt5-qtx11extras-devel
$ sudo dnf in qt5-qtmultimedia-devel
$ sudo dnf in tesseract-devel
$ sudo dnf in libSM-devel
$ git clone https://github.com/crow-translate/crow-translate.git
$ cd crow-translate
$ mkdir build
$ cd build
$ cmake ..
$ cmake --build .
$ sudo make install
libva-intel-driver
Official site: https://github.com/intel/intel-vaapi-driver
HW video decode support for Intel integrated graphics. https://01.org/intel-media-for-linux
$ sudo dnf in libva-intel-hybrid-driver
Official site: https://github.com/01org/intel-hybrid-driver
libva-intel-hybrid-driver is the VA-API implementation for Intel G45 chipsets and Intel HD Graphics for Intel Core processor family.
It allows to accelerate VP9 videos on Skylake and Kabylake architectures.
$ sudo dnf in libva-intel-hybrid-driver
Vulkan Hardware Capability Viewer
Sumber: http://vulkan.gpuinfo.org/listdevices.php
Download: http://vulkan.gpuinfo.org/download.php
GIMP
GIMP (GNU Image Manipulation Program) is a powerful image composition and editing program, which can be extremely useful for creating logos and other graphics for web pages. GIMP has many of the tools and filters you would expect to find in similar commercial offerings, and some interesting extras as well. GIMP provides a large image manipulation toolbox, including channel operations and layers, effects, sub-pixel imaging and anti-aliasing, and conversions, all with multi-level undo.
$ sudo dnf in gimp
Inkscape
Inkscape is a vector graphics editor, with capabilities similar to Illustrator, CorelDraw, or Xara X, using the W3C standard Scalable Vector Graphics (SVG) file format. It is therefore a very useful tool for web designers and as an interchange format for desktop publishing.
Inkscape supports many advanced SVG features (markers, clones, alpha blending, etc.) and great care is taken in designing a streamlined interface. It is very easy to edit nodes, perform complex path operations, trace bitmaps and much more.
$ sudo dnf in inkscape
Figma for Linux
Official site: https://github.com/Figma-Linux/figma-linux
Figma is the first interface design tool based in the browser, making it easier for teams to create software.
(flatpak - flathub)
$ flatpak install flathub io.github.Figma_Linux.figma_linux
WeeChat
WeeChat (Wee Enhanced Environment for Chat) is a portable, fast, light and extensible IRC client. Everything can be done with a keyboard. It is customizable and extensible with scripts.
$ sudo dnf in weechat
Manual Build
Sumber: https://github.com/weechat/weechat
$ sudo dnf in gnutls-devel
$ sudo dnf in perl-ExtUtils-Embed
$ sudo dnf in libgcrypt-devel
$ sudo dnf in libcurl-devel
$ sudo dnf in ncurses-devel
$ sudo dnf in aspell-devel
$ sudo dnf in php-devel
$ sudo dnf in lua-devel
$ sudo dnf in tcl-devel
$ sudo dnf in guile-devel
$ git clone https://github.com/weechat/weechat.git
$ cd weechat
$ mkdir build
$ cd build
$ cmake ..
$ make
$ sudo make install
Kalau masih ada warning error perihal language, bisa menggunakan,
$ ccmake ..
Lalu set OFF untuk language support yang tidak ingin disertakan atau yang menyebabkan error.
WeeChat-Matrix
Official site: https://github.com/poljar/weechat-matrix
Weechat Matrix protocol script written in python
Deps,
$ sudo dnf in libolm-devel
$ git clone https://github.com/poljar/weechat-matrix.git
$ cd weechat-matrix
$ pip install -r requirements.txt
Kalau kamu sudah pernah mengkonfigurasi weechat, tinggal jalankan,
$ make install
Selanjutnya tinggal membuat plugin matrix menjadi autostart ketika weechat dijalankan.
$ cd ~/.weechat/python/autoload
$ ln -s ../matrix.py ~/.weechat/python/autoload
WeeChat-twitch
Official-site: https://github.com/mumixam/weechat-twitch
Checks status of streams using twitch api.
$ /server add twitch irc.twitch.tv
$ /set irc.server.twitch.capabilities "twitch.tv/membership,twitch.tv/commands,twitch.tv/tags"
$ /set irc.server.twitch.nicks "My Twitch Username"
$ /set irc.server.twitch.password "oauth:yourauthkey"
Where to get oauth? https://twitchapps.com/tmi/
Referensi: https://gist.github.com/noromanba/df3d975613713f60e6ae
Flameshot
Official site: https://github.com/lupoDharkael/flameshot
Powerful and simple to use screenshot software with built-in editor with advanced features.
$ sudo dnf in flameshot
Optipng
Official site: http://optipng.sourceforge.net/
OptiPNG is a PNG optimizer that recompresses image files to a smaller size, without losing any information. This program also converts external formats (BMP, GIF, PNM and TIFF) to optimized PNG, and performs PNG integrity checks and corrections.
$ sudo dnf in optipng
Scrot
Official site: https://github.com/resurrecting-open-source-projects/scrot
scrot is a simple command line screen capture utility.
$ sudo dnf in scrot
Manual Build
Sumber: https://github.com/resurrecting-open-source-projects/scrot
Deps,
$ sudo dnf in autoconf-archive
$ sudo dnf in imlib2-devel
$ sudo dnf in libtool
$ sudo dnf in libXcomposite-devel
$ sudo dnf in libXfixes-devel
$ git clone https://github.com/resurrecting-open-source-projects/scrot.git
$ cd scrot
$ ./autogen.sh
$ ./configure
$ make
$ sudo make install
Maim
Official site: https://github.com/naelstrof/maim
maim (make image) is a screenshot utility that provides options for capturing predetermined or user selected regions of your desktop.
$ sudo dnf in maim
pulseaudio-utils
Official site: http://www.freedesktop.org/wiki/Software/PulseAudio
This package contains command line utilities for the PulseAudio sound server.
$ sudo dnf in pulseaudio-utils
Change/Swap Pipewire with Pulseaudio
Sumber: https://fedoraproject.org/wiki/Changes/DefaultPipeWire#Upgrade.2Fcompatibility_impact
$ sudo dnf swap --allowerasing pipewire-pulseaudio pulseaudio
* Sejak Fedora 35, saya sudah menetap dengan Pipewire.
pavucontrol
Official site: http://freedesktop.org/software/pulseaudio/pavucontrol
PulseAudio Volume Control (pavucontrol) is a simple GTK based volume control tool (“mixer”) for the PulseAudio sound server. In contrast to classic mixer tools this one allows you to control both the volume of hardware devices and of each playback stream separately.
$ sudo dnf in pavucontrol
pulsemixer
Official site: https://github.com/GeorgeFilipkin/pulsemixer
CLI and curses mixer for PulseAudio
$ pip install --user pulsemixer
pamixer
Sumber: https://github.com/cdemoulins/pamixer
pamixer is like amixer but for pulseaudio. It can control the volume levels of the sinks.
Deps,
$ sudo dnf in boost-devel
$ git clone https://github.com/cdemoulins/pamixer.git
$ cd pamixer
$ meson setup build
$ meson compile -C build
$ meson install -C build
easyeffects
Official site: https://github.com/wwmm/easyeffects
Limiters, compressor, reverberation, high-pass filter, low pass filter, equalizer many more effects for PipeWire applications.
$ sudo dnf in easyeffects
helvum
Official site: https://gitlab.freedesktop.org/ryuukyu/helvum
Helvum is a GTK-based patchbay for pipewire, inspired by the JACK tool catia.
Manual Build
The recommended way to build is using flatpak, which will take care of all dependencies and avoid any problems that may come from different system configurations.
If you don’t have the flathub repo in your remote-list for flatpak you will need to add that first:
$ flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
Then install the required flatpak platform and SDK, if you dont have them already:
$ flatpak install org.gnome.{Platform,Sdk}//41 org.freedesktop.Sdk.Extension.rust-stable//21.08 org.freedesktop.Sdk.Extension.llvm12//21.08
To compile and install as a flatpak, run:
$ sudo flatpak-builder --install flatpak-build/ build-aux/org.freedesktop.ryuukyu.Helvum.json
You can then run the app via:
$ flatpak run org.freedesktop.ryuukyu.Helvum
HexChat
Official site: https://hexchat.github.io
HexChat is an easy to use graphical IRC chat client for the X Window System. It allows you to join multiple IRC channels (chat rooms) at the same time, talk publicly, private one-on-one conversations etc. Even file transfers are possible.
$ sudo dnf in hexchat
Install adwaita-gtk2-theme for fix issue theme, Sumber: https://bugzilla.redhat.com/show_bug.cgi?id=1963223
$ sudo dnf in adwaita-gtk2-theme
Gping
Official site: https://github.com/orf/gping
Ping, but with a graph.
Sumber: https://github.com/orf/gping
$ sudo dnf copr enable atim/gping
$ sudo dnf in gping
PrettyPing
Official site: http://denilson.sa.nom.br/prettyping
Sumber: https://github.com/denilsonsa/prettyping
prettyping runs the standard ping in background and parses its output, showing ping responses in a graphical way at the terminal, by using colors and Unicode characters.
Don’t have support for UTF-8 in your terminal?
No problem, you can disable it and use standard ASCII characters instead.
Don’t have support for colors?
No problem, you can also disable them.
$ sudo dnf in prettyping
Dunst
Official site: https://dunst-project.org
Dunst is a lightweight replacement for the notification daemons provided by most desktop environments. It’s very customizable, isn’t dependent on any toolkits, and therefore fits into those window manager centric setups we all love to customize to perfection.
$ sudo dnf in dunst
SimpleScreenRecorder
Official site: https://www.maartenbaert.be/simplescreenrecorder/
It is a screen recorder for Linux. Despite the name, this program is actually quite complex. It’s ‘simple’ in the sense that it’s easier to use than ffmpeg/avconv or VLC.
$ sudo dnf in simplescreenrecorder
Vokoscreen
Official site: https://github.com/vkohaupt/vokoscreen
vokoscreen is an easy to use screencast creator to record educational videos, live recordings of browser, installation, videoconferences, etc.
$ sudo dnf in vokoscreen
Or -NG
$ sudo dnf in vokoscreenNG
$ sudo dnf in alsa-lib-devel
ps_mem
Official site: https://github.com/pixelb/ps_mem
The ps_mem tool reports how much core memory is used per program (not per process). In detail it reports: sum(private RAM for program processes) + sum(Shared RAM for program processes)
The shared RAM is problematic to calculate, and the tool automatically selects the most accurate method available for the running kernel.
$ sudo dnf in ps_mem
GColor2
Official site: http://gcolor2.sourceforge.net/
gcolor2 is a simple color selector that was originally based on gcolor, ported to use GTK+2, and now has a completely new UI.
$ sudo dnf in gcolor2
Suckless
st
Official site: http://st.suckless.org/
st is a simple terminal implementation for X.
Manual Build
Deps,
$ sudo dnf in libXft-devel
$ git clone https://git.suckless.org/st
$ cd st
$ make
$ sudo make install
For Emoji support,
Sumber: https://copr.fedorainfracloud.org/coprs/linuxredneck/libXft-bgra/
libxft sudah support BGRA glyph for emoji color.
https://gitlab.freedesktop.org/xorg/lib/libxft/-/blob/libXft-2.3.5/NEWS
$ sudo dnf copr enable linuxredneck/libXft-bgra
$ sudo rpm -e --nodeps libXft libXft-devel
$ sudo dnf in libXft-bgra libXft-bgra-devel
Add libXft
to exclude=
package on /etc/dnf/dnf.conf
.
dwm
Official site: http://dwm.suckless.org/
dwm is a dynamic window manager for X. It manages windows in tiled, monocle and floating layouts. All of the layouts can be applied dynamically, optimising the environment for the application in use and the task performed.
Manual Build
Deps,
$ sudo dnf in libXinerama-devel
$ sudo dnf in xsetroot
$ git clone https://git.suckless.org/dwm
$ cd dwm
$ make
$ sudo make install
Kalau ingin mendaftarkan dwm ke dalam session list yang ada di Display Manager seperti LightDM, GDM, SDDM, dll., tinggal buat saja file Desktop Entry Spec nya saja.
$ sudo vi /usr/share/xsessions/dwm.desktop
1
2
3
4
5
6
7
8
9
[Desktop Entry]
Name=dwm
Comment=Dynamic Window Manager
Exec=/home/bandithijo/.xinitrc
TryExec=/usr/local/bin/dwm
Type=Application
X-LightDM-DesktopName=dwm
Keywords=tiling;wm;windowmanager;window;manager;
DesktopNames=dwm
pinentry-dmenu
GitHub source: https://github.com/ritze/pinentry-dmenu
pinentry-dmenu is a pinentry program with the charm of dmenu.
Deps,
Manual Build
Deps,
$ sudo dnf in libassuan-devel
$ sudo dnf in libconfig-devel
$ sudo dnf in gpgme-devel
Di Fedora, library assuan.h
tidak berada di dalam directory /usr/include/
tetapi masih berada di dalam satu level directory lagi, yaitu /usr/include/libassuan2/
. Buat saja link agar proses make dapat menemukan header tersebut.
$ sudo ln -sf /usr/include/libassuan2/assuan.h /usr/include/assuan.h
$ git clone https://github.com/ritze/pinentry-dmenu
$ cd pinentry-dmenu
$ make
$ sudo make install
Ubah/tambahkan/arahkan value dari variable pinentry-program
di dalam file ~/.gnupg/gpg-agent.conf
menjadi pinentry-dmenu
.
1
pinentry-program /usr/local/bin/pinentry-dmenu
pinentry-rofi
Official site: https://github.com/plattfot/pinentry-rofi
Rofi frontend to pinentry.
Manual Build
Deps,
$ sudo dnf in autoconf
$ sudo dnf in autoconf-archive
$ sudo dnf in automake
$ sudo dnf in pkg-config
$ sudo dnf in texinfo
$ sudo dnf in guile
$ sudo dnf in guile-devel
sxiv
Official site: https://github.com/muennich/sxiv
Simple X Image Viewer is a lightweight and scriptable image viewer written in C.
Manual Build
Deps,
$ sudo dnf in imlib2-devel
$ sudo dnf in libexif-devel
$ sudo dnf in giflib-devel
$ sudo dnf in libXft-bgra-devel
$ git clone https://github.com/muennich/sxiv
$ cd sxiv
$ make
$ sudo make install
GTK3-NOCSD
Official site: https://github.com/PCMan/gtk3-nocsd
gtk3-nocsd is a small module used to disable the client side decoration of Gtk+ 3.
$ sudo dnf in gtk3-nocsd
1
2
3
# A hack to disable gtk+ 3 client side decoration
export LD_PRELOAD=/usr/lib64/libgtk3-nocsd.so.0
export GTK_CSD=0
Sejak GNOME 41, beberapa aplikasi GNOME seperti gnome-calculator
terdapat keanehan pada bagian border.
Karenanya, saya tidak lagi menggunakan cara ini.
Flatpak via Flathub Remote
Flatpak is a tool for managing applications and the runtimes they use. In the Flatpak model, applications can be built and distributed independently from the host system they are used on, and they are isolated from the host system (‘sandboxed’) to some degree, at runtime.
Flatpak uses OSTree to distribute and deploy data. The repositories it uses are OSTree repositories and can be manipulated with the ostree utility. Installed runtimes and applications are OSTree checkouts.
$ flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
Gromit-MPX
Official site: https://github.com/bk138/gromit-mpx
Gromit-MPX is an on-screen annotation tool that works with any Unix desktop environment under X11 as well as Wayland.
(Flatpak - Flathub)
$ flatpak install flathub net.christianbeier.Gromit-MPX
Telegram Desktop
Official site: https://desktop.telegram.org/
Fast and secure desktop app, perfectly synced with your mobile phone.
(RPMFusion - Free)
$ sudo dnf in telegram-desktop
Kalau ingin versi yang lebih up-to-date bisa menggunakan versi flatpak.
(Flatpak - Flathub)
$ flatpak install flathub org.telegram.desktop
Hide desktop icon on Application List
Sumber: https://wiki.archlinux.org/title/desktop_entries#Hide_desktop_entries
Firstly, copy the desktop entry file in question to ~/.local/share/applications
to avoid your changes being overwritten.
Then, to hide the entry in all environments, open the desktop entry file in a text editor and add the following line: NoDisplay=true
.
To hide the entry in a specific desktop, add the following line to the desktop entry file: NotShowIn=desktop-name
.
where desktop-name can be option such as GNOME
, Xfce
, KDE
etc.
A desktop entry can be hidden in more than desktop at once - simply separate the desktop names with a semi-colon.
Center window in GNOME
Sumber: https://www.reddit.com/r/gnome/comments/aaqy2p/center_windows_in_gnome/
By: carmanaughty
For a keyboard shortcut, there’s a dconf key under /org/gnome/desktop/wm/keybindings
which is move-to-center
and it should be empty. Change that to whatever you want (for instance, I use [‘
By: [deleted]
Its also in GNOME Tweaks. It is under “Windows” -> “Center New Windows”.
Polybar
Official site: https://polybar.github.io/
Polybar aims to help users build beautiful and highly customizable status bars for their desktop environment, without the need of having a black belt in shell scripting.
$ sudo dnf in polybar
Feh
Official site: http://feh.finalrewind.org
feh is a versatile and fast image viewer using imlib2, the premier image file handling library. feh has many features, from simple single file viewing, to multiple file modes using a slide-show or multiple windows. feh supports the creation of montages as index prints with many user-configurable options.
$ sudo dnf in feh
SXHKD
Official site: https://github.com/baskerville/sxhkd
Simple HotKey Daemon.
sxhkd is an X daemon that reacts to input events by executing commands. Its configuration file is a series of bindings that define the associations between the input events and the commands. The format of the configuration file supports a simple notation for mapping multiple shortcuts to multiple commands in parallel.
$ sudo dnf in sxhkd
j4-dmenu-desktop (dmenu wrapper)
Official site: https://github.com/enkore/j4-dmenu-desktop
j4-dmenu-desktop is a replacement for i3-dmenu-desktop. It’s purpose is to find .desktop files and offer you a menu to start an application using dmenu. It should work just fine on about any desktop environment. You can also execute shell commands using it.
$ sudo dnf in j4-dmenu-desktop
XCompmgr
Official site: https://gitlab.freedesktop.org/xorg/app/xcompmgr
xcompmgr is a sample compositing manager for X servers supporting the XFIXES, DAMAGE, and COMPOSITE extensions. It enables basic eye-candy effects
$ sudo dnf in libXcomposite-devel
$ sudo dnf in libXdamage-devel
$ sudo dnf in xcompmgr
Saya tidak lagi menggunakan paket ini. Sejak menggunakan x260, saya menggunakan picom.
Picom
Official site: https://github.com/yshui/picom
This is forked from the original Compton because that seems to have become unmaintained.
The current battle plan of this fork is to refactor it to make the code possible to maintain, so potential contributors won’t be scared away when they take a look at the code.
We also try to fix bugs.
$ sudo dnf in picom
Manual Build
Deps,
$ sudo dnf in meson
$ sudo dnf in libev-devel
$ sudo dnf in xcb-util-renderutil-devel
$ sudo dnf in xcb-util-image-devel
$ sudo dnf in pixman-devel
$ sudo dnf in uthash-devel
$ sudo dnf in libconfig-devel
$ sudo dnf in dbus-devel
I’m using picom with rounded corner by https://github.com/ibhagwan/picom.
Sumber: https://github.com/yshui/picom/blob/next/README.md#build
$ git clone https://github.com/ibhagwan/picom
$ cd picom
$ git submodule update --init --recursive
$ meson --buildtype=release . build
$ ninja -C build
$ sudo ninja -C build install
xmodmap
Official site: https://www.x.org
The xmodmap program is used to edit and display the keyboard modifier map and keymap table that are used by client applications to convert event keycodes into keysyms.
$ sudo dnf in xmodmap
xcape
Official site: https://github.com/alols/xcape
xcape allows you to use a modifier key as another key when pressed and released on its own. Note that it is slightly slower than pressing the original key, because the pressed event does not occur until the key is released. The default behaviour is to generate the Escape key when Left Control is pressed and released on its own. (If you don’t understand why anybody would want this, I’m guessing that Vim is not your favourite text editor ;)
(copr - dawid/xcape )
$ sudo dnf copr enable dawid/xcape
$ sudo dnf in xcape
Manual Build
Deps,
$ sudo dnf in git
$ sudo dnf in gcc
$ sudo dnf in make
$ sudo dnf in pkgconfig
$ sudo dnf in libX11-devel
$ sudo dnf in libXtst-devel
$ sudo dnf in libXi-devel
$ git clone https://github.com/alols/xcape.git
$ cd xcape
$ make
$ sudo make install
xev
Official site: https://www.x.org
X Event utility. xev displays the X11 protocol events sent to a given window.
$ sudo dnf in xev
xdotool
Official site: http://www.semicomplete.com/projects/xdotool/
Fake keyboard/mouse input. This tool lets you programmatically (or manually) simulate keyboard input and mouse activity, move and re-size windows, etc.
$ sudo dnf in xdotool
brightlight
Official site: https://github.com/multiplexd/brightlight
brightlight gets and sets the screen back-light brightness on Linux systems using the kernel sysfs interface.
$ sudo dnf in brightlight
Udiskie
Official site: https://pypi.org/project/udiskie
udiskie is a front-end for UDisks written in python. Its main purpose is automatically mounting removable media, such as CDs or flash drives. It has optional mount notifications, a GTK tray icon and user level CLIs for manual mounting and unmounting operations.
$ sudo dnf in udiskie
abduco
Official site: http://www.brain-dump.org/projects/abduco/
abduco provides session management i.e. it allows programs to be run independently from its controlling terminal. That is programs can be detached - run in the background - and then later reattached. Together with dvtm it provides a simpler and cleaner alternative to tmux or screen.
$ sudo dnf in abduco
dtach
Official site: https://github.com/crigler/dtach
dtach is a program that emulates the detach feature of screen, with less overhead. It is designed to be transparent and un-intrusive; it avoids interpreting the input and output between attached terminals and the program under its control. Consequently, it works best with full-screen applications such as emacs.
$ sudo dnf in dtach
LXappearance
Official site: http://lxde.org/
Feature-rich GTK+ theme switcher for LXDE.
LXAppearance is a new GTK+ theme switcher developed for LXDE, the Lightweight X11 Desktop Environment. It is able to change GTK+ themes, icon themes, and fonts used by applications. All changes done by the users can be seen immediately in the preview area. After clicking the “Apply” button, the settings will be written to gtkrc, and all running programs will be asked to reload their themes.
$ sudo dnf in lxappearance
unclutter-xfixes
Official site: https://github.com/Airblader/unclutter-xfixes
Hides the cursor on inactivity (rewrite of unclutter).
Manual Build
Deps,
$ sudo dnf in libXi-devel
$ sudo dnf in asciidoc
$ git clone https://github.com/Airblader/unclutter-xfixes.git
$ cd unclutter-xfixes
$ make
$ sudo make install
Calibre
Official site: https://calibre-ebook.com/
Calibre is meant to be a complete e-library solution. It includes library management, format conversion, news feeds to ebook conversion as well as e-book reader sync features.
Calibre is primarily a ebook cataloging program. It manages your ebook collection for you. It is designed around the concept of the logical book, i.e. a single entry in the database that may correspond to ebooks in several formats. It also supports conversion to and from a dozen different ebook formats.
$ sudo dnf in calibre
System Config Printer
Official site: https://github.com/OpenPrinting/system-config-printer
system-config-printer is a graphical user interface that allows the user to configure a CUPS print server.
$ sudo dnf in system-config-printer
PPD from foomatic-db
Official site: http://www.openprinting.org
This is the database of printers, printer drivers, and driver options for Foomatic.
$ sudo dnf in foomatic-db
$ sudo dnf in foomatic-db-ppds
XSane (Scanner)
Official site: http://www.xsane.org/
XSane is an X based interface for the SANE (Scanner Access Now Easy) library, which provides access to scanners, digital cameras, and other capture devices. XSane is written in GTK+ and provides control for performing the scan and then manipulating the captured image.
$ sudo dnf in xsane
Gparted
Official site: http://gparted.org
GParted stands for Gnome Partition Editor and is a graphical frontend to libparted. Among other features it supports creating, resizing, moving and copying of partitions. Also several (optional) filesystem tools provide support for filesystems not included in libparted. These optional packages will be detected at runtime and don’t require a rebuild of GParted.
$ sudo dnf in gparted
Numix Solarized Theme Build
Official site: https://github.com/numixproject/numix-gtk-theme
A modern flat theme with a combination of light and dark elements.
Install deps buat ngebuild.
$ sudo dnf in sassc
$ sudo dnf in gdk-pixbuf2-devel
Install deps numix theme,
$ sudo dnf in numix-gtk-theme
$ git clone https://github.com/numixproject/numix-gtk-theme
$ cd numix-gtk-theme
Saya memiliki Codedark.colors
$ sudo make THEME=Codedark install
Aria2
Official site: http://aria2.github.io/
aria2 is a download utility with resuming and segmented downloading. Supported protocols are HTTP/HTTPS/FTP/BitTorrent. It also supports Metalink version 3.0.
$ sudo dnf in aria2
Install juga TUI nya biar nyaman.
$ pip install --user "aria2p[tui]"
Mate Polkit
Official site: http://mate-desktop.org
Integrates polkit with the MATE Desktop environment.
$ sudo dnf in mate-polkit
LXpolkit
Official site: http://lxde.sourceforge.net/
LXPolKit is a simple PolicyKit authentication agent developed for LXDE, the Lightweight X11 Desktop Environment.
$ sudo dnf in lxpolkit
p7zip
Official site: http://www.7-zip.org/
p7zip is a port of 7za.exe for Unix. 7-Zip is a file archiver with a very high compression ratio.
$ sudo dnf in p7zip
$ sudo dnf in p7zip-plugins
Screenkey
Official site: https://www.thregr.org/~wavexx/software/screenkey
A screencast tool to display your keys.
Features...
- Several keyboard translation methods
- Key composition/input method support
- Configurable font/size/position
- Highlighting of recent keystrokes
- Improved backspace processing
- Normal/Emacs/Mac caps modes
- Multi-monitor support
- Dynamic recording control etc.
$ sudo dnf in screenkey
Docker
Sumber: https://developer.fedoraproject.org/tools/docker/docker-installation.html
Install the docker-ce
package using the Docker repository:
To install the dnf-plugins-core package (which provides the commands to manage your DNF repositories) and set up the stable repository.
$ sudo dnf in dnf-plugins-core
To add the docker-ce
repository
$ sudo dnf config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo
To install the docker engine. The Docker daemon relies on a OCI compliant runtime (invoked via the containerd daemon) as its interface to the Linux kernel namespaces, cgroups, and SELinux.
$ sudo dnf in docker-ce docker-ce-cli containerd.io
Afterwards you need to enable the backward compatability for Cgroups. Docker Engine on Linux relies on control groups (cgroups). A cgroup limits an application to a specific set of resources. Control groups allow Docker Engine to share available hardware resources to containers and optionally enforce limits and constraints.
$ sudo grubby --update-kernel=ALL --args="systemd.unified_cgroup_hierarchy=0"
You must reboot after running the command for the changes to take effect
To start the Docker service use:
$ sudo systemctl start docker
Now you can verify that Docker was correctly installed and is running by running the Docker hello-world image.
$ sudo docker run hello-world
Why can’t I use docker command as a non root user, by default?
The Docker daemon binds to a Unix socket instead of a TCP port. By default that Unix socket is owned by the user root
and other users can access it with sudo
. For this reason, Docker daemon always runs as the root
user.
You can either set up sudo to give docker access to non-root users.
Or you can create a Unix group called docker
and add users to it. When the Docker daemon starts, it makes the ownership of the Unix socket read/writable by the docker
group.
Warning: The docker
group is equivalent to the root
user; For details on how this impacts security in your system, see Docker Daemon Attack Surface for details.
To create the docker
group and add your user:
$ sudo groupadd docker && sudo gpasswd -a ${USER} docker && sudo systemctl restart docker
$ newgrp docker
You have to log out and log back in (or restart Docker daemon and use newgrp
command as mentioned here) for these changes to take effect. Then you can verify if your changes were successful by running Docker without sudo
.
KBBI-Qt
Official site: https://github.com/bgli/kbbi-qt
KBBI Qt adalah aplikasi Kamus Besar Bahasa Indonesia berbasis Graphical User Interface (GUI) yang dikembangkan menggunakan bahasa pemrograman C++ dan Framework Qt. KBBI Qt memiliki antarmuka grafis yang dapat digunakan dengan mudah di desktop GNU/Linux. KBBI Qt merupakan perangkat lunak bebas (free software) berlisensi GNU GPL v3.0. Saat ini KBBI Qt siap untuk dipasang pada distribusi GNU/Linux Fedora 23/24/25/Rawhide, CentOS 7/RHEL 7, Debian dan distro-distro turunan Debian serta sistem operasi Windows.
$ sudo dnf in qt5-qtbase-devel
$ sudo dnf in qtchooser
$ git clone https://github.com/bgli/kbbi-qt.git
$ cd kbbi-qt
$ qmake-qt5 KBBI-Qt.pro
$ make
$ sudo make install
Zathura
Official site: http://pwmt.org/projects/zathura/
Zathura is a highly customizable and functional document viewer. It provides a minimalistic and space saving interface as well as an easy usage that mainly focuses on keyboard interaction.
Zathura requires plugins to support document formats. For instance:
- zathura-pdf-poppler to open PDF files,
- zathura-ps to open PostScript files,
- zathura-djvu to open DjVu files, or
- zathura-cb to open comic book files.
All of these are available as separate packages in Fedora. A zathura-plugins-all package is available should you want to install all available plugins.
$ sudo dnf in zathura
$ sudo dnf in zathura-pdf-mupdf
Kamus
Official site: https://github.com/abihf/kamus
Simple English <=> Indonesia Dictioanry Application.
$ sudo dnf in vala
$ sudo dnf in libvala-devel
$ sudo dnf in gtk3-devel
$ sudo dnf in libgee-devel
$ git clone https://github.com/abihf/kamus.git
$ cd kamus
$ ./configure
$ make
$ sudo make install
Thunderbird
Official site: http://www.mozilla.org/projects/thunderbird/
Mozilla Thunderbird is a standalone mail and newsgroup client.
$ sudo dnf in thunderbird
Evolution
Official site: https://wiki.gnome.org/Apps/Evolution
Evolution is the GNOME mailer, calendar, contact manager and communications tool. The components which make up Evolution are tightly integrated with one another and act as a seamless personal information-management tool.
$ sudo dnf in evolution
For Tray icon
Sumber: https://superuser.com/questions/112210/how-do-i-minimize-evolution-to-the-system-tray-in-ubuntu
Sumber: https://github.com/acidrain42/evolution-on/
$ sudo dnf in evolution-devel
$ sudo dnf in intltool
$ sudo dnf in gettext-common-devel
$ sudo dnf in gettext-devel
$ sudo dnf in GConf2-devel
$ git clone https://github.com/acidrain42/evolution-on.git
$ cd evolution-on
$ autoreconf -sivf
$ ./configure
$ make
$ sudo make install
Gucharmap (Character Map)
Official site: https://wiki.gnome.org/Apps/Gucharmap
This program allows you to browse through all the available Unicode characters and categories for the installed fonts, and to examine their detailed properties. It is an easy way to find the character you might only know by its Unicode name or code point.
$ sudo dnf in gucharmap
Zoom Meeting Client
Sumber: https://support.zoom.us/hc/en-us/articles/204206269-Installing-or-updating-Zoom-on-Linux
Sumber: https://tecadmin.net/install-zoom-client-on-fedora/
$ wget https://zoom.us/client/latest/zoom_x86_64.rpm
$ sudo dnf localinstall zoom_x86_64.rpm
ffmulticonverter
Official site: https://sites.google.com/site/ffmulticonverter/home
Graphical application which enables you to convert audio, video, image and document files between all popular formats using ffmpeg, unoconv, and ImageMagick.
Features...
- Conversions for several file formats.
- Very easy to use interface.
- Access to common conversion options.
- Audio/video ffmpeg-presets management.
- Options for saving and naming files.
- Recursive conversions
$ sudo dnf in ffmulticonverter
HandBrake
Official site: http://handbrake.fr/
HandBrake is a general-purpose, free, open-source, cross-platform, multithreaded video transcoder software application. It can process most common multimedia files and any DVD or Bluray sources that do not contain any kind of copy protection.
This package contains the command line version of the program.
$ sudo dnf in HandBrake-gui
Discord
Official site: https://discordapp.com/
Linux Release for Discord, a free proprietary VoIP application designed for gaming communities.
(RPMFusion - NonFree)
$ sudo dnf in discord
Slack
Official site: https://slack.com/intl/en-id/downloads/linux
Slack is the collaboration hub that brings the right people, information, and tools together to get work done.
$ wget https://downloads.slack-edge.com/linux_releases/slack-4.17.0-0.1.fc21.x86_64.rpm
$ sudo dnf localinstall slack-4.17.0-0.1.fc21.x86_64.rpm
PDF Arranger
Official site: https://github.com/pdfarranger/pdfarranger
PDF Arranger is a small python-gtk application, which helps the user to merge or split pdf documents and rotate, crop and rearrange their pages using an interactive and intuitive graphical interface. It is a frontend for pikepdf.
PDF Arranger is a fork of Konstantinos Poulios’s PDF-Shuffler.
$ sudo dnf in pdfarranger
Master PDF Editor 4
Sumber: https://www.linuxuprising.com/2019/04/download-master-pdf-editor-4-for-linux.html
Master PDF Editor is a proprietary application to edit PDF documents on Linux, Windows and macOS. It can create, edit (insert text or images), annotate, view, encrypt, and sign PDF documents.
$ wget http://code-industry.net/public/master-pdf-editor-4.3.89_qt5.x86_64.rpm
$ sudo dnf localinstall master-pdf-editor-4.3.89_qt5.x86_64.rpm
Intel GPU Tools
Official site: https://gitlab.freedesktop.org/drm/igt-gpu-tools
igt-gpu-tools (formerly known as intel-gpu-tools) is the standard for writing test cases for DRM drivers. It also includes a handful of useful tools for various drivers, such as Intel’s GPU tools for i915.
$ sudo dnf in igt-gpu-tools
Autocutsel
Sumber: http://www.nongnu.org/autocutsel/
Sumber: https://github.com/sigmike/autocutsel
X servers use two schemes to copy text between applications. The first one (old and deprecated) is the cutbuffer. It is a simple buffer in which any application can store text. The other scheme is the selection and works differently. There may be many selections in a single server. An application does not copy data in a selection, it “owns” it. When another application wants to retreive the content of a selection, it asks the owner.
Manual Build
Deps,
$ sudo dnf in libXaw-devel
$ git clone https://github.com/sigmike/autocutsel
$ cd autocutsel
$ ./bootstrap
$ ./configure
$ make
$ sudo make install
XZoom
Sumber: https://copr.fedorainfracloud.org/coprs/bgstack15/stackrpms/
Like xmag, xzoom magnifies a section of the X display. Xzoom is different because it will continuously update the magnified area as the display changes. It is fast enough to enlarge small animations, for example.
It can also mirror or rotate a part of the screen.
$ sudo dnf copr enable bgstack15/stackrpms
$ sudo dnf in xzoom
Dragon (drag and drop helper)
Official site: https://github.com/mwh/dragon.git
Many programs, particularly web applications, expect files to be dragged into them now. If you don’t habitually use a file manager that is a problem. dragon is a lightweight drag-and-drop source for X that solves this problem.
(copr - bgstack15/stackrpms)
$ sudo dnf copr enable bgstack15/stackrpms
$ sudo dnf in dragon-drag-and-drop
Manual Build
$ git clone https://github.com/mwh/dragon.git
$ cd dragon
$ sudo make install
Minder (mind mapping)
Official site: https://github.com/phase1geo/Minder
Use the power of mind-mapping to make your ideas come to life.
$ sudo dnf in minder
Taskell (Kanban Board)
Sumber: https://github.com/smallhadroncollider/taskell
Command-line Kanban board/task manager with support for Trello boards and GitHub projects.
$ sudo dnf in ncurses-compat-libs
Show/Hide GRUB Menu
Sumber: https://fedoraproject.org/wiki/Changes/HiddenGrubMenu
On systems with only a single OS installed, the grub menu does not offer any useful functionality, so we should hide it by default.
This new auto-hide functionality will be automatically enabled on new Fedora Workstation installs. This can be disabled by running:
$ sudo grub2-editenv - unset menu_auto_hide
Zeal
Official site: https://zealdocs.org/
Zeal is a simple offline documentation browser inspired by Dash.
$ sudo dnf in zeal
xinput
Official site: https://www.x.org
xinput is a commandline utility to query and configure X11 X Input Extension devices. It is commonly used to change driver properties at runtime.
$ sudo dnf in xinput
gThumb (image viewer, editor, organizer)
Official site: https://wiki.gnome.org/Apps/gthumb
gthumb is an application for viewing, editing, and organizing collections of images.
$ sudo dnf in gthumb
Speedtest CLI
Official site: https://github.com/sivel/speedtest-cli
Command line interface for testing internet bandwidth using speedtest.net.
$ sudo dnf in speedtest-cli
Spotify
Official site: https://www.spotify.com/
Online music streaming service.
(Flatpak - Flathub)
$ flatpak install flathub com.spotify.Client
rpkg
Official site: https://pagure.io/rpkg-util
This is an RPM packaging utility that can work with both DistGit and standard Git repositories and handles packed directory content as well as unpacked one.
$ sudo dnf in rpkg
asciidoc
Official site: http://asciidoc.org
AsciiDoc is a text document format for writing short documents, articles, books and UNIX man pages. AsciiDoc files can be translated to HTML and DocBook markups using the asciidoc(1) command.
$ sudo dnf in asciidoc
(after install rbenv)
$ gem install asciidoctor
$ gem install asciidoctor-pdf --pre
$ gem install pygments.rb
Tmux
Official site: https://tmux.github.io/
tmux is a “terminal multiplexer.” It enables a number of terminals (or windows) to be accessed and controlled from a single terminal. tmux is intended to be a simple, modern, BSD-licensed alternative to programs such as GNU Screen.
$ sudo dnf in tmux
Manual Build
Sumber: https://github.com/tmux/tmux
$ sudo dnf in libevent-devel
$ git clone https://github.com/tmux/tmux.git
$ cd tmux
$ sh autogen.sh
$ ./configure
$ make
$ sudo make install
Emacs
Official site: http://www.gnu.org/software/emacs/
Emacs is a powerful, customizable, self-documenting, modeless text editor. Emacs contains special code editing features, a scripting language (elisp), and the capability to read mail, news, and more without leaving the editor.
This package provides an emacs binary with support for X windows.
$ sudo dnf in emacs
Wireshark
Official site: http://www.wireshark.org/
Wireshark allows you to examine protocol data stored in files or as it is captured from wired or wireless (WiFi or Bluetooth) networks, USB devices, and many other sources. It supports dozens of protocol capture file formats and understands more than a thousand protocols.
It has many powerful features including a rich display filter language and the ability to reassemble multiple protocol packets in order to, for example, view a complete TCP stream, save the contents of a file which was transferred over HTTP or CIFS, or play back an RTP audio stream.
Sumber: https://fedoramagazine.org/how-to-install-wireshark-fedora/
$ sudo dnf in wireshark
Add user ke dalam group wireshark.
$ sudo usermod -a -G wireshark bandithijo
* Perlu restart/reboot system.
Scrcpy
Official site: https://github.com/Genymobile/scrcpy
Display and control your Android device.
Manual Build
Deps,
$ sudo dnf in SDL2-devel
$ sudo dnf in android-tools
$ sudo dnf in meson
$ sudo dnf in ffmpeg-devel
$ sudo dnf in libusb-devel
$ git clone https://github.com/Genymobile/scrcpy
$ cd scrcpy
$ ./install_release.sh
When a new release is out, update the repo and reinstall:
$ git pull
$ ./install_release.sh
To uninstall:
$ sudo ninja -Cbuild-auto uninstall
Faketime
Official site: https://github.com/wolfcw/libfaketime
Manipulate system time per process for testing purposes.
libfaketime intercepts various system calls which programs use to retrieve the current date and time. It can then report faked dates and times (as specified by you, the user) to these programs. This means you can modify the system time a program sees without having to change the time system- wide.
$ sudo dnf in libfaketime
Notion
Official site: https://github.com/notion-enhancer/notion-repackaged
Notion Desktop builds with Notion Enhancer for Windows, MacOS and Linux. Direct port of Notion is also available for Linux.
$ sudo vi /etc/yum.repos.d/notion-repackaged.repo
1
2
3
4
5
[notion-repackaged]
name=Notion Repackaged Repo
baseurl=https://yum.fury.io/notion-repackaged/
enabled=1
gpgcheck=0
With that you will be able to install notion-app
or notion-app-enhanced
.
Silahkan pilih,
$ sudo dnf in notion-app
Atau,
$ sudo dnf in notion-app-enhanced
Webcam
Langkah ini hanya optional.
$ sudo dnf in libwebcam
Cek apakah module uvcvideo sudah diload apa belum.
$ sudo lsmod | grep uvcvideo
Seharusnya, memiliki output seperti ini.
uvcvideo 122880 0
videobuf2_vmalloc 20480 1 uvcvideo
videobuf2_v4l2 36864 1 uvcvideo
videobuf2_common 69632 4 videobuf2_vmalloc,videobuf2_v4l2,uvcvideo,videobuf2_memops
videodev 270336 3 videobuf2_v4l2,uvcvideo,videobuf2_common
mc 65536 4 videodev,videobuf2_v4l2,uvcvideo,videobuf2_common
Kalau belum, jalankan,
$ sudo modprobe uvcvideo
Namun, menggunakan cara modprobe
di atas, tidak permanent. Untuk membuatnya permanent, buatlah file seperti contoh di bawah ini.
1
uvcvideo
Maka module uvcvideo akan diload saat booting.
guvcview
Official site: http://guvcview.sourceforge.net/
A simple GTK interface for capturing and viewing video from devices supported by the Linux UVC driver, although it should also work with any v4l2 compatible device.
$ sudo dnf in guvcview
Kdenlive
Official site: https://kdenlive.org/en/
Kdenlive is a non linear video editor. It is based on the MLT framework and accepts many audio and video formats, allows you to add effects, transitions and render into the format of your choice.
Saya memilih memasang dari flathub.
$ flatpak install flathub org.kde.kdenlive
Atau dari appimage.
Olive
Official site: https://www.olivevideoeditor.org
olive is a free non-linear video editor aiming to provide a fully-featured alternative to high-end professional video editing software.
olive is in Alpha stage, so expect bugs/crashes and feel free to report them. Builds for Linux, Mac, and Windows are available.
$ sudo dnf in olive
Clipnotify
Sumber: https://github.com/cdown/clipnotify
clipnotify is a simple program that, using the XFIXES extension to X11, waits until a new selection is available and then exits.
Install dependensi terlebih dahulu.
$ sudo dnf in libXfixes-devel
$ git clone https://github.com/cdown/clipnotify.git
$ cd clipnotify
$ sudo make install
Bash-Language-Server
Official site: https://github.com/bash-lsp/bash-language-server
Bash language server implementation based on Tree Sitter and its grammar for Bash with explainshell integration.
$ sudo dnf in nodejs-bash-language-server
OBS Studio
Official site: https://obsproject.com/
Open Broadcaster Software is free and open source software for video recording and live streaming.
(rpmfusion-free)
$ sudo dnf in obs-studio
Barrier
Official site: https://github.com/debauchee/barrier/wiki
Barrier is software that mimics the functionality of a KVM switch, which historically would allow you to use a single keyboard and mouse to control multiple computers. Barrier does this in software, allowing you to tell it which machine to control by moving your mouse to the edge of the screen, or by using a key press to switch focus to a different system.
$ sudo dnf in barrier
Unified Remote (urserver)
Sumber: https://www.unifiedremote.com/tutorials/how-to-install-unified-remote-server-rpm-via-terminal
Turn your smartphone into a universal remote control.
$ wget -O urserver.rpm https://www.unifiedremote.com/d/linux-x64-rpm
$ sudo rpm -Uhv urserver.rpm
urserver akan diinstall di /opt/urserver/
.
Untuk menjalankan urserver secara manual,
$ ./opt/urserver/urserver-start
Untuk menghentikan urserver secara manual,
$ ./opt/urserver/urserver-stop
Untuk uninstall,
$ sudo rpm -e urserver
Linux-Wifi-Hotspot
Official site: https://github.com/lakinduakash/linux-wifi-hotspot
Feature-rich wifi hotspot creator for Linux which provides both GUI and command-line interface. It is also able to create a hotspot using the same wifi card which is connected to an AP already ( Similar to Windows 10).
Manual Build
Deps,
$ sudo dnf in gtk3-devel
$ sudo dnf in qrencode-devel
$ sudo dnf in hostapd
$ git clone https://github.com/lakinduakash/linux-wifi-hotspot
$ cd linux-wifi-hotspot
$ make
$ sudo make install
Clang / LLVM
Official site: http://llvm.org
The goal of the Clang project is to create a new C, C++, Objective C and Objective C++ front-end for the LLVM compiler. Its tools are built as libraries and designed to be loosely-coupled and extensible.
$ sudo dnf in clang
Cockpit
Official site: https://cockpit-project.org/
The Cockpit Web Console enables users to administer GNU/Linux servers using a web browser.
It offers network configuration, log inspection, diagnostic reports, SELinux troubleshooting, interactive command-line sessions, and more.
Sumber: https://www.redhat.com/sysadmin/intro-cockpit
$ sudo dnf in cockpit
Install module-module tambahan.
$ sudo dnf in cockpit-podman
$ sudo dnf in cockpit-machines
$ sudo dnf in cockpit-networkmanager
$ sudo dnf in cockpit-packagekit
$ sudo dnf in cockpit-storaged
$ sudo dnf in cockpit-pcp
$ sudo dnf in virt-viewer
$ sudo systemctl enable --now cockpit.socket
$ sudo systemctl enable --now pmlogger.service
Saya tidak ingin menjalankan service-service cockpit pada saat booting.
Saya hanya menyalakan service apabila saya perlukan saja.
aircrack-ng
Official site: https://github.com/aircrack-ng/aircrack-ng
aircrack-ng is a set of tools for auditing wireless networks. It’s an enhanced/reborn version of aircrack. It consists of airodump-ng (an 802.11 packet capture program), aireplay-ng (an 802.11 packet injection program), aircrack (static WEP and WPA-PSK cracking), airdecap-ng (decrypts WEP/WPA capture files), and some tools to handle capture files (merge, convert, etc.).
$ sudo dnf in aircrack-ng
heroku-cli
Official site: https://devcenter.heroku.com/articles/heroku-cli
The Heroku Command Line Interface (CLI) makes it easy to create and manage your Heroku apps directly from the terminal. It’s an essential part of using Heroku.
$ npm install -g heroku
FreeCAD
Official site: http://freecadweb.org/
FreeCAD is a general purpose Open Source 3D CAD/MCAD/CAx/CAE/PLM modeler, aimed directly at mechanical engineering and product design but also fits a wider range of uses in engineering, such as architecture or other engineering specialties. It is a feature-based parametric modeler with a modular software architecture which makes it easy to provide additional functionality without modifying the core system.
$ sudo dnf in freecad
Kalau tampilan UI nya tidak bagus. Coba mainkan env variable yang berhubungan dengan QT scaling.
$ /usr/bin/env QT_AUTO_SCREEN_SCALE_FACTOR=0 QT_SCALE_FACTOR=1 FreeCAD
Visual Studio Code
Official site: https://code.visualstudio.com/
Code editing. Redefined. Free. Built on open source. Runs everywhere.
Sumber: https://code.visualstudio.com/docs/setup/linux#_rhel-fedora-and-centos-based-distributions
$ sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
$ 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 dnf check-update
$ sudo dnf in code
GNOME Battery Bench
Official site: https://git.gnome.org/browse/gnome-battery-bench
This application is designed for measuring power usage. It does it by recording the reported battery statistics as it replays recorded event logs, and then using that to estimate power consumption and total battery lifetime.
$ sudo dnf in gnome-battery-bench
GNOME Power Manager
Official site: https://projects.gnome.org/gnome-power-manager/
GNOME Power Manager uses the information and facilities provided by UPower displaying icons and handling user callbacks in an interactive GNOME session.
$ sudo dnf in gnome-power-manager
Systool
Official site: https://github.com/linux-ras/sysfsutils
This package’s purpose is to provide a set of utilities for interfacing with sysfs.
$ sudo dnf in sysfsutils
inxi
Official site: http://smxi.org/docs/inxi.htm
Inxi offers a wide range of built-in options, as well as a good number of extra features which require having the script recommends installed on the system.
$ sudo dnf in inxi
lshw
Official site: http://ezix.org/project/wiki/HardwareLiSter
lshw is a small tool to provide detailed informaton on the hardware configuration of the machine. It can report exact memory configuration, firmware version, mainboard configuration, CPU version and speed, cache configuration, bus speed, etc. on DMI-capable x86 systems and on some PowerPC machines (PowerMac G4 is known to work).
$ sudo dnf in lshw
smartmontools
Official site: http://smartmontools.sourceforge.net/
The smartmontools package contains two utility programs (smartctl and smartd) to control and monitor storage systems using the Self-Monitoring, Analysis and Reporting Technology System (SMART) built into most modern ATA and SCSI hard disks. In many cases, these utilities will provide advanced warning of disk degradation and failure.
$ sudo dnf in smartmontools
cpupower-gui
Sumber: https://github.com/vagnum08/cpupower-gui
cpupower-gui is a graphical program that is used to change the scaling frequency limits of the cpu, similar to cpupower.
You can install cpupower-gui by adding the repository from OpenSUSE build service. For example, in Fedora 32 run the following as root:
$ sudo dnf config-manager --add-repo https://download.opensuse.org/repositories/home:erigas:cpupower-gui/Fedora_32/home:erigas:cpupower-gui.repo
$ sudo dnf in cpupower-gui
Klavaro
Official site: http://klavaro.sourceforge.net/en/
Klavaro is a touch typing tutor that is very flexible and supports customizable keyboard layouts. Users can edit and save new or unknown keyboard layouts, as the basic course provided by the program was designed to not depend on specific layouts.
$ sudo dnf in klavaro
Rust Lang
Official site: https://www.rust-lang.org
Rust is a systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety.
This package includes the Rust compiler and documentation generator.
$ sudo dnf in rust
XAMPP from Apachefriends
Official site: https://www.apachefriends.org/index.html
XAMPP is the most popular PHP development environment.
Download terlebih dahulu file xamp-*.run.
$ chmod +x xampp-*
$ sudo ./xampp-*
Install deps for Apache Web Server.
$ sudo dnf in libnsl
Jalankan GUI dengan,
$ sudo /opt/lampp/manager-linux-x64.run
live-server
Sumber: https://www.chrisatmachine.com/Neovim/20-live-server/
Live-server is an npm package that will allow you to see real time changes for .html files in your browser.
$ npm install -g live-server
fd-find
Official site: https://crates.io/crates/fd-find
Fd is a simple, fast and user-friendly alternative to find.
$ sudo dnf in fd-find
strace
Official site: https://strace.io
The strace program intercepts and records the system calls called and received by a running process. Strace can print a record of each system call, its arguments and its return value. Strace is useful for diagnosing problems and debugging, as well as for instructional purposes.
Install strace if you need a tool to track the system calls made and received by a process.
$ sudo dnf in strace
Blender
Official site: http://www.blender.org
Blender is the essential software solution you need for 3D, from modeling, animation, rendering and post-production to interactive creation and playback.
Professionals and novices can easily and inexpensively publish stand-alone, secure, multi-platform content to the web, CD-ROMs, and other media.
(flatpak - flathub)
$ flatpak install org.blender.Blender
* Catatan: Saya memilih memasang Blender via Flatpak karena alasan beberapa codec seperti ffmpeg tidak terdapat di Blender versi dnf.
tty-clock
Official site: https://github.com/xorg62/tty-clock
Clock using lib ncurses.
Deps,
$ sudo dnf in ncurses ncurses-devel
$ git clone https://github.com/xorg62/tty-clock
$ cd tty-clock
$ make
$ sudo make install
kicad
Official site: https://www.kicad.org
KiCad is EDA software to design electronic schematic diagrams and printed circuit board artwork of up to 32 layers.
$ sudo dnf in kicad
dotnet
Official site: https://github.com/dotnet/
.NET is a fast, lightweight and modular platform for creating cross platform applications that work on Linux, macOS and Windows.
It particularly focuses on creating console applications, web applications and micro-services.
.NET contains a runtime conforming to .NET Standards a set of framework libraries, an SDK containing compilers and a ‘dotnet’ application to drive everything.
$ sudo dnf in dotnet
fontforge
Official site: http://fontforge.github.io/
FontForge (former PfaEdit) is a font editor for outline and bitmap fonts. It supports a range of font formats, including PostScript (ASCII and binary Type 1, some Type 3 and Type 0), TrueType, OpenType (Type2) and CID-keyed fonts.
$ sudo dnf in fontforge
microsoft core font (mscorefont)
Official site: http://mscorefonts2.sourceforge.net/
Get Microsoft’s Core Fonts for the Web and Cleartype Fonts
$ sudo rpm -i https://downloads.sourceforge.net/project/mscorefonts2/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm
Sedang dalam proses penulisan...