{"id":17645549,"url":"https://github.com/sgaunet/conf-linux","last_synced_at":"2025-05-07T05:06:37.321Z","repository":{"id":41933630,"uuid":"305823890","full_name":"sgaunet/conf-linux","owner":"sgaunet","description":"collection of ansible role to configure my Linux account for a new PC (debian based)","archived":false,"fork":false,"pushed_at":"2025-05-04T18:53:14.000Z","size":927,"stargazers_count":2,"open_issues_count":3,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-07T05:06:30.935Z","etag":null,"topics":["ansible","configuration","devops","fedora","linux","tooling","tools","ubuntu"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sgaunet.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-10-20T20:19:01.000Z","updated_at":"2025-05-04T18:53:16.000Z","dependencies_parsed_at":"2024-02-12T17:00:20.810Z","dependency_job_id":"30a821b3-d882-484d-9e3e-957f66275849","html_url":"https://github.com/sgaunet/conf-linux","commit_stats":null,"previous_names":[],"tags_count":27,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sgaunet%2Fconf-linux","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sgaunet%2Fconf-linux/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sgaunet%2Fconf-linux/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sgaunet%2Fconf-linux/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sgaunet","download_url":"https://codeload.github.com/sgaunet/conf-linux/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252817010,"owners_count":21808705,"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":["ansible","configuration","devops","fedora","linux","tooling","tools","ubuntu"],"created_at":"2024-10-23T10:57:12.696Z","updated_at":"2025-05-07T05:06:37.314Z","avatar_url":"https://github.com/sgaunet.png","language":"Python","readme":"# conf-linux\n\nThat's a collection of ansible role to configure my Linux account for a new PC (debian based). That's far away from perfection but that's a start.\n\n## Requirements\n\n### Ubuntu\n\n```bash\n# clone the project\ngit clone git@github.com:sgaunet/conf-linux.git\n# Install dependencies\nsudo apt install libffi-dev\nsudo apt-get install python-dev-is-python3\nsudo apt install build-essential\nsudo apt install python3-jmespath\n# create a python virtual envs\npython3 -m venv   venv                                  # create python virutal environment. Do it once\nsource venv/bin/activate                                # set your virtual environment  (set it always before launch commands on this project)\npip install -r requirements.txt                         # install requirements in your virtual env\nansible-galaxy collection install -r requirements.yml   # install galaxy collections\n```\n\n### Red Hat\n\n```bash\n# clone the project\ngit clone git@github.com:sgaunet/conf-linux.git\nsudo dnf install python3-jmespath python3-libdnf5 gcc\n# create a python virtual envs\npython3 -m venv   venv                                  # create python virutal environment. Do it once\nsource venv/bin/activate                                # set your virtual environment  (set it always before launch commands on this project)\npip install -r requirements.txt                         # install requirements in your virtual env\nansible-galaxy collection install -r requirements.yml   # install galaxy collections\n```\n\n## Execution\n\n```bash\ncd conf-linux/src\n\u003cedit\u003e installation.yml\n./go.sh\n```\n\n## Roles\n\n### kube-ps1\n\nTo get a beautiful prompt (for bash or zsh)\n\n![prompt](img/prompt.png)\n\n### And\n\n* common\n    * Install common softwares cifs-utils tmux git git-crypt gpg docker jq unzip\n    * Install software-properties-common apt-transport-https wget\n\nFor AWS :\n\n* [eksctl](https://eksctl.io/)\n* [awscli v2](https://github.com/aws/aws-cli/)\n* [ekspodlogs](https://github.com/sgaunet/ekspodlogs)\n\nFor kubernetes:\n\n* [krew](https://krew.sigs.k8s.io/)\n* [kustomize](https://github.com/kubernetes-sigs/kustomize)\n* [helm v3](https://helm.sh/docs/intro/install/)\n* [helm-docs](https://github.com/norwoodj/helm-docs)\n* [helmfile](https://github.com/helmfile/helmfile)\n* [kubectl-dashboard](https://github.com/bouk/kubectl-dashboard)\n* [k9s](https://k9scli.io/)\n* [kubectl](https://kubernetes.io/releases/download/)\n* alias for kubectl (k=kubectl + bash completion/zsh completion)\n* [kubectx/kubens](https://github.com/ahmetb/kubectx/)\n* [stern](https://github.com/stern/stern)\n* [popeye](https://github.com/derailed/popeye)\n* [kfilt](https://github.com/ryane/kfilt)\n* [kube-capacity](https://github.com/robscott/kube-capacity)\n* [kube-linter](https://github.com/stackrox/kube-linter)\n* [kconf](https://github.com/particledecay/kconf)\n* [kubectl-ice](https://github.com/NimbleArchitect/kubectl-ice)\n* [kubefwd](https://github.com/txn2/kubefwd)\n* [kubent (kube-no-trouble)](https://github.com/doitintl/kube-no-trouble)\n* [kluctl](https://github.com/kluctl/kluctl)\n* [kubescape](https://github.com/kubescape/kubescape)\n* [kubeshark](https://github.com/kubeshark/kubeshark)\n* [kubeval](https://github.com/instrumenta/kubeval)\n* [kor](https://github.com/yonahd/kor)\n* [helmchart-helper](https://github.com/sgaunet/helmchart-helper)\n* [vals](https://github.com/helmfile/vals)\n* [kubecm](https://github.com/sunny0826/kubecm)\n* [kubevpn](https://www.kubevpn.cn/)\n\nFor markdown :\n\n* [mdtohtml](https://github.com/sgaunet/mdtohtml)\n\nFor Docker :\n\n* [hadolint](https://github.com/hadolint/hadolint)\n* [grype](https://github.com/anchore/grype)\n* [dive](https://github.com/wagoodman/dive)\n* [CLIs of go-containerregistry](https://github.com/google/go-containerregistry)\n* [crane](https://github.com/google/go-containerregistry/blob/main/cmd/crane/doc/crane.md)\n* [trivy](https://github.com/aquasecurity/trivy)\n\nVM :\n\n* [packer](https://www.packer.io/)\n* [vagrant](https://www.vagrantup.com/downloads)\n\nLoad tests :\n\n* [k6](https://k6.io/)\n\nDevelopment:\n\n* [goreleaser](https://github.com/goreleaser/goreleaser/)\n* [task](https://taskfile.dev/)\n* [sqlc](https://sqlc.dev/)\n* [golang-ci-lint](https://github.com/golangci/golangci-lint)\n* [pre-commit](https://github.com/pre-commit/pre-commit)\n* [moq](https://github.com/matryer/moq)\n* [vscode](https://code.visualstudio.com/docs/setup/linux)\n* vscode extensions\n* [gitleaks](https://github.com/zricethezav/gitleaks)\n* [glab](https://gitlab.com/gitlab-org/cli)\n* [jira-cli](https://github.com/ankitpokhrel/jira-cli)\n* [gitlab-issue-report](https://github.com/sgaunet/gitlab-issue-report)\n* [gitlab-stats](https://github.com/sgaunet/gitlab-stats)\n* [gum](https://github.com/charmbracelet/gum)\n* [nfpm](https://nfpm.goreleaser.com/)\n* [chglog](https://github.com/goreleaser/chglog)\n* [trufflehog](https://github.com/trufflesecurity/trufflehog)\n* [fx](https://github.com/antonmedv/fx)\n* [osv-scanner](https://github.com/google/osv-scanner)\n* [pgweb](https://github.com/sosedoff/pgweb)\n* [tbls](https://github.com/k1LoW/tbls)\n* [delta](https://github.com/dandavison/delta)\n* [act](https://github.com/nektos/act)\n* [jwt-cli](https://github.com/sgaunet/jwt-cli)\n* [devbox](https://github.com/jetify-com/devbox)\n* [lazygit](https://github.com/jesseduffield/lazygit)\n\nLinux tools :\n\n* [zellij](https://github.com/zellij-org/zellij)\n* [gdu](https://github.com/dundee/gdu)\n* [yq](https://github.com/mikefarah/yq)\n* [bandwhich](https://github.com/imsnif/bandwhich)\n* [hyperfine](https://github.com/sharkdp/hyperfine)\n* [gocrypt](https://github.com/sgaunet/gocrypt)\n* [pet](https://github.com/knqyf263/pet)\n* [usql](https://github.com/xo/usql)\n* [bat](https://github.com/sharkdp/bat)\n* [vivid](https://github.com/sharkdp/vivid)\n* [viddy](https://github.com/sachaos/viddy)\n* [tealdeer](https://github.com/dbrgn/tealdeer)\n* [s5cmd](https://github.com/peak/s5cmd)\n* [vhs](https://github.com/charmbracelet/vhs)\n* [ttyd](https://github.com/tsl0922/ttyd) - dependency for vhs\n* [gini](https://github.com/sgaunet/gini)\n* [envtemplate](https://github.com/sgaunet/envtemplate)\n* [calcdate](https://github.com/sgaunet/calcdate)\n* [gocryptfs](https://github.com/rfjakob/gocryptfs)\n* [zenith](https://github.com/bvaisvil/zenith)\n* [retry](https://github.com/sgaunet/retry)\n* [tspin](https://github.com/bensadeh/tailspin)\n* [sshx](https://github.com/ekzhang/sshx)\n* [q](https://github.com/natesales/q)\n* [eph-beta](https://github.com/ephemeralfiles/eph-beta)\n* [freeze](https://github.com/charmbracelet/freeze)\n* [lsd]https://github.com/lsd-rs/lsd)\n* [eza](https://github.com/eza-community/eza)\n* [zoxide](https://github.com/ajeetdsouza/zoxide)\n* [termshot](https://github.com/homeport/termshot)\n* [rsql](https://github.com/theseus-rs/rsql)\n* [age](https://github.com/FiloSottile/age)\n* [glow](https://github.com/charmbracelet/glow)\n* [pplx](https://github.com/sgaunet/pplx)\n* [gomplate](https://github.com/hairyhenderson/gomplate)\n* [yazi](https://github.com/sxyazi/yazi)\n* [httping-go](https://github.com/sgaunet/httping-go)\n* [devpod](https://devpod.sh/)\n* [gh](https://cli.github.com/)\n* [gitlab-token-expiration](https://github.com/sgaunet/gitlab-token-expiration)\n* [direnv](https://direnv.net/)\n* [superfile](https://github.com/yorukot/superfile)\n* [bore](https://github.com/ekzhang/bore)\n* [miller](https://github.com/johnkerl/miller)\n* [lnav](https://github.com/tstack/lnav)\n* [procs](https://github.com/dalance/procs)\n* [zns](https://github.com/znscli/zns)\n* [pop](https://github.com/charmbracelet/pop)\n\nTests:\n\n* [venom](https://github.com/ovh/venom)\n* [muffet](https://github.com/raviqqe/muffet/)\n\nMisceleaneous :\n\n* [startship](https://starship.rs/)\n* [pastel](https://github.com/sharkdp/pastel)\n* [d2](https://github.com/terrastruct/d2)\n* [rclone](https://rclone.org/)\n* [dasel](https://github.com/TomWright/dasel)\n* [zabbix-cli](https://github.com/sgaunet/zabbix-cli)\n\nBash formatter:\n\n* [shellcheck](https://www.shellcheck.net/)\n* [shfmt](https://github.com/mvdan/sh)\n\nIAC:\n\n* [terraform](https://developer.hashicorp.com/terraform)\n* [ansible-summary](https://github.com/sgaunet/ansible-summary)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsgaunet%2Fconf-linux","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsgaunet%2Fconf-linux","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsgaunet%2Fconf-linux/lists"}