This repository contains scripts and configuration files to quickly set up a new Ubuntu/Debian system with your preferred applications and configurations.
- Snap packages: Android Studio, Chromium, VS Code, Discord, Firefox, Spotify, Steam, and more
- Flatpak applications: Newelle, Resources
- APT packages: Git, Docker, Python, development tools, multimedia applications
- Docker with Docker Compose
- Node.js (LTS) and Yarn
- Rust and Cargo
- Python 3 with pip
- Git configuration
- VS Code
- dysk: Disk usage utility with a modern interface
- eza: Modern replacement for
lswith colors and icons
- FiraCode Nerd Font: Programming font with ligatures and icons
- Extensions: Dash to Panel, ArcMenu, Bing Wallpaper, Vitals, Tiling Assistant, and more
- Keyboard shortcuts: Custom keybindings (Super+E for file manager)
- Terminal profile: Custom Solarized Dark theme with transparency
- Enhanced bash profile with useful aliases and functions
- System utilities (extract function, mkcd, weather, etc.)
- Custom functions and improved history settings
- Environment variables for development
post-install.sh- Main installation scriptbash_profile- Custom bash configuration (aliases, functions, environment)gnome-keybindings.conf- GNOME keyboard shortcuts configurationterminal-profiles.conf- Terminal profile settingsinstall-gnome-extensions.sh- GNOME extensions installation guideREADME.md- This file
-
Clone or download this repository
git clone <repository-url> cd linux-post-install
-
Make the script executable
chmod +x post-install.sh
-
Run the installation script
./post-install.sh
-
Follow the post-installation steps displayed at the end
Some configurations require manual intervention:
-
GNOME Extensions:
- Method 1 (Recommended): Open "Extension Manager" from applications menu
- Method 2: Visit extensions.gnome.org and install browser connector
- Install user extensions:
- Dash to Panel
- ArcMenu
- Bing Wallpaper
- Vitals
-
Git Configuration:
git config --global user.name "Your Name" git config --global user.email "your.email@example.com"
-
Docker Group: Log out and back in to apply Docker group membership
- Android Studio (classic) - Official Android development IDE
- Chromium - Open-source web browser
- VS Code (classic) - Microsoft's code editor
- DBeaver CE - Universal database tool
- Discord - Voice and text chat for gaming
- Firefox - Mozilla web browser
- KeePassXC - Password manager
- kubectl (classic) - Kubernetes command-line tool
- Pinta - Simple image editor
- Postman - API development and testing
- Remmina - Remote desktop client
- Spotify - Music streaming service
- Steam - Gaming platform
- Thunderbird - Email client
- Newelle (io.github.qwersyk.Newelle) - AI assistant application
- Resources (net.nokyan.Resources) - System monitor
- flatpak - Universal app packaging format
- extension-manager - GNOME Shell extensions manager
- gnome-tweaks - Advanced GNOME configuration tool
- papirus-icon-theme, arc-theme - Icon and window themes
- Software packaging tools (software-properties-common, etc.)
- unzip - Archive extraction utility
- dysk - A disk usage utility with a modern interface
- eza - A modern, maintained replacement for
lswith colors and icons
- FiraCode Nerd Font - Programming font with ligatures and Nerd Font icons
- Tiling Assistant - Advanced window tiling
- Ubuntu AppIndicators - System tray support
- Ubuntu Dock - Enhanced dock functionality
- Desktop Icons NG (DING) - Desktop icons support
- Dash to Panel - Combines top panel and dock
- ArcMenu - Application menu for GNOME
- Bing Wallpaper - Daily Bing wallpapers
- Vitals - System monitor in top panel
The included terminal profile features:
- Solarized Dark color scheme
- Transparent background (3%)
- Custom size (132x32)
- Optimized for development work
Super + E: Open file manager
Feel free to modify the files according to your needs:
- Edit
post-install.shto add/remove packages - Modify
bash_profileto customize shell aliases and functions - Adjust
gnome-keybindings.conffor different shortcuts - Update
terminal-profiles.conffor your preferred terminal appearance
The bash_profile includes:
- Aliases: Shortcuts for common commands (ll, la, cls, etc.)
- Environment setup: PATH modifications, editor settings, colored output
- Ubuntu 24.04 LTS (Noble) or compatible Debian-based distribution
- Internet connection for package downloads
- Sudo privileges