rcm
yadm
Our great sponsors
rcm | yadm | |
---|---|---|
18 | 81 | |
3,059 | 4,708 | |
0.8% | - | |
2.4 | 2.4 | |
4 days ago | about 1 month ago | |
Perl | Python | |
BSD 3-clause "New" or "Revised" License | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
rcm
-
Fulfilling a reader's request for my “dot files”
I use https://github.com/thoughtbot/rcm, which works smoothly and includes support for host-specific files
-
Don't Let Messy Dotfiles Ruin Your Coding Life! Try dotstow and Simplify Your Workflow Today!
Prior to catching the Nix brainworms and switching to home-manager, I mostly used thoughtbot/rcm.
-
Automatic setup
Check out https://github.com/thoughtbot/rcm
-
Thoughts on chezmoi
currently I am managing my dotfiles with rcm (ran by ansible). This approach served me well over the years but recently I stumpled over chezmoi.
-
Ask HN: How do you sync your computers development configurations/environment?
I use a tool called rcm[0], which is essentially a set of shell scripts for managing symlinks from $HOME into $HOME/.dotfiles. $HOME/.dotfiles can then be a git repo.
Some notes:
1. rcm lets you decide make host-specific or host-agnostic dotfiles. For example, I can declare that I want a different `.ssh/config` file for each host, and rcm will figure out which `.ssh/config` to symlink based on the current machine's hostname.
2. The installation process is very simple. It's just shell scripts, so you don't have to have a compiler. Operating system packages exist for the common platforms, and there's also a convenient way to "build" from source using configure && make && make install. The from source option is particularly convenient if you need to change the installation prefix to a user-writable location on a multi-user machine.
3. I use SSH Agent Forwarding[1] to avoid needing to install private keys (either new keys or copies of existing keys) on all the hosts I manage. This lets me git push and pull to my dotfiles repo on all hosts.
4. Taking it a step further, some shell config I have is host-specific (e.g., certain PATH modifications I only want to apply on certain hosts). Rather than use the host-specific dotfile feature of rcm for the whole .bashrc, I factor my shell config files into multiple files, that I then source. One of these files is called `$HOME/.util/host.sh`, which is host specific. Again, rcm creates a symlink from this to the correct host-specific file automatically by hostname.
If you're curious to learn more about any of this, my dotfiles are public.[2]
[0] https://github.com/thoughtbot/rcm
[1] https://docs.github.com/en/developers/overview/using-ssh-age...
- Syncing dotfiles with git
-
Lmao "Thank you Linus"
rcm is essential if you use multiple machines.
-
What's the point of a "dotfiles" repository?
You already got a good amount of reasons from other comments. Just a sidenote: there are also dotfile managers that try to help with the mess. I personally use rcm ( https://github.com/thoughtbot/rcm ) as it has a Deb repo and is portable as it's written in bash. I recommend looking into it. I have all my dotfiles in place on a fresh install with 3-4 commands in the terminal.
-
First release of Hoard dotfile manager
Hoard is a program that backs up sparse files from across your filesystem into a single location and can later restore them. Some of you might know programs like this as "dotfile managers," like RCM and Chezmoi.
-
How do you manage your dotfiles?
I use rcm, which is made by the folks at Thoughtbot. It's dead-simple—it just creates symbolic links in place of files. I'd highly recommend it for a simple and quick approach.
yadm
-
Ask HN: What Underrated Open Source Project Deserves More Recognition?
Everyone hand-rolls their own dotfile management system, but YADM already does everything you need:
- Tell HN: My Favorite Tools
-
System settings that aren’t in System Settings
I wonder if the program i use to manage my dotfiles could help manage your scripts and extend your setup to all your desktops? Its called yadm (https://yadm.io/) it makes it so easy to have a laptop and a desktop or two.
-
Just got a new M2 Pro after my 2016 became outdated. What are your first steps to setting up a new computer?
If you haven’t already, this is the time to install a tool like yadm and get your computer configuration into version control. Your command-line tools can be managed by yadm directly, your system settings can mostly be managed with a yadm bootstrap script that runs things like defaults write, and the software you install can be managed with a Brewfile that the yadm bootstrap script uses to install software with Homebrew. Don’t manually download Xcode, use xcodes to do it.
-
System 76 Linux script to set up a new PC including the personal profile and prefered software installs
I personally use YADM. It's basically a git repo on my home folder, that only tracks what I explicitly set. And you can setup bootstraps to do what you said, install a bunch of stuff or make custom changes. In it's essence, it's a set of bash/sh files that are executed sequentially when you launch the yadm bootstrap command.
-
Git Aliases - My way of learning Git
I'm not yet a Git Wizard yet, you'll find me being very sloppy with my commits as I'm learning it. But you can see me editing my config files very frequently. To copy-paste from the website of yadm.io:
-
Setup a backup system if you haven’t done it yet
Checkout yadm or chezmoi. They work great.
-
The best way of tracking dotfiles I ever saw.
I currently use yadm and love it.
-
Dotfiles Management
I very recently put some effort into tidying up my dotfiles, and have a brief writeup at https://chatwithsysop.com/blog/2022/12/31/dotfiles-cleanup (none of this was done with the academic rigor required to withstand a deconstruction by HN, it is just a log of one person's experience with a weekend project).
I chose to use yadm (http://yadm.io) for no particular reasons beyond that I found it first, and it seemed reasonable. It's more just a wrapper around putting GIT_DIR elsewhere.
YADM[0] is another great tool for this very purpose which I've been using for years in combination with homebrew to setup any new (Mac) machine that I get and have everything from dotfiles to Applications installed in no time.
[0] https://yadm.io
What are some alternatives?
GNU Stow - GNU Stow - mirror of savannah git repository occasionally with more bleeding-edge branches
chezmoi - Manage your dotfiles across multiple diverse machines, securely.
Home Manager using Nix - Manage a user environment using Nix [maintainer=@rycee]
dotbot - A tool that bootstraps your dotfiles ⚡️
homesick - Your home directory is your castle. Don't leave your dotfiles behind.
Ansible - Ansible is a radically simple IT automation platform that makes your applications and systems easier to deploy and maintain. Automate everything from code deployment to network configuration to cloud management, in a language that approaches plain English, using SSH, with no agents to install on remote systems. https://docs.ansible.com.
git-submodules - Git Submodule alternative with equivalent features, but easier to use and maintain.
homeshick - git dotfiles synchronizer written in bash