This project is a collection of configuration files and scripts that I use on my machine. They have been open-sourced for my own convenience, so you may use anything you see here at your own risk. Some settings are tailored to meet my personal needs, so running these scripts might not work for you out of the box.
As a successor to
confiles
,
this repository has been meticulously designed with cross-platform compatibility
in mind.
The setting files are configured to use the classic Code Page 437 character set from the original IBM PCs; the respective DOS VGA font can be downloaded from here: https://cp437.github.io/.
You will need to have pwsh
installed
on your platform of choice in order to run any of the scripts, as well as an
appropriate execution policy, e.g.
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted
in addition to the following platform-specific prerequisites:
-
winget
-
cargo
TODO
-
brew
-
cargo
Run the following scripts to bootstrap your system, preferably in order.
(Optional) Hook up the PowerShell profile file from the
profile
repository:
.\scripts\misc\pwsh.ps1
The script above will clone the profile repository inside a repos
directory on
your desktop by default. To use a different path, change the value of $Repository
.
Install all required programs:
⚠ Cargo installs can be very time intensive, depending on your hardware specification.
.\scripts\install.ps1 -All
The installer script also accepts individual flags for user-customized installations
and reads its definitions from the settings
folder.
Symlink config files from the apps directory by force:
.\scripts\configure.ps1 -All
As a result of running this scripts, a new assets directory will be created in
$home/.config/assets
.
Update everything. You may need to re-load your session before this function gets recognized as a Cmdlet.
Update-System -All
- The
hosts
file on Windows can not be replaced by a symbolic link - Prior to the Windows 10 Creator Update, creating symbolic links required elevated
permissions. Enabling the
Developer Mode
in the settings app lifts this restriction - The SSH config file is configured to look for two separate SSH keys
- Import the GPG key for signing commits with the following command:
gpg --import .\gpg-private-key.asc
- Clone all my public repositories on GitHub:
Import-Repository -All -Path $desktop/repos/private -Verbose
- In order to use the
Set-DevelopmentProfile
script, you need to define the environment variablesGitWorkUserName
andGitWorkUserEmail
first.