As requested in <https://todo.sr.ht/~soywod/pimalaya/131> I removed
flake-utils. This reduces the number of flake inputs and doesn't add
much code.
The way this works, is that instead of `eachDefaultSystem` we have a
function `forEachSupportedSystem`, this function generates an attrset
with a key for each system in the `supportedSystems` array, whose value
is the result of calling the provided function with the system as an
argument:
```nix repl
repl> forEachSupportedSystem f
{
"x86_64-linux" = f "x86_64-linux";
...
}
```
This is slightly clumsier than `flake-utils.lib.eachDefaultSystem`,
which rewrites the returned attrset, but it is much less code and
simpler to understand.
I tested the build with `nix build` on `x86_64-linux` and it still works
c:
As discussed in
<https://github.com/nix-community/home-manager/issues/5069>.
I set `ExecStart=%install_dir%/himalaya` so when packaging himalaya
people nee to explicitly set the path to himalaya (i.e. `sed
's:%install_dir%:/usr/bin:' assets/himalaya-watch@.service`). This is
done automatically in `install.sh` if `$PREFIX` is `/usr`, Otherwise
the packager should handle it themselves
For `nix` it would be (`sed 's:%install_dir%:$out/bin:'
assets/himalaya-watch@.service`). I don't know where it should be placed
(probably `$out/share/systemd/user` as nix will add that to
`$XDG_DATA_DIRS` which is searched by `systemctl --user`.
I swear I checked the address like 4 times before sending the email, I
have no idea how I managed to mess it up T-T. I was wondering why the
formatting was so messed up in sr.ht.
Reasons:
- Avoid unnecessary conversion, since into is called on an String value
when String is expected, anyway.
Signed-off-by: Perma Alesheikh <me@prma.dev>
Reasons:
- Filter_map will run forever if iterator only returns Err with lines.
This is a possibility for "lines" iterators.
- Map_while will break the mapping the moment the iterator returns error.
Signed-off-by: Perma Alesheikh <me@prma.dev>
Reasons:
- Map is usually intended for transforming a value, and as is not
idiomatically used for only doing side-effects and control flow.
Signed-off-by: Perma Alesheikh <me@prma.dev>