Skip to content

Commit

Permalink
docs: start adjusting readme
Browse files Browse the repository at this point in the history
  • Loading branch information
0-vortex committed Dec 7, 2024
1 parent 3c57129 commit eed0750
Show file tree
Hide file tree
Showing 2 changed files with 66 additions and 96 deletions.
151 changes: 56 additions & 95 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
# 0-vortex/dotfiles

[![docs](https://github.com/0-vortex/dotfiles/actions/workflows/docs.yml/badge.svg)](https://github.com/0-vortex/dotfiles/actions/workflows/docs.yml)
[![docs](https://github.com/0-vortex/dotfiles/actions/workflows/release.yml/badge.svg)](https://github.com/0-vortex/dotfiles/actions/workflows/docs.yml)
[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg)](http://commitizen.github.io/cz-cli/)
[![GitHub License](https://img.shields.io/github/license/0-vortex/vortex.name.svg)](https://github.com/0-vortex/vortex.name/blob/master/LICENSE)

> Configuration: [zsh](http://www.zsh.org), [antibody](https://github.com/getantibody/antibody), [pkgsrc](https://www.pkgsrc.org)
>
> Package managers: [pip](https://pip.pypa.io/en/stable/user_guide/), [npm](https://docs.npmjs.com/about-npm), [cargo](https://doc.rust-lang.org/cargo/), [go](https://github.com/golang/go/wiki/Modules)
>
> Submodules: [dotbot](https://github.com/anishathalye/dotbot), [powerline](https://github.com/powerline/fonts), [git-extras](https://github.com/tj/git-extras), [git-quick-stats](https://github.com/arzzen/git-quick-stats), [iterm-color-schemes](https://github.com/mbadolato/iTerm2-Color-Schemes)
> Submodules: [git-extras](https://github.com/tj/git-extras), [git-quick-stats](https://github.com/arzzen/git-quick-stats), [iterm-color-schemes](https://github.com/mbadolato/iTerm2-Color-Schemes)
## Overview

Just want to give it a spin in a sandbox?

```shell
docker run -dit --rm --name dotfiles 0vortex/dotfiles
docker run -dit --rm --name dotfiles 0vortex/dotfilesx:debian
docker exec -it dotfiles zsh
```

Expand Down Expand Up @@ -48,7 +48,7 @@ docker exec -it dotfiles zsh
</details>

<details>
<summary>IDE: <a href="https://www.jetbrains.com/webstorm/">WebStorm</a> with <a href="https://www.nordtheme.com">Nord</a> theme (unmanaged)</summary>
<summary>IDE: <a href="https://www.jetbrains.com/webstorm/">WebStorm</a> with <a href="https://plugins.jetbrains.com/plugin/17418-foundation-theme">Foundation</a> theme (unmanaged)</summary>

![WebStorm](screenshots/webstorm.png)

Expand All @@ -73,132 +73,81 @@ docker exec -it dotfiles zsh
- [gnuls](https://cdn.netbsd.org/pub/pkgsrc/current/pkgsrc/misc/gnuls/index.html)
- [gnupg](https://cdn.netbsd.org/pub/pkgsrc/current/pkgsrc/security/gnupg/index.html)
- [watchman](https://cdn.netbsd.org/pub/pkgsrc/current/pkgsrc/sysutils/watchman/index.html)
- [eza](https://crates.io/crates/eza)
- [fd-find](https://crates.io/crates/fd-find)
- [ripgrep](https://crates.io/crates/ripgrep)

### Python user modules

- [asciinema](https://github.com/asciinema/asciinema)
- [dnstwist](https://github.com/elceef/dnstwist)
- [git-fame](https://github.com/casperdcl/git-fame) - `git fame`

<details>
<summary>Darwin only</summary>

- [git-filter-repo](https://github.com/newren/git-filter-repo) - `git filter-repo`
- [httpie](https://github.com/httpie/httpie) - `http -v`
- [terraform-compliance](https://github.com/terraform-compliance/cli)
- [tqdm](https://github.com/tqdm/tqdm)
- [sublist3r](https://github.com/aboul3la/Sublist3r)
- [wafw00f](https://github.com/EnableSecurity/wafw00f)

</details>

### Node global packages

- [commitizen](https://www.npmjs.com/package/commitizen)
- [depcheck](https://www.npmjs.com/package/depcheck)
- [dree](https://www.npmjs.com/package/dree)
- [envinfo](https://www.npmjs.com/package/envinfo)
- [git-recent](https://www.npmjs.com/package/git-recent)
- [git-standup](https://www.npmjs.com/package/git-standup)
- [git-split-diffs](https://www.npmjs.com/package/git-split-diffs)
- [how-2](https://www.npmjs.com/package/how-2)
- [localtunnel](https://www.npmjs.com/package/localtunnel)
- [madge](https://www.npmjs.com/package/madge)
- [n](https://www.npmjs.com/package/n)
- [npm-check-updates](https://www.npmjs.com/package/npm-check-updates)
- [npkill](https://www.npmjs.com/package/npkill)
- [ntl](https://www.npmjs.com/package/ntl)
- [quicktype](https://www.npmjs.com/package/quicktype)

<details>
<summary>Darwin only</summary>

- [api-spec-converter](https://www.npmjs.com/package/api-spec-converter)
- [caniuse-cmd](https://www.npmjs.com/package/caniuse-cmd)
- [catj](https://www.npmjs.com/package/catj)
- [code-to-graph](https://www.npmjs.com/package/code-to-graph)
- [cz-conventional-changelog](https://www.npmjs.com/package/cz-conventional-changelog)
- [diff-so-fancy](https://www.npmjs.com/package/diff-so-fancy)
- [dree](https://www.npmjs.com/package/dree)
- [eslint](https://www.npmjs.com/package/eslint)
- [fx](https://www.npmjs.com/package/fx)
- [http-server](https://www.npmjs.com/package/http-server)
- [jsnice](https://www.npmjs.com/package/jsnice)
- [madge](https://www.npmjs.com/package/madge)
- [openapi-to-graphql-cli](https://www.npmjs.com/package/openapi-to-graphql-cli)
- [ntl](https://www.npmjs.com/package/ntl)
- [percollate](https://www.npmjs.com/package/percollate)
- [serve](https://www.npmjs.com/package/serve)
- [standard-changelog](https://www.npmjs.com/package/standard-changelog)
- [tldr](https://www.npmjs.com/package/tldr)
- [unminify](https://www.npmjs.com/package/unminify)

</details>

### Rust global packages

- [eza](https://crates.io/crates/eza)
- [fd-find](https://crates.io/crates/fd-find)
- [ripgrep](https://crates.io/crates/ripgrep)

<details>
<summary>Darwin only</summary>

- [ripgrep](https://crates.io/crates/ripgrep)
- [dotenv-linter](https://crates.io/crates/dotenv-linter)

</details>
- [hexyl](https://github.com/sharkdp/hexyl)
- [petname](https://github.com/allenap/rust-petname)

### Go global packages

- [glow](https://pkg.go.dev/github.com/charmbracelet/glow)
- [image2ascii](https://pkg.go.dev/github.com/qeesung/image2ascii)

<details>
<summary>Darwin only</summary>

- [lazydocker](https://pkg.go.dev/github.com/jesseduffield/lazydocker)
- [lazygit](https://pkg.go.dev/github.com/jesseduffield/lazygit)
- [bat](https://pkg.go.dev/github.com/astaxie/bat)
- [httpx](https://pkg.go.dev/github.com/projectdiscovery/httpx)
- [subfinder](https://pkg.go.dev/github.com/projectdiscovery/subfinder)

</details>
- [croc](https://github.com/schollz/croc)
- [duf](https://github.com/muesli/duf)
- [glow](https://github.com/charmbracelet/glow)
- [httpx](https://github.com/projectdiscovery/httpx)
- [image2ascii](https://github.com/qeesung/image2ascii)

## Requirements

1. Install [Xcode](https://developer.apple.com/xcode/) or run ``xcode-select --install``
1. Download and install [Python](https://www.python.org)
1. Download and install [Node.js](https://nodejs.org/en/)
1. Download and install [Go](https://golang.org/dl/)
1. Download and install [Rust](https://www.rust-lang.org/) via ``curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh``
1. Install [Atom](http://atom.io) and ``CMD+SHIFT+P`` to ``Window: Install shell commands``
1. Optional, install [GPG Suite](https://gpgtools.org)
1. Optional, Install [KeyBase](https://keybase.io)
2. Download and install [Python](https://www.python.org)
3. Download and install [Node.js](https://nodejs.org/en/)
4. Download and install [Go](https://golang.org/dl/)
5. Download and install [Rust](https://www.rust-lang.org/) via ``curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh``
6. Install [Atom](http://atom.io) and ``CMD+SHIFT+P`` to ``Window: Install shell commands``
7. Optional, install [GPG Suite](https://gpgtools.org)
8. Optional, Install [KeyBase](https://keybase.io)

## Installation

Clone the package via git:

```shell
# macOS
git clone --recurse-submodules -j4 git@github.com:0-vortex/dotfiles.git .dotfiles
git clone git@github.com:0-vortex/dotfiles.git .dotfiles
cd .dotfiles
./install
./install.sh
```

## How to use

If you are on linux, do `lsb_release` and then duplicate or rename [debian.conf.yaml](./os/debian.conf.yaml)
and populate it with your settings.

### Make it your own

Make appropriate `git` to the [config/git/.gitconfig](./config/git/.gitconfig) and [config/git/.gitignore_global](./config/git/.gitignore_global) files.

Change `npm` registry username in the [config/node/.npmrc-global](./config/node/.npmrc-global) file.

Enable or disable [macOS defaults](./defaults) folder.

Any changes mentioned above will need reflection in [install.conf.yaml](./install.conf.yaml).

### Set up GPG and commit signing

Copy over your `~/.ssh` folder.
Expand All @@ -218,38 +167,50 @@ change the following to your `docker` username and just ship it.

Here are manual examples of all the tags available in the current [Dockerfile](./Dockerfile.debian), testing included.

### Alpine

```shell
docker build -t 0vortex/dotfilesx:alpine -f Dockerfile.alpine --squash alpine .
docker run -dit --rm --name dotfiles-alpine 0vortex/dotfilesx:alpine
docker exec -it dotfiles-alpine zsh
```

### Arch

```shell
docker build -t 0vortex/dotfilesx:arch --squash arch .
docker run -dit --rm --name dotfiles-arch 0vortex/dotfilesx:arch
docker exec -it dotfiles-arch zsh
```

### Debian

```shell
docker build -t 0vortex/dotfiles:debian --squash --target debian .
docker run -dit --rm --name dotfiles-debian 0vortex/dotfiles:debian
docker build -t 0vortex/dotfilesx:debian --squash debian .
docker run -dit --rm --name dotfiles-debian 0vortex/dotfilesx:debian
docker exec -it dotfiles-debian zsh
docker push 0vortex/dotfiles:debian
```

### Ubuntu
### Fedora

```shell
docker build -t 0vortex/dotfiles:ubuntu --squash --target ubuntu .
docker run -dit --rm --name dotfiles-ubuntu 0vortex/dotfiles:ubuntu
docker exec -it dotfiles-ubuntu zsh
docker push -0vortex/dotfiles:ubuntu
docker build -t 0vortex/dotfilesx:fedora --squash fedora .
docker run -dit --rm --name dotfiles-fedora 0vortex/dotfilesx:fedora
docker exec -it dotfiles-fedora zsh
```

### Alpine
### Kali

```shell
docker build -t 0vortex/dotfiles:alpine --squash --target alpine .
docker run -dit --rm --name dotfiles-alpine 0vortex/dotfiles:alpine
docker exec -it dotfiles-alpine zsh
docker push 0vortex/dotfiles:alpine
docker build -t 0vortex/dotfilesx:kali --squash kali .
docker run -dit --rm --name dotfiles-kali 0vortex/dotfilesx:kali
docker exec -it dotfiles-kali zsh
```

### Arch
### Ubuntu

```shell
docker build -t 0vortex/dotfiles:arch --squash --target arch .
docker run -dit --rm --name dotfiles-arch 0vortex/dotfiles:arch
docker exec -it dotfiles-arch zsh
docker push 0vortex/dotfiles:arch
docker build -t 0vortex/dotfilesx:ubuntu --squash ubuntu .
docker run -dit --rm --name dotfiles-ubuntu 0vortex/dotfilesx:ubuntu
docker exec -it dotfiles-ubuntu zsh
```
11 changes: 10 additions & 1 deletion run_once_000_install_dependencies.sh.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ sudo /opt/pkg/bin/pkgin -y install \
neofetch \
ripgrep \
sd \
watchman \
tealdeer \
tokei \
wget

{{ else if (and (eq .chezmoi.os "linux") (not .codespaces)) -}}
Expand All @@ -39,6 +40,8 @@ sudo apt-get install -y --no-install-recommends \
neofetch \
ripgrep \
sd \
tealdeer \
tokei \
wget
{{ else if eq .chezmoi.osRelease.id "arch" -}}
sudo pacman -Sy --noconfirm \
Expand All @@ -55,6 +58,8 @@ sudo pacman -Sy --noconfirm \
neofetch \
ripgrep \
sd \
tealdeer \
tokei \
wget
{{ else if eq .chezmoi.osRelease.id "fedora" -}}
sudo dnf install -y \
Expand All @@ -74,6 +79,8 @@ sudo dnf install -y \
neofetch \
ripgrep \
sd \
tealdeer \
tokei \
wget \
which
{{ else if eq .chezmoi.osRelease.id "alpine" -}}
Expand All @@ -91,6 +98,8 @@ sudo apk add --update \
neofetch \
ripgrep \
sd \
tealdeer \
tokei \
wget
# alpine profile is dirty
sudo rm -rf /etc/profile
Expand Down

0 comments on commit eed0750

Please sign in to comment.