craftzdog / dotfiles-public

My personal dotfiles
6.13k stars 1.16k forks source link

Feature: Designing an automation script, for automatically installing packages for craftzdog dotfiles. #142

Open harshv5094 opened 8 months ago

harshv5094 commented 8 months ago

Hello, I want to design an automation script to install craftzdog setup. I've already developed a script for my existing setup in linux. So I want to ask @craftzdog to ask his permission to develop script for macOS and windows for his setup.

craftzdog commented 8 months ago

sounds interesting! please go ahead

harshv5094 commented 8 months ago

Thank you for your permission, I also need to ask you some question, Here are some of them for now:

  1. Since I don't know what packages you are using in your setup. Could you mail me through my GitHub email address about what packages you need to automatically install during initial setup of Windows, MacOS and Linux?

  2. Which currently linux distro are you using, Do you distro hop a lot of time?. It'll help me to add option to install packages based on package manager of your current distribution.

craftzdog commented 7 months ago
  1. Yeah I actually have some scripts for installing packages. I'll share them later
  2. Currently I use Ubuntu for building my app
harshv5094 commented 7 months ago

Ah, @craftzdog sorry to disturb you. But I didn't receive any response after your message. Would you please send me those scripts so I can begin to develop the script?

craftzdog commented 7 months ago

sorry for the delay. here!

Ubuntu

via apt

fish exa fzf fd-find ripgrep

macOS

via Homebrew

fish
ghq     
pyenv   
jq      
neovim  
node    
eza     
bat     
hub     
tmux    
ripgrep 
fd      
fzf
watchman

via npm

npm i -g commitizen cz-conventional-changelog

windows

not available

fish

#!/usr/bin/env fish

set CONFIG_PATH ~/.config/fish
set BASE_DIR $HOME/.dotfiles/.config/fish
ln -s $BASE_DIR/config.fish $CONFIG_PATH
ln -s $BASE_DIR/config-osx.fish $CONFIG_PATH
ln -s $BASE_DIR/config-windows.fish $CONFIG_PATH
ln -s $BASE_DIR/config-linux.fish $CONFIG_PATH
ln -s $BASE_DIR/functions/fzf_change_directory.fish $CONFIG_PATH/functions/
ln -s $BASE_DIR/functions/fish_user_key_bindings.fish $CONFIG_PATH/functions/
ln -s $BASE_DIR/conf.d/tide.fish $CONFIG_PATH/conf.d/

echo installing z
fisher install jethrokuan/z

# Mind the compatibility: https://github.com/IlanCosman/tide/wiki/Fish-version-compatibility
echo installing a theme for fish
fisher install IlanCosman/tide

echo installing bass
fisher install edc/bass

echo installing ssh-agent
fisher install danhper/fish-ssh-agent

echo installing nvm
fisher install jorgebucaran/nvm.fish

echo installing fzf
fisher install PatrickF1/fzf.fish
harshv5094 commented 7 months ago

Thanks for your config, I'll start my work and contact you around 2 - 3 days to give you my updates. I've also registered for neovimconf 2023. I'm looking forward to your presentation on Dec 8