% FUPDATE(1) fupdate 1.0.0 % Benedikt Peetz % May 2023 # NAME fupdate - updates your flake, while checking for common mistakes # SYNOPSIS **fupdate** list of \[*flake*|*\*|*--help*|*-h*\] # DESCRIPTION Argument can be stacked, this makes it possible to specify multiple targets to be updated in succession. See the Examples section for further details. No argument or *flake* : **fupdate**, when executed without arguments or with *flake*, will update your *flake.lock*, check for duplicate flake inputs, i.e., an input has an input declared, which you have also declared as input, and will run a script called *update.sh*, if you allow it. The allowance for the script is asked, when you run **fupdate** and the found script is not yet allowed. Furthermore, the allowance is based on the concrete sha256 hash of the script, so any changes will require another allowance. **\** as argument : If the executable **update-\** is reachable thought the PATH variable, than this is run. Otherwise, the program will exit. # OPTIONS **--help**, **-h** : Displays a help message and exit. **--version**, **-v** : Displays the software version and exit. # EXAMPLES **fupdate** or **fupdate flake** : Updates your *flake.lock*. See the Description section for further details. **fupdate sys** : Run the executable **update-sys**, if it exists. See the Description section for further details. **fupdate flake sys docs** : First updates your flake, then, if the command succeeded, runs **update-sys**, afterweich **update-docs** is run. # FILES *update.sh* : This is supposed to be a shell script located in your flake base directory, i.e., the directory which contains both a *flake.nix* and a *flake.lock* file. *~/.local/share/flake-update/* : **fupdate** will store the hashes to the allowed *update.sh* files here. # BUGS Report bugs to . # COPYRIGHT Copyright (C) 2023 Benedikt Peetz This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see .