Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hpedrorodrigues/sphynx
There is no place like ~/
https://github.com/hpedrorodrigues/sphynx
ansible cli dotfiles linux-setup macos macos-setup ubuntu workspace
Last synced: 2 months ago
JSON representation
There is no place like ~/
- Host: GitHub
- URL: https://github.com/hpedrorodrigues/sphynx
- Owner: hpedrorodrigues
- License: apache-2.0
- Created: 2020-12-03T17:41:51.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2024-11-13T01:11:25.000Z (2 months ago)
- Last Synced: 2024-11-13T02:20:08.745Z (2 months ago)
- Topics: ansible, cli, dotfiles, linux-setup, macos, macos-setup, ubuntu, workspace
- Language: Shell
- Homepage:
- Size: 12.6 MB
- Stars: 17
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
[![Checks][checks-badge]][checks-workflow]
CLI •
Dotfiles •
External Tools •
Workspace Configuration## About
This is a personal project containing everything I use on a daily basis and how
I set up my machine. It has aliases, functions, CLI, workspace configuration,
applications' settings, docker images, and more.### CLI
This is the core of Sphynx. The [command-line interface][cli-folder] is used to
automate boring/repetitive tasks and helps me manage the other parts of this
project.e.g.
```bash
$ sx docker logs
$ sx android device --connect
$ sx system clear-trash
```Most commands use the [fuzzy finder][fzf] to provide a better experience with an
interactive menu + fuzzy searching.If you want to give the CLI a try, you can use [Homebrew][homebrew] or
[Linuxbrew][linuxbrew] to install it.```bash
brew install hpedrorodrigues/tools/sphynx
```### Dotfiles
All dotfiles are inside the [dotfiles][dotfiles-folder] module. It has common
aliases, functions, and configuration files that I use daily.#### Shell startup performance
**zsh**
```
♪ sx shell benchmark zsh
ProductName: macOS
ProductVersion: 14.0> Hyperfine
Benchmark 1: zsh -i -c exit
Time (mean ± σ): 57.2 ms ± 0.5 ms [User: 31.2 ms, System: 22.2 ms]
Range (min … max): 56.0 ms … 58.5 ms 50 runs> Bench
benchmarking zsh -i -c exit
time 57.97 ms (57.61 ms .. 58.59 ms)
1.000 R² (0.999 R² .. 1.000 R²)
mean 57.96 ms (57.78 ms .. 58.31 ms)
std dev 430.2 μs (251.9 μs .. 635.6 μs)> Time
/usr/bin/time zsh -i -c exit (5x)
0.06 real 0.03 user 0.02 sys
0.06 real 0.03 user 0.02 sys
0.05 real 0.03 user 0.02 sys
0.05 real 0.03 user 0.02 sys
0.05 real 0.03 user 0.02 sys
```**bash**
```
♪ sx shell benchmark bash
ProductName: macOS
ProductVersion: 14.0> Hyperfine
Benchmark 1: bash -i -c exit
Time (mean ± σ): 40.5 ms ± 1.1 ms [User: 19.1 ms, System: 20.1 ms]
Range (min … max): 39.2 ms … 45.2 ms 69 runs> Bench
benchmarking bash -i -c exit
time 41.15 ms (40.94 ms .. 41.48 ms)
1.000 R² (1.000 R² .. 1.000 R²)
mean 41.00 ms (40.95 ms .. 41.18 ms)
std dev 155.3 μs (46.41 μs .. 291.6 μs)> Time
/usr/bin/time bash -i -c exit (5x)
0.04 real 0.01 user 0.01 sys
0.04 real 0.01 user 0.02 sys
0.03 real 0.01 user 0.01 sys
0.03 real 0.01 user 0.01 sys
0.04 real 0.01 user 0.02 sys
```### External tools
[External tools][external-tools] are tools that you don't want to install
on your machine but you'd like to use them.They are basically shell functions calling Docker behind the scenes, but
not all functions use the dockerfiles available in this project (e.g. Kafka).### Workspace configuration
I use [Ansible][ansible-website] to configure my machine. It automates tedious
tasks [installing packages and applications][playbooks-folder] that I use almost
daily.[cli-folder]: ./modules/cli
[fzf]: https://github.com/junegunn/fzf
[homebrew]: https://brew.sh
[linuxbrew]: https://docs.brew.sh/Homebrew-on-Linux[dotfiles-folder]: ./modules/dotfiles
[external-tools]: ./modules/dotfiles/common/scripts/external_tools.sh
[ansible-website]: https://www.ansible.com
[playbooks-folder]: ./modules/playbooks[checks-badge]: https://github.com/hpedrorodrigues/sphynx/actions/workflows/checks.yml/badge.svg
[checks-workflow]: https://github.com/hpedrorodrigues/sphynx/actions/workflows/checks.yml