{"id":19008030,"url":"https://github.com/teleivo/puppet-dotfiles","last_synced_at":"2026-04-23T03:30:17.128Z","repository":{"id":73330102,"uuid":"46276649","full_name":"teleivo/puppet-dotfiles","owner":"teleivo","description":"Configures dotfiles via a .dotfiles stored in a vcs repository.","archived":false,"fork":false,"pushed_at":"2015-11-30T15:33:23.000Z","size":11,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-01T20:26:51.272Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/teleivo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-11-16T13:36:26.000Z","updated_at":"2015-11-16T13:36:46.000Z","dependencies_parsed_at":"2023-03-11T15:12:37.862Z","dependency_job_id":null,"html_url":"https://github.com/teleivo/puppet-dotfiles","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teleivo%2Fpuppet-dotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teleivo%2Fpuppet-dotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teleivo%2Fpuppet-dotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teleivo%2Fpuppet-dotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/teleivo","download_url":"https://codeload.github.com/teleivo/puppet-dotfiles/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240035595,"owners_count":19737601,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-08T18:40:16.949Z","updated_at":"2026-04-23T03:30:17.097Z","avatar_url":"https://github.com/teleivo.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# puppet-dotfiles\n\n[![Build Status](https://secure.travis-ci.org/teleivo/puppet-dotfiles.png?branch=master)](https://travis-ci.org/teleivo/puppet-dotfiles)\n\n#### Table of Contents\n\n1. [Module Description - What the module does and why it is useful](#module-description)\n2. [Setup - The basics of getting started with dotfiles](#setup)\n    * [Beginning with dotfiles](#beginning-with-dotfiles)\n3. [Reference - An under-the-hood peek at what the module is doing and how](#reference)\n    * [Defines](#defines)\n4. [Limitations - OS compatibility, etc.](#limitations)\n5. [Development](#development)\n\n## Module Description\n\nThe dotfiles module configures dotfiles via a .dotfiles directory stored in a vcs repository.\n\n## Setup\n\n### Beginning with dotfiles\n\nThe quickest way to get dotfiles set up is to apply a manifest like this one:\n\n```puppet\npackage { 'git': }\n\nuser { 'teleivo':\n  ensure     =\u003e present,\n  managehome =\u003e true,\n  home       =\u003e '/home/teleivo',\n}\n\n::dotfiles { '/home/teleivo':\n  user    =\u003e 'teleivo',\n  require =\u003e [\n    Package['git'],\n    User['teleivo'],\n  ]\n}\n```\n\n## Reference\n\n### Defines\n\n#### dotfiles\n~~~\ndotfiles { '/home/teleivo':\n  user      =\u003e 'teleivo',\n  require   =\u003e User['teleivo'],\n}\n~~~\n##### `user`\n\n*Required.* Specifies the user as which .dotfiles directory is cloned.\nValid options: string.\n\n##### `user_home`\n\nThe user home path where .dotfiles directory is cloned.\nValid options: string containing an absolute path.\nDefaults to $title.\n\n##### `create_bash_aliases`\n\nSpecifies whether symlink '$user_home/.bash_aliases -\u003e $user_home/.dotfiles/bash_aliases' is created.\nValid options: 'true', 'false'.\nDefaults to 'false'.\n\n##### `create_gitconfig`\n\nSpecifies whether symlink '$user_home/.gitconfig -\u003e $user_home/.dotfiles/gitconfig' is created.\nValid options: 'true', 'false'.\nDefaults to 'false'.\n\n##### `manage_gitprompt`\n\nSpecifies whether symlink '$user_home/.bashrc_git -\u003e $user_home/.dotfiles/bashrc_git' is created and $user_home/.bashrc_git is sourced in $user_home/.bashrc.\nValid options: 'true', 'false'.\nDefaults to 'false'.\n\n## Limitations\n\nThis module only deploys a .dotfiles directory from repository [teleivo/dotfiles](https://github.com/teleivo/dotfiles).  \nThis module is currently only tested on Ubuntu 14.04 64bit.  \n\n## Development\n\nPlease feel free to open pull requests!\n\n### Running tests\nThis project contains tests for [rspec-puppet](http://rspec-puppet.com/) to\nverify functionality.\n\nTo install all dependencies for the testing environment:\n```bash\nsudo gem install bundler\nbundle install\n```\n\nTo run tests, lint and syntax checks once:\n```bash\nbundle exec rake test\n```\n\nTo run the tests on any change of puppet files in the manifests folder:\n```bash\nbundle exec guard\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteleivo%2Fpuppet-dotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fteleivo%2Fpuppet-dotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteleivo%2Fpuppet-dotfiles/lists"}