_ _ __ _ _
__| | ___ | |_ / _(_) | ___ ___
/ _` |/ _ \| __| |_| | |/ _ \/ __|
| (_| | (_) | |_| _| | | __/\__ \
\__,_|\___/ \__|_| |_|_|\___||___/
_ ___ ___ ____ _
/ |/ _ \ / _ \| ___| _ __ __ _ _ __| |__ __ _ _ __ ___
| | (_) | (_) |___ \| '_ \ / _` | '__| '_ \ / _` | '_ ` _ \
| |\__, |\__, |___) | |_) | (_| | | | | | | (_| | | | | | |
|_| /_/ /_/|____/| .__/ \__,_|_| |_| |_|\__,_|_| |_| |_|
|_|
Introduction
This repository contains my personal configurations for Ubuntu, Arch Linux (with sway window manager) and apple OSX, which was created in Fall 2013 when I was a lonely B.Sc.' student at the Amirkabir University of Technology. First, thank you for your visiting. A dotfiles repository is a personal repository, with it, you can manage your configuration between your systems, so I make this repository, a template repository, so you can easily start your personal one from it. Special thanks to @elahe-dastan for using this project and reporting its issues. Her unique contribution to this repository and my life is unforgettable.
Installation
The following command creates a basic directory structure and clones the dotfiles repository:
curl -sL https://raw.githubusercontent.com/1995parham/dotfiles/main/over-the-air-installation.sh | bash
Install required tools with pacman
, brew
or apt
.
./start.sh env
Install configuration files with soft-links and installs plugins on vim.
This script don't set the zsh
as a default shell, so you need to set it manually.
./install.sh
Install useful fonts.
./start.sh font
Don't forget changing the git username and email:
touch $HOME/.config/git/config
Also don't forget to install neovim plugins:
:PlugInstall
Then you can install other tools with start.sh
, here are some examples:
# install docker with proxy
./start.sh docker
# install golang
./start.sh go
# install python
./start.sh python
# and many many more...
Configuration of mentioned applications also is a part of this repository.
Window Managers
I am using sway
and hyprland
as my primary window managers. This repository
structured around creating soft-links and because of that the duplicate configurations
between these window managers are gathered in sway/
.
Emacs
I am using Emacs for the followings:
- latex documents (specially in Persian)
- org-mode
Searching
Ivy is a plugin for searching in buffers, notes, etc. Almost everything in doom Emacs works with ivy. It is simple and will show you a popup for everything.
Configuration (based on doom)
I use Emacs based on doom, and I found following configurations are useful to update my configurations based on them.
Workspace
Never close emacs, just use workspace to manage your work. To work with workspace just start with SPACE-TAB.