clean Org file

This commit is contained in:
Denis Lehmann 2021-03-29 22:24:48 +02:00
parent 7e29c7acbe
commit 60e323b755
3 changed files with 162 additions and 172 deletions

View file

@ -27,7 +27,7 @@
Configuration is currently done via editing the script directly or editing this file and then tangling it with Emacs (=C-c C-v t=). Configuration is currently done via editing the script directly or editing this file and then tangling it with Emacs (=C-c C-v t=).
#+BEGIN_SRC sh #+begin_src sh
# SETTINGS # SETTINGS
# Edit from here --> # Edit from here -->
@ -36,7 +36,7 @@
window=60 # Fading window in minutes window=60 # Fading window in minutes
# <-- to here # <-- to here
#+END_SRC #+end_src
** Requirements ** Requirements
:PROPERTIES: :PROPERTIES:
@ -49,7 +49,7 @@
To make sure that all requirements are fulfilled, we check them before doing anything else. To make sure that all requirements are fulfilled, we check them before doing anything else.
#+BEGIN_SRC sh #+begin_src sh
if ! command -v wget &> /dev/null if ! command -v wget &> /dev/null
then then
echo -ne "\e[1mwget\e[0m was not found, please install it" echo -ne "\e[1mwget\e[0m was not found, please install it"
@ -63,22 +63,22 @@
echo -ne "\e[1mxrandr\e[0m was not found, are you running the X.Org Server?" echo -ne "\e[1mxrandr\e[0m was not found, are you running the X.Org Server?"
exit 1 exit 1
fi fi
#+END_SRC #+end_src
** Local variables ** Local variables
The file containing the sunrise and sunset is stored in =/tmp=. The file containing the sunrise and sunset is stored in =/tmp=.
#+BEGIN_SRC sh #+begin_src sh
file=/tmp/$location file=/tmp/$location
#+END_SRC #+end_src
To make calculations easier, we scale the fading window down to seconds (=*60=) and divide it in half (=*0.5=). To make calculations easier, we scale the fading window down to seconds (=*60=) and divide it in half (=*0.5=).
This results in a multiplication with =30=. This results in a multiplication with =30=.
#+BEGIN_SRC sh #+begin_src sh
window=$(( $window * 30 )) window=$(( $window * 30 ))
#+END_SRC #+end_src
The following variables are also used in the script, but not initialized. The following variables are also used in the script, but not initialized.
For the sake of completion they are described here. For the sake of completion they are described here.
@ -93,7 +93,7 @@
The times for sunrise and sunset are fetched from [[https://weather.com/][weather.com]]. The times for sunrise and sunset are fetched from [[https://weather.com/][weather.com]].
To filter out the exact values from the response, the regular expressions from [[https://linuxconfig.org/how-to-obtain-sunrise-sunset-time-for-any-location-from-linux-command-line][this]] blog post are used. To filter out the exact values from the response, the regular expressions from [[https://linuxconfig.org/how-to-obtain-sunrise-sunset-time-for-any-location-from-linux-command-line][this]] blog post are used.
#+BEGIN_SRC sh #+begin_src sh
function get_times { function get_times {
wget -q "https://weather.com/weather/today/l/$location" -O "$file" wget -q "https://weather.com/weather/today/l/$location" -O "$file"
@ -105,7 +105,7 @@
sunset=$(date --date="$SUNS" +%s) sunset=$(date --date="$SUNS" +%s)
} }
#+END_SRC #+end_src
** Set dim value ** Set dim value
@ -114,7 +114,7 @@
Finally the value is scaled into range [0,1]. Finally the value is scaled into range [0,1].
#+BEGIN_SRC sh #+begin_src sh
function set_dim_value { function set_dim_value {
# Get current time # Get current time
@ -143,7 +143,7 @@
value=$(echo "$value / (2.0 * $window)" | bc -l) value=$(echo "$value / (2.0 * $window)" | bc -l)
} }
#+END_SRC #+end_src
** Set display ** Set display
@ -157,7 +157,7 @@
| Blue | 0.8 | 1.0 | | Blue | 0.8 | 1.0 |
| Brightness | 0.8 | 1.0 | | Brightness | 0.8 | 1.0 |
#+BEGIN_SRC sh #+begin_src sh
function set_display { function set_display {
red=1.0 red=1.0
@ -171,25 +171,25 @@
done done
} }
#+END_SRC #+end_src
** Log ** Log
To make it easier to follow the script, a timestamp is prefixed on every logging output. To make it easier to follow the script, a timestamp is prefixed on every logging output.
#+BEGIN_SRC sh #+begin_src sh
function log { function log {
log_time=$(date '+%H:%M') log_time=$(date '+%H:%M')
echo -ne "[\e[1m$log_time\e[0m] $1" echo -ne "[\e[1m$log_time\e[0m] $1"
} }
#+END_SRC #+end_src
** Main ** Main
At first the times are updated. At first the times are updated.
Then the current display values are applied every minute. Then the current display values are applied every minute.
#+BEGIN_SRC sh #+begin_src sh
echo -ne "\n..:: \e[1mnightlight\e[0m ::..\n\n" echo -ne "\n..:: \e[1mnightlight\e[0m ::..\n\n"
get_times get_times
log "got sunrise and sunset values\n" log "got sunrise and sunset values\n"
@ -199,4 +199,4 @@
log "applied display values\r" log "applied display values\r"
sleep 60 sleep 60
done done
#+END_SRC #+end_src

View file

@ -1,10 +0,0 @@
with import <nixpkgs> {};
stdenv.mkDerivation {
name = "myEnv";
buildInputs = with pkgs; [
bc
wget
];
src = null;
}