This is the zshrc file I use for the moment. I'll modify it through time because I might not like what it looks like for now. It uses geolocation to find when will be sunset and sunrise and then print a nice ascii art according to the time in the day. It also shows the the weather for the place you're in right now. I adapted a few scripts I found from here and there so you might recognize things you've seen somewhere else. If I didn't quote you in the list please notify me and I'll add you ;)
In the future I'd like to add a mailutils wrapper that would show if I have unread mails. I might want to add a RSS feed also.
You'll need to use :
- curl: to fetch infos on geolocation and weather,
- toilet: to write date in a nice format,
- iwctl: it's my network manager on systemd, I use it to get the ip adress,
- zsh-autosuggestion: it allows to do autocomplete in zsh, it's really nice,
- oh-my-zsh: plenty of different features, among them zsh theme management,
- lolcat: to generate nice looking DNA strands around my screen,
- jq: it allows to open json files directly from the shell.
To access the location, we call to tools.keycdn.com, if you want to use another tool you can change that. You'll need to make an account on openweathermap to have the api key you'll be able to use in the weather-v2.0.sh file.
The zshrc file where everything is stored.
You can modify the folders where everything is stored in by modifying the main variables on lines.
$CACHE
: the ~/.cache/ file where the json files are stored by the weather-v2.0.sh script.
$ScriptFolder
: the /usr/src/ folder where the weather-v2.0.sh script is stored.
The main script that allows to find location and weather.
$CACHE
same as for zshrc. The must be similar to enable the two scripts to work together.
$api_key
is your openweathermap api key.
The profile folder where all the aliases are stored.
I need to give credit to @closebox73 that made most of the weather script.