Code Monkey home page Code Monkey logo

dotfiles's Introduction

dotfiles

Ubuntu-based configuration for zsh, Neovim, LunarVim and Julia.

Installation

Pre-requisites

Install git:

sudo apt install git
git config --global user.name "<NAME>"
git config --global user.email "<email>"

Install VS Code Insiders.

Then, clone this repo:

git clone --recursive https://github.com/fabiofortkamp/dotfiles ~/dotfiles

Bootstraping

Linux

Run the bootstrap script:

cd ~/dotfiles
chmod +x bootstrap.sh
./bootstrap.sh

Restart the shell and then run ./install-asdf.zsh && chmod +x install-lvim.zsh && ./install-lvim.zsh

macOS

cd ~/dotfiles
chmod +x bootstrap.sh
zsh bootstrap.sh

Features

Default editor

Neovim (nvim) is set as the default editor - unless in a SSH session, which uses regular vim.

My current neovim configuration is not included in this repo, but uses AstroNvim.

The alias e is defined to open the default editor.

prm

This repo includes my fork of the prm project. The prm projects are stored in ~/OneDrive/prm (the top-level OneDrive folder is created if not existing).

You can also use the aliases pst=prm start and pt=prm stop.

custom folder and the local script

The scripts in the custom folder are executed in alphabetical order; the custom/local.zsh is also loaded but it is ignored by git. This is a good place to put local configurations that you don't want to share with the world.

Modified python plugin

This repo modifies the python plugin from oh-my-zsh in the following ways:

  • there is no ipython alias
  • the default virtual environment to be used with mkv and vrun is termed .venv

lazygit plugin

This plugin defines the alias lg to run lazygit

Neovim

This repo uses the NvChad distribution, and the custom folder is included in the repo. Link the configuration with:

ln -s ~/dotfiles/config/nvim/lua/custom ~/.config/nvim/lua/custom

ruff and mypy configuration

There are default ruff and mypy configuration files.

The ruff file enables more checks, in particular docstrings, and enforces Google-style ones.

The mypy file ignores missing imports.

tmuxinator

After bootstraping, install tmuxinator with gem install tmuxinator.

This repo assumes a PARA-like setup with tmuxinator files at $HOME/OneDrive/2-Areas/tmuxinator/. A link at $HOME/.config/tmuxinator is created at this location, and the $TMUXINATOR_CONFIG environment variable points to this latter location.

dotfiles's People

Contributors

fabiofortkamp avatar

Watchers

James Cloos avatar  avatar  avatar

dotfiles's Issues

Boostraping is broken

The bootstrap script can not be run smoothly; it will install packages but will not source the correct files, resulting in the PATH being outdated.

A better version should be written, taking note of where the commands are installed and using them where needed, before a final reset of the shell.

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.