-
Notifications
You must be signed in to change notification settings - Fork 0
Changelogs
Michael_Scopic edited this page Feb 11, 2023
·
2 revisions
Here is my changelogs, to keep myself and others up to date of what has changed and what I'm doing.
- Deprecated
lsd, fully switched toexa- Removed
lsdfrom being installed inshell-install.sh
- Removed
- Detected if terminal is a tty, and disable using icons if it is a tty
- Renamed config dir to
.config/- Updated
shell-install.shto account for new name
- Updated
- Renamed bin dir to
.local/bin/
- Removed
deploy.sh.bak - Removed everything in
scripts/
-
Renamed variables (look in
init()) -
Added error handling if certain criteria aren't met:
- Will throw an error if
/etc/os-releasedoesn't exist and will throw another error if$DOTFILES_DIRis not set. -
init():- Will throw an error if
/etc/os-releasedoes not exist. - This is non-fatal, so
init()wont return1as the exit code. - Will throw an error if
$DOTFILES_DIRis not set.- This is a fatal error, so
init()will return1as exit code. - This error will happen if
revis not a command. Setting the value of$DOTFILES_DIRrelies onrev. - The rest of the script can continue, but will not be able to overwrite or copy zsh configs.
- This is a fatal error, so
- Will throw an error if
-
install_fonts():- Will throw an error if
$DOTFILES_DIRis not set.- This is fatal, and this function will not continue.
- Will throw error if
fc-cacheis not a command.- non-fatal, but it doesn't really matter because this command comes at the end of this funciton.
- Will throw an error if
-
install_zsh():- Will throw an error if
$DOTFILES_DIRis not set.- This is fatal, and this function will not continue.
- This is because this function needs to be able to copy files from the dotfiles directory.
- Will throw an error if
-
overwrite():- Will throw an error if
$DOTFILES_DIRis not set.- This is fatal, and this function will not continue.
- This is because function needs to be able to copy files from the dotfiles directory.
- Will throw an error if
- Will throw an error if
-
install_zsh()- Fixed typo to make
~/.config/zshif it does not already exists.- Origianally detected if it does exists, then makes the directory even though it already exists.
- Fixed typo to make
-
Planning on completely removing
deploy.sh.bakand everything inscripts/. These scripts have been deprecated, and the functionality of them have been merged into one script (shell-install.sh). The new script is basically better in every way.- Maybe I'll move these scripts into a
deprecated/directory? Makes it nice to see how far I've come for Shell scripting. :)
- Maybe I'll move these scripts into a
- Created
CHANGELOG.mdto track progress. -
shell-install.sh- Finished functions.
- Introduced message functions:
-
msg_info()<- For showing info to user (ex:[INFO] Installing dependencies...) -
msg_note()<- For showing notes to user (ex:[NOTE] You might need to change your shell to ZSH.) -
msg_error()<- For printing errors to user (ex:[ERROR] Unable to detect package manager!) -
msg_success()<- For printing successes to user (ex:[SUCCESS] Copied configs.)
-
- Allowed user to just call
init(). Only useful for making sure the script initalizes as expected. You can just runinit()with./shell-install init - Renamed the name of some Starship prompts to give credit to the creators.
-
dependencies()- Completely revamped package manager detection:
- Instead of trying to find the distro name with
/etc/os-release, we just pick up the name of the package managers themselves (eg:apt-getfor Debian/Ubuntu based sytems,pacmanfor Arch based systems, so on and so on) - Gets rid of excess complexity and negates workarounds for distros that have different names in
/etc/os-release - Doesn't require
/etc/os-release, which might not be present on all distros (especially in containers)
- Instead of trying to find the distro name with
- Added NixOS/nixpkgs support
- Only tests for Linux AND x86_64 (amd64) platforms.
- Will throw an error if detected host is not Linux AND is not x86_64.
- This would be a fatal error, this function would not be able to continue without knowing the system's package manager.
- Completely revamped package manager detection: