Skip to content
This repository has been archived by the owner on Feb 12, 2023. It is now read-only.

iosifache/ubuntu-dotfiles

Repository files navigation

dotfiles 🧰



Description

The repository contains dotfiles I used on my Ubuntu 22.04 LTS box:

  • Scripts for installing and configuring utility programs, drivers, and applications
  • Operating system customization, namely:
    • Dock customization
    • Desktop customization
    • Nautilus customization
    • Romanian language pack
    • Fonts
    • Papirus icon theme
    • Background image
    • Profile image
  • Alias, MIME types, and environment variables management.

Folder Structure

Main Folders and Files

.
β”œβ”€β”€ applications                    Scripts for installing and customizing
|   β”” ...                           installed applications
β”œβ”€β”€ drivers                         Scripts for installing and customizing
|   β”” ...                           drivers
β”œβ”€β”€ filesystem                      Scripts for setting up the filesystem
β”œβ”€β”€ helpers                         Scripts defining helper functions, imported
|   β”” ...                           and used in other scripts
β”œβ”€β”€ ubuntu-customization            Scripts for customizing the operating
|   β”” ...                           system
β”œβ”€β”€ utilities                       Scripts for installing and customizing
|   β”” ...                           utility programs
β”œβ”€β”€ environment_variables.sh        Environment variables to be already set
|                                   when spawining
β”œβ”€β”€ install.sh                      Script installing the whole environment
β”œβ”€β”€ README.md                       This file
β”œβ”€β”€ regenerate_aliases.sh           Script for regenerating the aliases based on
|                                   the distributed aliases.txt files
β”œβ”€β”€ shell_spawning.sh               Script executed when spawning a new shell
└── sudoers.sh                      Script for manipulating sudoers

Application-Specific Files

As the repository is feature-/application-centric, the majority of folders contains an install.sh that is automatically called when running the main install.sh script, from the repository root.

The applications and drivers folder can contain others, such as:

  • Custom aliases in aliases.sh
  • MIME types, that are handled by the current application, in mimes.txt
  • Other configuration files that are symlinked into their correct location.

Cheatsheet with Locations of Interest

  • ubuntu-customization/fonts/fonts for custom fonts
  • ubuntu-customization/ssh-keys for SSH keys
  • */aliases.sh for aliases
  • */mime.txt for MIME types

Guides

Installation

  1. Clone the repository on user's desktop.
  2. Edit utilities/git/.gitconfig.
  3. Add the user to sudoers with sudo TARGET_USER=<target_user> ./sudoers.sh add.
  4. Run the installation script with TARGET_USER=<target_user> PROFILE_IMAGE=<profile_image_link> ./install.sh.
  5. Remove the user from sudoers with sudo TARGET_USER=<target_user> ./sudoers.sh remove.

Aliases Regeneration

  1. Run the regeneration script with:
    • regenerate-aliases if you are the target user, or
    • sudo TARGET_USER=<target_user> ./regenerate_aliases.sh if you regenerate the aliases for other user.

About

Personal dotfiles for Ubuntu 22.04 LTS 🧰

Topics

Resources

Stars

Watchers

Forks

Languages