Giter Site home page Giter Site logo

configs's Introduction

Configs

Basic showcase (neofetch is customized in this picture, mint theme used)

For GNOME desktop setup see this repo.

desktop

Quick Install

Prerequisites are only bash / curl / git (macOS should have them installed by default, although git would need user input to install after prompt)

This will move every conflicting file from home into ~/.config-backup directory, so you can return to backup if needed

curl -Lks https://raw.githubusercontent.com/dhvcc/configs/master/.cfg/install.sh | /bin/sh
exec bash

This will run the setup for all of the utils that you need to run this config

"$HOME/.cfg/setup.sh"

Warning, Bash configs may be outdated, use zsh as your default

Configuration

  • Any additional rc stuff for your .zshrc you can add into .config/.rc_extend.sh

Neofetch

  • neofetch can be turned off with NEOFETCH=0 (in something like .config/.rc_extend.sh)
  • you can override default neofetch settings with your own theme. Just add export NEOFETCH_THEME=name_of_your_theme to .rc_extend.sh and add your settings into ~/.config/neofetch/themes/name_of_your_theme.sh file

Sections below will be re-written because of the new installer


TODO

  • Don't default editor to VIM
  • Fix aliases when command is not found (ls/vim)
  • Better extensibility support (redo .rc_extend.sh and friends)
  • Better docs
  • Revert config script
  • Helper command (something like cfg help?)

Dependencies

System

Dependencies and software on ubuntu

sudo apt-get install -y htop xclip make vim curl \
       python3-dev python3-pip python3-venv \
       libpq-dev libsqlite3-dev
sudo apt install zsh cargo
wget https://github.com/lsd-rs/lsd/releases/download/v1.0.0/lsd-musl_1.0.0_amd64.deb && sudo dpkg -i lsd-musl_1.0.0_amd64.dev && rm lsd-musl_1.0.0_amd64.deb
sudo apt-get insatll -y neofetch unzip bat lsd fd-find ripgrep
ln -s $(which fdfind) ~/.local/bin/fd
mkdir -p ~/.local/bin
ln -s /usr/bin/batcat ~/.local/bin/bat

Software

  • pyenv
    curl https://pyenv.run | bash
  • fnm
    curl -fsSL https://fnm.vercel.app/install | bash
    fnm install 16
  • nerd-fonts (Hack Nerd Font Mono)
    sudo mkdir -p /usr/share/fonts/hack
    cd /usr/share/fonts/hack && sudo curl -fLo "Hack Regular Nerd Font Complete Mono.ttf" https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/Hack/Regular/complete/Hack%20Regular%20Nerd%20Font%20Complete%20Mono.ttf
    sudo fc-cache -f -v
  • fzf (used for shell/ipython history search, vim/ranger file search, but can also be used fore many more things)
    git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf && ~/.fzf/install --all
  • btop (fancier htop)
  • ctop (docker monitoring tool)
    sudo wget https://github.com/bcicen/ctop/releases/download/v0.7.7/ctop-0.7.7-linux-amd64 -O /usr/local/bin/ctop
    sudo chmod +x /usr/local/bin/ctop
  • thinkfan (utility to control fan speeds of your ThinkPad)

VIM / NEOVIM

Ubuntu install v0.7.2 from github

sudo curl -sL -o /var/cache/apt/archives/nvim-linux64.deb  https://github.com/neovim/neovim/releases/download/v0.7.2/nvim-linux64.deb && sudo dpkg -i /var/cache/apt/archives/nvim-linux64.deb

python -m venv ~/.vim/.venv
~/.vim/.venv/bin/pip install pynvim pyright
npm i -g neovim
curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
vim -c ':PlugInstall | :qall'

Shell

Pip

pip install pipx
pipx install poetry --include-deps
pipx install ansible --include-deps
pipx install git+https://github.com/politeauthority/docker-pretty-ps.git#egg=docker-pretty-ps
pipx install ranger-fm --include-deps
pipx install ipython --include-deps

You may want to also automatically update pipx-installed utils Updates all utils every week 0 0 * * 0 pipx upgrade-all as a cron job (crontab -e)

Cargo

# Starship cargo install is super slow
sh -c "$(curl -fsSL https://starship.rs/install.sh)"

Shell

bash -c "$(curl -fsSL https://raw.githubusercontent.com/ohmybash/oh-my-bash/master/tools/install.sh)"
mv -f .bashrc.omb* .bashrc

sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --keep-zshrc --unattended

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-completions ${ZSH_CUSTOM:=~/.oh-my-zsh/custom}/plugins/zsh-completions

exec zsh

# poetry completion
mkdir $ZSH_CUSTOM/plugins/poetry
poetry completions zsh > $ZSH_CUSTOM/plugins/poetry/_poetry

Terminal

  • kitty (fast and feature-rich terminal emulator)

    sudo apt install kitty
  • kitty-themes (Broadcast)

    THEME=Broadcast
    wget "https://raw.githubusercontent.com/dexpota/kitty-themes/master/themes/$THEME.conf" -P ~/.config/kitty/kitty-themes/themes
    cd ~/.config/kitty
    ln -s ./kitty-themes/themes/$THEME.conf ~/.config/kitty/theme.conf

configs's People

Contributors

dhvcc avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Forkers

fund-hedge-fund

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.