{"id":22870284,"url":"https://github.com/berquerant/pdotfiles","last_synced_at":"2026-01-08T06:51:44.347Z","repository":{"id":81890026,"uuid":"431132301","full_name":"berquerant/pdotfiles","owner":"berquerant","description":null,"archived":false,"fork":false,"pushed_at":"2024-05-28T11:15:39.000Z","size":304,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-05-29T04:55:26.094Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Emacs Lisp","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/berquerant.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-11-23T14:28:52.000Z","updated_at":"2024-05-28T11:15:42.000Z","dependencies_parsed_at":"2023-10-16T23:48:10.822Z","dependency_job_id":"459229d0-5238-4314-b729-fac7add86399","html_url":"https://github.com/berquerant/pdotfiles","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/berquerant%2Fpdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/berquerant%2Fpdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/berquerant%2Fpdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/berquerant%2Fpdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/berquerant","download_url":"https://codeload.github.com/berquerant/pdotfiles/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246460284,"owners_count":20781080,"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-12-13T13:14:24.124Z","updated_at":"2026-01-08T06:51:44.335Z","avatar_url":"https://github.com/berquerant.png","language":"Emacs Lisp","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dotfiles for macOS\n\n```shell\ngit clone https://github.com/berquerant/pdotfiles \"${HOME}/src/github.com/berquerant/pdotfiles\"\ncd \"${HOME}/src/github.com/berquerant/pdotfiles\"\n./xc init\nZDOTDIR=\"$PWD\" zsh -i\n./xc deploy \"\"\ngit config --global user.name \"$USERNAME\"\ngit config --global user.email \"$USEREMAIL\"\n./xc git\n./xc emacs\n./xc install\n```\n\n## Install one by one\n\n``` shell\n./install ruby\n```\n\nInstall libraries.\n\n``` shell\n./install r ruby\n```\n\nInstall languages and libraries.\n\n``` shell\n./install t ruby\n```\n\n### targets and requirements\n\nThe names listed in the files in [targets](targets) can be specified as [./install](install) argument.\n\nThe file names in [requirements](targets) can be specified as [./install r](install) argument.\n\nLines in target and requirements files can be commented out with leading '#'.\n\n## microdotfiles\n\nFor minimal setup, use [microdotfiles](https://github.com/berquerant/microdotfiles).\n\n## Uninstall\n\n``` shell\n./uninstall ruby\n```\n\n# Tasks\n\n## init\n\nInstall tools using homebrew.\n\ninteractive: true\n\n``` shell\ngit submodule update --init\nbin/install-brew.sh\n```\n\n## install-via-git\n\nInstall tools to install by docker.\n\n``` shell\nbin/install-via-git-go.sh\n```\n\n## deploy\n\nDeploy dotfiles configurations.\n\nInputs: DRYRUN\ninteractive: true\n\n``` shell\nif ! grep -q 'EDITOR_EMACS' \"${HOME}/.zprofile\" ; then\n  echo 'export EDITOR_EMACS=lmacs' \u003e\u003e \"${HOME}/.zprofile\"\nfi\nDRY=$DRYRUN make -C sh-minimal-init\nbin/install-dotfiles.sh $DRYRUN\n```\n\n## clean\n\nUninstall dotfiles configurations.\n\nInputs: DRYRUN\ninteractive: true\n\n``` shell\nDRY=$DRYRUN make -C sh-minimal-init uninstall\nbin/clean-dotfiles.sh $DRYRUN\n```\n\n## gitconfig\n\nGenerate .gitconfig.\n\ninteractive: true\n\n``` shell\nmake -C sh-minimal-init gitconfig\n```\n\n## git\n\nInstall git configurations.\n\ninteractive: true\nRequires: gitconfig, emacs-light\n\n## emacs\n\nInstall Emacs.\n\ninteractive: true\nRequires: fonts, emacs-light, emacs-gui, emacs-cui\n\n## fonts\n\nInstall fonts.\n\ninteractive: true\n\n``` shell\nbin/install-fonts.sh\n```\n\n## emacs-light\n\nInstall Emacs with minimal configurations.\n\n``` shell\nln -snvf \"${DOTFILES_ROOT}/bin/emacs-light.sh\" /usr/local/bin/lmacs\nln -snvf \"${DOTFILES_ROOT}/bin/emacs-less.sh\" /usr/local/bin/umacs\n```\n\n## emacs-gui\n\nInstall GUI Emacs.\n\ninteractive: true\n\n``` shell\n./bin/install-emacs.sh\n./install emacs-gui\n```\n\n## emacs-cui\n\nInstall CUI Emacs.\n\ninteractive: true\n\n``` shell\nEMACSD=\"$CMACSD\" ./bin/install-emacs.sh\n./install emacs-cui\n```\n\n## update-emacs\n\nUpdate Emacs.\n\ninteractive: true\nRequires: update-emacs-gui, update-emacs-cui\n\n## update-emacs-gui\n\nUpdate GUI Emacs.\n\ninteractive: true\n\n``` shell\n./install emacs-gui --update\n```\n\n## update-emacs-cui\n\nUpdate CUI Emacs.\n\ninteractive: true\n\n``` shell\n./install emacs-cui --update\n```\n\n## install\n\nInstall tools except Emacs.\n\ninteractive: true\nRequires: install-via-git, sub, util\n\n## update\n\nUpdate tools except Emacs.\n\ninteractive: true\nRequires: update-submodules, install-via-git, update-brew, update-sub, update-util\n\n## retry\n\nRetry to install tools except Emacs.\n\ninteractive: true\nRequires: install-via-git, retry-sub, retry-util\n\n## cycle\n\ninteractive: true\nRequires: git, install-via-git, update-brew, sub, util\n\n## recycle\n\ninteractive: true\nRequires: git, install-via-git, update-brew, retry-sub, retry-util\n\n## requirements\n\nInstall all [requirements](requirements).\n\ninteractive: true\n\n``` shell\nbin/install-requirements.sh all\n```\n\n## update-submodules\n\nUpdate git submodules.\n\ninteractive: true\n\n``` shell\ngit submodule update --remote\n```\n\n## update-brew\n\nUpdate brew and formulae.\n\ninteractive: true\nEnv: INSTALL_BREW_NO_INIT=1\n\n``` shell\nbin/install-brew.sh\n```\n\n## renovate.json\n\nGenerate [renovate.json](renovate.json) from [renovate.yml](renovate.yml).\n\n``` shell\nyq -o json renovate.yml \u003e renovate.json\n```\n\n## ivg-gen\n\nGenerate [renovate.lock](ivg/renovate.lock).\n\n``` shell\nbin/renovate-ivg.sh gen\n```\n\n## ivg-lock\n\nApply [renovate.lock](ivg/renovate.lock).\n\n``` shell\nbin/renovate-ivg.sh lock\n```\n\n## emacs-renovate-gen\n\nAfter `straight-freeze-versions`, generate [renovate.lock](.emacs.d/renovate.lock).\n\n``` shell\nbin/emacs-renovate.sh gen\n```\n\n## emacs-straight-lock\n\nApply [renovate.lock](.emacs.d/renovate.lock) to [straight-default.el](.emacs.d/straight-default.el).\n\n``` shell\nbin/emacs-renovate.sh lock -c\n```\n\nthen, `straight-thaw-versions`.\n\n## emacs-clean\n\ninteractive: true\nRequires: emacs-clean-cache, emacs-clean-straight\n\n## emacs-clean-cache\n\n``` shell\nbin/clean-emacs.sh cache\n```\n\n## emacs-clean-straight\n\n``` shell\nbin/clean-emacs.sh straight\n```\n\n## rust\n\nInstall rust.\n\n``` shell\nif which rustup \u003e /dev/null ; then\n  curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y\nelse\n  rustup self update\nfi\n./install r rust\n```\n\n## uninstall-rust\n\nUninstall rust.\n\n``` shell\nrustup self uninstall -y\n```\n\n## sub\n\nInstall sub dependencies.\n\ninteractive: true\nRequires: rust\n\n``` shell\nbin/install-target-bulk.sh \u003c targets/sub\n```\n\n## update-sub\n\nInstall sub dependencies.\n\ninteractive: true\nRequires: rust, ivg-lock\n\n``` shell\n# bin/install-target-bulk.sh --update \u003c targets/sub\nbin/install-target-bulk.sh --retry \u003c targets/sub\n```\n\n## retry-sub\n\nInstall sub dependencies.\n\ninteractive: true\nRequires: rust\n\n``` shell\nbin/install-target-bulk.sh --retry \u003c targets/sub\n```\n\n## util\n\nInstall util dependencies.\n\ninteractive: true\nRequires: util-tools\n\n``` shell\nbin/install-via-git-bulk.sh \u003c targets/util\n```\n\n## update-util\n\nInstall util dependencies.\n\ninteractive: true\nRequires: util-tools, ivg-lock\n\n``` shell\n# bin/install-via-git-bulk.sh --update \u003c targets/util\nbin/install-via-git-bulk.sh --retry \u003c targets/util\n```\n\n## retry-util\n\nInstall util dependencies.\n\ninteractive: true\nRequires: util-tools\n\n``` shell\nbin/install-via-git-bulk.sh --retry \u003c targets/util\n```\n\n## util-tools\n\nRequires: awkfmt, textlinter, golangci-lint, uv, ip2bin, semv, emacs-straight-renovate, rnv, json2dot\n\n## json2dot\n\nInstall [json2dot](https://github.com/berquerant/json2dot).\n\n``` shell\npip install git+https://github.com/berquerant/json2dot.git@${JSON2DOT_VERSION}\n```\n\n## rnv\n\nInstall [rnv](https://github.com/berquerant/rnv).\n\n``` shell\ncargo install --git https://github.com/berquerant/rnv --tag ${RNV_VERSION}\n```\n\n## emacs-straight-renovate\n\nInstall [emacs-straight-renovate](https://github.com/berquerant/emacs-straight-renovate).\n\n``` shell\npip install git+https://github.com/berquerant/emacs-straight-renovate.git@${EMACS_STRAIGHT_RENOVATE_VERSION}\n```\n\n## semv\n\nInstall [semv](https://github.com/berquerant/semv).\n\n``` shell\ncargo install --git https://github.com/berquerant/semv --tag ${SEMV_VERSION}\n```\n\n## ip2bin\n\nInstall [ip2bin](https://github.com/berquerant/ip2bin-rust).\n\n``` shell\ncargo install --git https://github.com/berquerant/ip2bin-rust --tag ${IP2BIN_VERSION}\n```\n\n## uv\n\nInstall [uv](https://github.com/astral-sh/uv).\n\n``` shell\ncurl -LsSf https://astral.sh/uv/${UV_VERSION}/install.sh | sh\n```\n\n## golangci-lint\n\nVerify [golangci-lint](https://github.com/golangci/golangci-lint).\n\n``` shell\ngolangci-lint config verify -v\nln -snvf \"${DOTFILES_ROOT}/bin/flycheck-golangci-lint.sh\" /usr/local/bin/flycheck-golangci-lint.sh\n```\n\n## textlinter\n\nInstall [textlint.sh](bin/textlint.sh).\n\n``` shell\nln -snvf \"${DOTFILES_ROOT}/bin/textlint.sh\" /usr/local/bin/textlinter\n```\n\n## awkfmt\n\nInstall awkfmt.\n\n``` shell\nln -snvf \"${DOTFILES_ROOT}/bin/awkfmt.sh\" /usr/local/bin/awkfmt\n```\n\n## other\n\nInstall other dependencies.\n\ninteractive: true\n\n``` shell\nbin/install-via-git-bulk.sh \u003c targets/other\n```\n\n## update-other\n\nInstall other dependencies.\n\ninteractive: true\n\n``` shell\nbin/install-via-git-bulk.sh --update \u003c targets/other\n```\n\n## retry-other\n\nInstall other dependencies.\n\ninteractive: true\n\n``` shell\nbin/install-via-git-bulk.sh --retry \u003c targets/other\n```\n\n## additional\n\nInstall additional dependencies.\n\ninteractive: true\nRequires: additional-tools\n\n``` shell\nbin/install-via-git-bulk.sh \u003c targets/additional\n```\n\n## update-additional\n\nInstall additional dependencies.\n\ninteractive: true\nRequires: additional-tools\n\n``` shell\nbin/install-via-git-bulk.sh --update \u003c targets/additional\n```\n\n## retry-additional\n\nInstall additional dependencies.\n\ninteractive: true\nRequires: additional-tools\n\n``` shell\nbin/install-via-git-bulk.sh --retry \u003c targets/additional\n```\n\n## additional-tools\n\nRequires: metafind, local-jukebox\n\n## metafind\n\nInstall [metafind](https://github.com/berquerant/metafind).\n\n``` shell\ngo install \"github.com/berquerant/metafind/cmd/mf@${METAFIND_VERSION}\"\n```\n\n## local-jukebox\n\nInstall [local-jukebox](https://github.com/berquerant/local-jukebox).\n\n``` shell\ngo install \"github.com/berquerant/local-jukebox/cmd/jukebox@${LOCAL_JUKEBOX_VERSION}\"\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fberquerant%2Fpdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fberquerant%2Fpdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fberquerant%2Fpdotfiles/lists"}