- Fedora Setup
- Introduction
- 1. First things to do post installation
- 2. Setup the Terminal
- 3. Setup SSH
- 4. Install Compilers
- 5. Install CLI based tools and applications
- 6. Install GUI based applications
- 7. Install Gtklp for remote printers
- 8. Install FOSS toolchains for Hardware development
- 9. Customizations
- 10. Optional: Upgrade Fedora
This repo is a guide to how I setup my desktop machine using Fedora as my distro of choice. I use Fedora mostly for hardware and software development. This is the perfect guide if you're migrating to Linux for the first time and don't know where to start.
- Reference
- Open the file:
sudo vi /etc/dnf/dnf.conf
- add the following lines:
# added for speed fastestmirror=True max_parallel_downloads=5 defaultyes=True keepcache=False
- Update the system:
sudo dnf update
- Run the script
post_installation.sh
. This will do the following:- enable rpm fusion
- enable flathub
- install media codecs
- install preload
- enable 3rd party reporsitories
```bash
cp -rv ./shell_configs/.bash_aliases ./shell_configs/.bashrc ~
```
- Install git:
sudo dnf install -y git
- Clone this dotfiles repo.
git clone https://github.com/usman1515/dotfiles.git
- Copy the git config from the dotfiles repo into the
$HOME
dir.
- Install Nerd Fonts
source install_nerd_fonts.sh
- Install alacritty
sudo dnf install -y alacritty
- Copy the
alacritty
config folder from the dotfiles repo into.config
folder. - Clone alacritty themes repo:
git clone https://github.com/alacritty/alacritty-theme ~/.config/alacritty/themes
- Set terminal shortcut key
- Settings -> Keyboard -> View and customize shortcuts -> Custom shortcuts:
- Name: Open terminal
- Command:
/usr/bin/alacritty/
- Shortcut: Super + Enter
- Settings -> Keyboard -> View and customize shortcuts -> Custom shortcuts:
- Install kitty
sudo dnf install -y kitty
- Copy the
kitty
config folder from thedotfiles
repo into.config
folder.
- Install oh my posh for BASH shell.
source install_oh_my_posh.sh
- Install oh my zsh for ZSH shell.
source install_oh_my_zsh.sh # copy these config file sin $HOME dir cp -rv ./shell_configs/.p10k.zsh ./shell_configs/.zsh_aliases ./shell_configs/.zshrc ~
- Reboot PC.
- Run the script
setup_ssh.sh
to generate SSH key.source ./setup_ssh.sh
- Languages & databases
source install_compilers.sh
- To install all the CLI and TUI based applications run the following command.
source install_cli_packages.sh
- To install all the GUI and RPM based applications run the following command.
source install_gui_packages.sh
- TO setup remote printers on your network that use GNU GTKLP GUI run the following script.
source install_printers.sh
OPTIONAL: These are some of the tools that I use for hardware development.
-
GHDL for VHDL simulation.
-
iVerilog for Verilog simulation.
-
Yosys for Verilog synthesis.
-
Verilator for converting Verilog and SystemVerilog designs into a C++ or SystemC model.
-
Chisel for designing and testing RTL using Chisel/Scala.
-
FloPoCo for generating Floating Point Cores.
source install_ghdl.sh source install_iverilog.sh source install_yosys.sh source install_verilator.sh source install_chisel.sh source install_docker_flopoco.sh
- Goto settings and do the following:
- Bluetooth
- Turn off
- Appearance:
- Dark
- Multitasking:
- Hot corners: off
- Fixed number of workspaces: 6
- Workspaces on all displays: on
- Include apps from current workspace only: on
- Power:
- Automatic screen brightness: off
- Show battery percentage: on
- Display
- Night light: on
- timings: 00:00 - 06:00
- Mouse and touchpad:
- Touchpad:
- Tap to click: on
- Scroll method: 2 finger
- Scroll direction: natural
- Touchpad:
- Region and Language:
- Formats: English (United Kingdom)
- Accessibility:
- Pointing and clicking:
- Locate pointer: on
- Pointing and clicking:
- Bluetooth
- To upgrade fedora run the following script
source upgrade_fedora.sh