Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rodolphocastro/dotfiles
Dotfiles for my Windows and Linux environments
https://github.com/rodolphocastro/dotfiles
bash dotfiles linux powershell windows wsl
Last synced: 17 days ago
JSON representation
Dotfiles for my Windows and Linux environments
- Host: GitHub
- URL: https://github.com/rodolphocastro/dotfiles
- Owner: rodolphocastro
- License: mit
- Created: 2021-02-03T02:34:20.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2023-10-13T21:56:57.000Z (about 1 year ago)
- Last Synced: 2023-10-15T12:43:22.324Z (about 1 year ago)
- Topics: bash, dotfiles, linux, powershell, windows, wsl
- Language: PowerShell
- Homepage:
- Size: 71.3 KB
- Stars: 6
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Rodolpho Alves' dotFiles
Those are my personal settings for my Windows' environments.
*If you want to use this consider forking it and changing it to your fit your own needs*, don't go around blindly running scripts from the internet!
## What are dotfiles
In a nutshell:
> Basically this is an old-school way to OneDrive/Google Sync/Dropbox your settings. At least those that are *easy to automate*.
A `dotfiles` repository is an attempt to keep multiple settings in-sync across multiple environments **without relying on external solutions.** Basically once you have this repository done all you gotta do is `git clone` it into a new environment and run the `bootstrap` script.
The biggest challenge for *this* set of `dotfiles` is to deal with the Windows' way of setting stuff up. Thus why you'll notice some powershell wizardry going on. Things like what I'm trying to achieve here are way easier on `nix` environments.
> But the challenge of doing this on Windows is exactly what fuels me 😎
If you're interested in the subject you might want to check out some articles such as:
1. https://dotfiles.github.io/
2. https://medium.com/@webprolific/getting-started-with-dotfiles-43c3602fd789## How to use this?
**First and foremost**:
> **Do not use this if you have no idea what these scripts are doing**. Never run scripts blindly, especially those found on the internet.
### Windows
If you're on Windows:
1. Download this repository or Clone it with `git`
2. Run the `bootstrap.ps1` file
3. **Answer the ultra-secret totally not related to WoW question 🐔**
4. ???
5. Profit 💲💲💲This will set you up with some VSCode settings, Windows Terminal and Powershell settings.
If you're not me (lol) you might want to **change your ~/.gitconfig** so you won't commit stuff using my name.
#### Expanding on the Profile
If you need more stuff on your profile but doesn't want to track it you can **expand upon the current Profile by creating an `extras.ps1` file on the same directory your Profile's on**.
Usually this means you'll create an `extras.ps1` file on `${HOME}\Documents\PowerShell\`.
#### Installing stuff
The `bootstrap` script doesn't install anything for you. If you're interested in install stuff you'll need to run the following scripts:
1. `install_softwares.ps1`: Sets you up with a bunch of softwares based on the contents of `software_list.txt`
2. `powershell/setup/install_pwsh_modules.ps1`: Sets you up with a bunch of Powershell Modules### Linux (WSL)
Run `bootstrap.sh` and you'll have the usual files (git and bashrc) sys-linked and ready to rock.
## Directory structure
This is the directory structure I'll be keeping for my `dotfiles`:
| Directory | What goes into it |
| -------------- | -------------------------------- |
| `.` | Everything that goes to `~` |
| `./bash` | Bash profiles and Snippets |
| `./powershell` | Powershell Profiles and Snippets |
| `./terminal` | Everything Windows Terminal |
| `./vscode` | VisualStudio Code goodies |## Environment variables
Those are some environment variables that are used throughout my scripts/profiles:
| Name | What it affects |
| ------------------------ | ------------------------------------------------------------------------------------ |
| `PWSH_SKIP_ENV_CHECK` | if this is set to anything the `$PROFILE` will skip checking the Environment's Setup |
| `PWSH_SKIP_AUTOCOMPLETE` | If this is set we won't setup Autocompletion for Powershell on `$PROFILE` |
| `PROJ_DIR` | This should point to a directory where you keep most of your source codes |
| `DOTFILES_DIR` | This should point to where you keep this repository's files |