Code Monkey home page Code Monkey logo

dotfiles's Introduction

Dotfiles Logo
Dotfiles collection used to configure my own development environment

CI results github commits


πŸ”— Quick Links


πŸš€ Installation

Warning: Feel free to give these dotfiles a try. However, I advise you to fork this repository first and look around. Get a feel of what it will set up for you and remove things you don’t want or need. Don’t blindly use my settings unless you know what that entails. Use at your own risk!

The repo used to provide a central installation script to install single configurations or all of them at once. This script was written using the bashly framework, an amazing tool that allows for robust and standardized bash scripts. For reference, I kept this paragraph here.

As the project evolved, I switched to a dotfile management framework: Dotbot.

Dotbot is an handy framework with no dependencies that installs as a submodule on this repo and provides a central installation script, configured using one or more yaml files. I suggest giving it a read and include it in your own dotfile repo if it tickles your fancies. It also supports plugins for multiple use cases.

With dotbot, installation is as simple as:

git clone https://github.com/lcampit/Dotfiles && cd Dotfiles
./install

This will perform all steps defined in the dotbot configuration file. These steps will automatically link dotfiles in their respective location, overwriting existing ones (beware).

With dotbot, it is possible to create multiple configuration files. The repo contains a full-install.conf.yaml file that links all configuration files and but also perform installations steps for all tools needed. It is intended to be a one line full install for new machines or images. All dependencies and tools will be installed and it may take a while. To perform this kind of installation run:

./install -c full-install.conf.yaml

These installation steps are meant to be idempotent, therefore should perform no operation if dependencies or tools are already installed.

🧩 Fonts

My terminal uses the Jetbrains Mono font, made for developers with a bunch of useful features and symbols.

Included tools and references

This repo takes inspiration from this fellow developer dotfiles repo. I know there are probably thousands of similar repos, but that is the one that I stumbled across first.

The repo contains a dedicated folder and README file for any tool that I use on my machines.

πŸ›  Notes

There are some tools in this list written in Rust. I stumbled across this video that showed me those nice tools. They do compile practically everywhere and are some of the fastest options in the market, therefore I decided to give them a try. As more and more rust video will surely flood my home (thanks youtube algorithm), I'm sure that list will be updated.

πŸŒ† Screenshots

Overview of my setup Overview of an alacritty window running tmux with 3 panes: nvim, lazygit and a shell running starship prompt

Nvim Overview Overview of my neovim configuration featuring nerdtree, webdevicons, tokyonight storm theme, lsps and much more

🀝 Contributing

Feel free to contribute in any way shape or form you may think of: open issues for bugs you may encounter using my configuration, suggests new tools or different settings and more!

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.