GithubHelp home page GithubHelp logo

dotfiles's Introduction

dotfiles

The files in this repositories are dotfiles and Manifest files managed by comtrya.

Comtrya allows to configure and provision the system with these files.

๐Ÿ”ง Installation

To install comtrya run the installation script or download it from their page.

curl -fsSL https://get.comtrya.dev | sh

๐ŸŒฑ Provisioning

Provisioning a specific manifest or a subset

comtrya -d https://github.com/thebino/dotfiles apply -m apps.nvim

Provisioning all manifests from the repository

comtrya -d https://github.com/thebino/dotfiles apply

โš ๏ธ Configuration

{{ user.config_dir }} on Mac is refering to ~/Library/Application Support/<appname>/ it might be necessary to use {{ user.home_dir }}/.config for some apps instead.

๐Ÿ” Encryption

Instead of the build-in encryption with age some configuration files are encrypted using GPG and are decrypted during the provisioning.

Encryption

$ gpg --output input.gpg --encrypt --armor input.txt

Decryption

$ gpg --output output.txt --decrypt input.gpg

๐Ÿ“ neovim

nvim screen

Ui

Files

  • File Browser neo-tree _tt open/close, _tf focus
  • Fuzy Finder telescope.nvim _ff for files, _fb for buffers
  • Git lazygit.nvim _lg lazygit in a floating window
  • File Pinning harpoon _ba mark a file, _bb show marked files

Typing

Languages

Misc

  • Autocompletion nvim-cmp auto-completion during typing

dotfiles's People

Contributors

thebino avatar

Watchers

 avatar

dotfiles's Issues

Comtrya Variant Syntax

This is severely under documented, but I thought I'd share.

Currently, you have:

actions:
  - action: package.install
    where: os.name == "macos"
    provider: homebrew
    name: bat

  - action: package.install
    where: os.name == "linux"
    provider: aptitude
    name: bat

This is fine, but you could do:

actions:
  - action: package.install
    name: bat

Because the provider defaults based on the operating system, meaning that it'll use aptitude on Debian like systems and brew on macOS.

Of course, there are cases where the package name is different across package managers and for that you can do:

actions:
  - action: package.install
    name: bat
    variants:
    - where: os.name == "macos"
      name: macos-bat

Hope this helps. Do let us know if there's anything you need from Comtrya that it can't do.

Cheers

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.