dotfiles / dotfiles.github.com Goto Github PK
View Code? Open in Web Editor NEWYour unofficial guide to doing dotfiles on GitHub.
Home Page: http://dotfiles.github.io
License: MIT License
Your unofficial guide to doing dotfiles on GitHub.
Home Page: http://dotfiles.github.io
License: MIT License
Hi,
I'm developing shprofile that tries to facilitate shell profile configuration by allowing you to define several profiles for the same user and letting you switch between them.
This way, you can define your own variables, aliases and more (as defining your own dotfiles) for a specific profile. All profile's configuration is contained into a single directory that can then be versionned and shared with the community.
Could you please add it to the list?
Regards
Aurélien
https://github.com/ashishb/dotfiles/
It covers android development and reverse engineering on Mac and GNU/Linux which no other dotfiles currently seems to cover.
https://github.com/ashishb/dotfiles/blob/master/setup/setup_new_mac_machine.sh#L55
https://github.com/ashishb/dotfiles/blob/master/bashrc_includes/android_reverse_engineering_related_aliases.bash
We should create pages for well know file types (.vimrc, .ackrc, etc.) That describes the app that uses that file type and links to popular instances of that file on GitHub.
I've found this https://gitignore.io invaluable for creating .gitignore files. PR arriving shortly.
A bigger index of featured bootstraps, on its own page.
I noticed that there are some very old outstanding PRs on this repo. Would you guys like some help dealing with the backlog?
dotfiles.github.com/_data/utilities.yml
Line 157 in 11185af
Gray body text makes the page hard to read.
Some folks might be newish to dotfiles. How about a section covering dotfile basics or links out to blog posts that do? Could be helpful. Thanks.
As referenced here. Didn't see it on the page and though it would be good to add.
This seems to be a very popular resource (the first result on Google when searching "dotfiles"). That's pretty awesome!
I think in its current state, the page has grown to a size where it is tough to navigate. See related issues #186 and #207.
In my opinion, some content could be removed, and the content overall could be organized better so that it is easier to navigate. I'm suggesting the following concrete changes:
I'd propose the following topic order and hierarchy. (The exact wording of the topic names can be tweaked.)
For some of the topics above, it's clear how the existing topics map over. I think this order better reflects the order in which new users should navigate the material.
In the hierarchy above, I've split the current "go further with a framework" into two top-level headings, separating the general-purpose utilities and following with the tool-specific stuff for shells/editors/etc.
I've also split "get started with a bootstrap" into two categories. Right now, the list contains various users' dotfiles (e.g. Abdullah's dotfiles are the first link on the entire page), most of which are not necessarily meant for others to build on top of. On the other hand, things like dotphiles look like they're actually meant as a bootstrap. I think the former can go into a "inspiration" section, whereas the bootstrap repositories can stay in a dedicated bootstrap section. The current bootstrap list also contains things like Awesome dotfiles, which is not a bootstrap repository; I propose things like this are moved to the Miscellaneous section. It also contains things like bashdot, which should be moved to the general-purpose dotfiles utilities section.
The miscellaneous section can contain everything that doesn't fit in any other category. This includes the current "tips and tricks" style content, like "don't ignore your .gitignore" and "embrace submodules / subtrees".
I think the site is kind of intimidating and hard to navigate. I'd be in favor of splitting major topics across pages, and then adding some sort of navigation to go between the pages.
With content split across pages, the homepage can have a brief text that introduces the user to the site and summarizes the idea of dotfiles management.
It might be nice to introduce some sort of notability criteria, e.g. as Homebrew does. I think their current criteria is (>= 20 forks OR >= 20 watchers OR >= 50 stars), but we could come up with our own.
This will help cut down on the overwhelming quantity of content on the site, and help navigate users to high quality projects rather than leaving it to chance which of the 1000 links they click on.
Stars/watchers/forks are a very rough proxy for the quality of a project, but I can't think of better alternatives.
Even with a notability criteria, I'd say it's worth ordering content based on a better metric than alphabetical order. Not to pick on this person in particular, but currently Abdullah's dotfiles (6 stars) are currently the first link on the page. Arguably, this is a less useful resource than e.g. Zach Holman's dotfiles (5.6k stars), which are currently buried deep in the "get started with a bootstrap section".
Sorting each of the topics based on stars helps solve this problem. Again, stars aren't the best metric, but I don't think there's a great alternative (and stars are better than alphabetical order!).
Another metric we could consider is number of users, but that might be hard to measure for certain frameworks. E.g. measuring it for Pathogen might be easy by analyzing public dotfiles repos on GitHub (because you can tell from vimrc contents), but measuring it for a program like stow might be hard, because you install the program on your machine to manage dotfiles, and it can't necessarily be deduced that someone's using stow from the contents of their dotfiles repo.
What are people's thoughts on this proposed reorganization? (cc @bedge @sparr, since they opened similar issues) And what do the maintainers think of this? (cc @unixorn)
If people are in favor of these changes, I'd be happy to do the implementation work.
I just came across http://freshshell.com and started moving my dotfiles to that. It's awesomely easy to use, extensible and doesn't require any predefined directory structure of any kind. As long as you have a ~/.freshrc file (or freshrc in ~/.dotfiles/) and freshshell will keep everything up to date, symlinked, loaded, whatever you need.
Update contributing guidelines to ask PRs be targeted at master.
Hello GitHub,
chef_dotfile_manager_tutorial is a complete bootstrap for dotfiles that allows you to use Chef and Ruby to manage your dotfiles. This includes Chef's excellent package and template tools.
github-pages
fails to get installed on a modern version of Ruby (running on a fresh Ubuntu 17.04 system).Gemfile.lock
should be updated to the latest versions of the dependencies.bundle install
command fails because Gemfile.lock
is depending on ancient version of github-pages
gem (33 - January 28, 2015 (5.5 KB)
). That fails to get installed on a recent version of Ruby (2.4.1).
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
current directory: /home/d2s/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/json-1.8.2/ext/json/ext/generator
/home/d2s/.rbenv/versions/2.4.1/bin/ruby -r ./siteconf20170823-25526-5f87r.rb extconf.rb
creating Makefile
current directory: /home/d2s/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/json-1.8.2/ext/json/ext/generator
make "DESTDIR=" clean
current directory: /home/d2s/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/json-1.8.2/ext/json/ext/generator
make "DESTDIR="
compiling generator.c
generator.c: In function ‘generate_json’:
generator.c:867:25: error: ‘rb_cFixnum’ undeclared (first use in this function)
} else if (klass == rb_cFixnum) {
^~~~~~~~~~
generator.c:867:25: note: each undeclared identifier is reported only once for each function it appears in
generator.c:869:25: error: ‘rb_cBignum’ undeclared (first use in this function)
} else if (klass == rb_cBignum) {
^~~~~~~~~~
generator.c: At top level:
cc1: warning: unrecognized command line option ‘-Wno-self-assign’
cc1: warning: unrecognized command line option ‘-Wno-constant-logical-operand’
cc1: warning: unrecognized command line option ‘-Wno-parentheses-equality’
Makefile:241: recipe for target 'generator.o' failed
make: *** [generator.o] Error 1
make failed, exit code 2
Gem files will remain installed in /home/d2s/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/gems/json-1.8.2 for inspection.
Results logged to
/home/d2s/.rbenv/versions/2.4.1/lib/ruby/gems/2.4.0/extensions/x86_64-linux/2.4.0-static/json-1.8.2/gem_make.out
An error occurred while installing json (1.8.2), and Bundler cannot continue.
Make sure that `gem install json -v '1.8.2'` succeeds before bundling.
In Gemfile:
github-pages was resolved to 33, which depends on
jekyll-mentions was resolved to 0.2.1, which depends on
html-pipeline was resolved to 1.9.0, which depends on
activesupport was resolved to 4.2.1, which depends on
json
The right side of the page has gotten very long, and the left side has some open space. It would be nice if the left side had a small table of contents linking to anchors for the headings on the right.
It is a package manager for dotfiles.
Hi, I'm curious if there are best practices for the login .face
dotfile, the contact info for your user info that is often available if a person finds your computer, saved background screenshots (or at least the setting to point your screenshots to a dir), and audio settings? Thanks. This was a useful repo to learn from.
https://github.com/RichiH/vcsh is built exactly for maintaining your dotfiles in $HOME (or somewhere else) without the hassle of symlinking files around.
Thanks,
Richard
@pengwynn - I'd like to switch from travis to either circleCI or GitHub actions, but I need to be an owner to enable that.
It's old and not as popular as sharing on GitHub, but still has a wealth of information.
A bigger index of frameworks, on its own page.
Right now, star counts are updated manually by script/update-star-count.py
. It would be nice if we could make this automatic, e.g. once a month.
It would be straightforward to write a bot to do this; where could we host such a bot?
(moved here from #274)
After following the setup instructions I'm totally unable to preview the site.
I'm using Mac OS X 10.9.5, my ruby version is 1.9.3-p547 installed with rbenv
.
With User/Organization pages the master branch is always the one that is served as the site, so you can safely make the source branch the default branch.
This would be convenient since it would make that the default branch shown when someone browses to the code on github, and it would also make pull requests automatically target it.
I wanted to mention r/dotfiles somewhere, but I wasn't sure which page would be best. It's not a framework or utility, just a small group posting different things.
Yes, it's great, fantastic stuff, but the one thing I'm having issues with is digesting it all.
Not complaining, just suggesting.
Be great to see some stats on the main page for stuff like:
Here's another solution to the problem of managing your dotfiles in multiple, separate git repositories: https://github.com/capr/multigit -- It's a more general solution, it's actually used as a package manager for a Lua module distribution called luapower.
I've been working on a utility for managing dotfiles on OSX.
I think it would be beneficial to include it in the list of utilities on this page: https://github.com/alichtman/shallow-backup
I can't find any exemple of dotfiles managed with ansible
Here it is : https://github.com/eoli3n/dotfiles
Ruby gem I wrote that lets you define how your complete configuration should be installed in a single YAML file which you check into VCS. Supports files, entire directories, and creating symlinks. Package requirements and host specific configuration possible.
https://github.com/razor-x/config_curator
Considered stable at this point, although more features are planned. The upcomming v1.0.0 will add smart uninstall support. Feedback welcome.
Working examples:
https://github.com/rxrc/dotfiles
https://github.com/rxrc/archrc
This is my take on dotfiles https://github.com/kairichard/lace. It comes a gem and uses yaml as configuration markup. So basically you run lace fetch namespace/user
and it fetches that from github and does whatever is configured the .lace.yml
. See https://github.com/kairichard/dotfiles/blob/master/.lace.yml for a full example.
found this in my rss feed this week
https://medium.com/@webprolific/getting-started-with-dotfiles-43c3602fd789
It'd be nice to have a primer on understanding how dotfiles work in general and its internals. It'd make this guide more comprehensive.
I was trying to host my dotfiles (.bashrc specially) on github pages so that I could download it directly and run it wherever I am. But it appears that github pages ignore the dotfiles and they appear 404.
I could always just give them a name before the dot but...
Good day,
This is not an issue, but maybe it will be useful for someone else as well. I am looking for commands to do the following changes:
I would appreciate any help!
I've put together a script, git-dot
that wraps git
and git-crypt
, allowing in-place dotfile management without symlinks that allows sensitive files to be encrypted.
I'm using it myself. It's had limited testing but just mentioning it in case anyone would like to try it. Feedback welcome.
Official homepage of the project
It is a general-purpose, Nix-based personal profile management.
Among many other things, it can manage any $HOME
files via home.file
module.
https://pypi.org/project/yadoma/
Would you accept this project into the list?
There has been a lot of work done on GitHub pages since this was originally set up. I could take a crack at making it work without the pre-compile stage.
Mackup is another utility which can help manage dotfiles between different Mac and Linux machines and seems to have a base of users:
Hi,
the font used in http://dotfiles.github.com/ is very thin and my eyes find it hard to read.
Could you change the font into something thicker?
In the meanwhile, I'll change the font my browser displays.
Homer is here: https://github.com/igr/homer
It's a shell script that uses a lesser-known feature of git, and allows you to store dotfiles (or anything that belongs to root) on e.g. github private repo.
It's cool as it treats files and folders differently and does not use any symlinks.
Hi,
Could you add a link to
https://github.com/dotphiles/dotphiles - which is a forkable framework of dotfiles
Uses...
https://github.com/dotphiles/dotsync - sync your dotfiles around multiple machines.
https://github.com/dotphiles/dotsync - zsh framework
https://github.com/dotphiles/dotvim - vim framework
Research:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.