All Projects → Groctel → Dotfiles Manager

Groctel / Dotfiles Manager

Licence: gpl-2.0
A powerful POSIX shell dotfiles manager program

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to Dotfiles Manager

Chef
Chef Infra, a powerful automation platform that transforms infrastructure into code automating how infrastructure is configured, deployed and managed across any environment, at any scale
Stars: ✭ 6,766 (+39700%)
Mutual labels:  hacktoberfest
Jackson Module Kotlin
Module that adds support for serialization/deserialization of Kotlin (http://kotlinlang.org) classes and data classes.
Stars: ✭ 830 (+4782.35%)
Mutual labels:  hacktoberfest
Wwcode Hacktoberfest 2020
🌎 No intuito de colaborar e incentivar a participação de mais mulheres na comunidade open source , um pull request por vez, nós do Women Who Code Recife, criamos um projeto para participarmos desta causa incrível, e toda comunidade poder colaborar
Stars: ✭ 16 (-5.88%)
Mutual labels:  hacktoberfest
Guess
🔮 Libraries & tools for enabling Machine Learning driven user-experiences on the web
Stars: ✭ 6,762 (+39676.47%)
Mutual labels:  hacktoberfest
Js Interview Questions
❔❓❔ Notes from technical (javascript) interviews. Tasks and quiz for different topics to discuss on interview / check self skills in javascript
Stars: ✭ 830 (+4782.35%)
Mutual labels:  hacktoberfest
Pact Jvm
JVM version of Pact. Enables consumer driven contract testing, providing a mock service and DSL for the consumer project, and interaction playback and verification for the service provider project.
Stars: ✭ 833 (+4800%)
Mutual labels:  hacktoberfest
Node Influx
📈 The InfluxDB Client for Node.js and Browsers
Stars: ✭ 820 (+4723.53%)
Mutual labels:  hacktoberfest
Gcommit
GCommit is a git-plugin that eases pair-programming commits
Stars: ✭ 16 (-5.88%)
Mutual labels:  hacktoberfest
Apispec
A pluggable API specification generator. Currently supports the OpenAPI Specification (f.k.a. the Swagger specification)..
Stars: ✭ 831 (+4788.24%)
Mutual labels:  hacktoberfest
Abapgit
Git client for ABAP
Stars: ✭ 835 (+4811.76%)
Mutual labels:  hacktoberfest
Sfml
Simple and Fast Multimedia Library
Stars: ✭ 7,316 (+42935.29%)
Mutual labels:  hacktoberfest
Automatic Ripping Machine
Automatic Ripping Machine (ARM) Scripts
Stars: ✭ 827 (+4764.71%)
Mutual labels:  hacktoberfest
Azure Sdk For Java
This repository is for active development of the Azure SDK for Java. For consumers of the SDK we recommend visiting our public developer docs at https://docs.microsoft.com/en-us/java/azure/ or our versioned developer docs at https://azure.github.io/azure-sdk-for-java.
Stars: ✭ 834 (+4805.88%)
Mutual labels:  hacktoberfest
Ciphey
⚡ Automatically decrypt encryptions without knowing the key or cipher, decode encodings, and crack hashes ⚡
Stars: ✭ 9,116 (+53523.53%)
Mutual labels:  hacktoberfest
Wakame
Haskell library of row polymorphic record manipulator
Stars: ✭ 16 (-5.88%)
Mutual labels:  hacktoberfest
Aws Toolkit Vscode
AWS Toolkit for Visual Studio Code, an extension for working with AWS services including AWS Lambda.
Stars: ✭ 823 (+4741.18%)
Mutual labels:  hacktoberfest
Django Rest Framework Gis
Geographic add-ons for Django REST Framework. Maintained by the OpenWISP Project.
Stars: ✭ 830 (+4782.35%)
Mutual labels:  hacktoberfest
Web
React web interface for the OpenDota platform
Stars: ✭ 889 (+5129.41%)
Mutual labels:  hacktoberfest
Vibranium Dark Mode
This awesome Progressive Web App was created for Developer Student Clubs in Sub Saharan Africa as a profile and a platform to showcase what they're upto in events, outreach to local businesses and showcases and most importantly their success stories to the world.
Stars: ✭ 16 (-5.88%)
Mutual labels:  hacktoberfest
Liquidctl
Cross-platform CLI and Python drivers for AIO liquid coolers and other devices
Stars: ✭ 830 (+4782.35%)
Mutual labels:  hacktoberfest

dotfiles-manager (Dotfiler)

A powerful POSIX shell dotfiles manager program

You can see it in action in my personal dotfiles repository.

Buy me a coffee

Installation

Run ./dotfiler.sh or copy it to your .local/bin or other directory in your $PATH. Feel free to remove the .sh extension. You may need to chmod +x q.

mkdir -p ~/.local/bin && cp dotfiler.sh ~/.local/bin/dotfiler

Usage

dotfiler.sh [-h] (-[dipu])+ [system-tags]

Operational arguments

  • -h, --help: Print a complete help text and exit.
  • -d, --deploy: Deploys dotfiles to the system.
  • -i, --install: Installs packages and configures the system.
  • -p, --pull: Copies dotfiles into the repository.
  • -u, --update: Updates the installed packages list.
  • -x, --extra: Install dotfiles' extra dependencies.

System tags

System tags are optional arguments that MUST NOT start with the dash - character. They're used to specify a system to work with. Example systems are laptop, desktop, shared-pc, sister, Groctel, etc. If no system was specified, Dotfiler will look for list files (explained below) with no system suffixes.

Filelist file:

Dotfiler needs a filelist file to keep track of the files in your system. This file should be named filelist by default or filelist-SYSTEM for an specific system, e.g. filelist-desktop. This file keeps track of your dotfiles using the following syntax:

  • Regular files: The path to the file from ~/.
  • Directories: The path to the file from ~/ terminated with /*.

For example, here are a regular file and a directory:

.config/i3/config
.local/share/fonts/*

Pkglist file:

Dotfiler keeps tracks of your installed packages in a pkglist file that follows the same naming conventions as the filelist file but does not need to be explicitly created by the user. To keep it simple, it only tracks the packages explicitly installed by the user.

Deplist file:

You can store some commands to be run by Dotfiler in a deplist file that follows the same naming conventions as the filelist and pkglist files. Commands are parsed line by line and must not contain linefeeds. For example, these are two valid lines containing commands:

curl -fLo $HOME/.antigen.zsh git.io/antigen
vim +`so $HOME/.vimrc` +PlugInstall +qa!

Argument order:

Arguments are stored in a list of operations and a list of systems. Dotfiler will run all operations in the order they were passed in all systems in the order they were passed. For example, the following call:

dotfiler.sh -p -u common laptop

Will run the following tasks:

  • pull common
  • pull laptop
  • update common
  • update laptop

CAVEATS:

This program only keeps track of your packages with pacman and yay on Arch (and derivates), apt on Debian (or derivates) or dnf on Red Hat (or derivates). Pull request the project to add support other managers.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].