nix-git/modules/wallpaper.nix

20 lines
757 B
Nix

{ pkgs, lib }:
let
# Width of our display.
max-width = "1920";
in
pkgs.stdenv.mkDerivation rec{
name = "yoda-wallpaper";
src = "${../assets/img/wallpaper.jpg}";
nativeBuildInputs = with pkgs; [ imagemagick ];
phases = "installPhase";
# magick limit width: https://stackoverflow.com/a/38415211/6334421
# magick jpg options: quality, progressive, strip metadata. https://stackoverflow.com/a/7262050/6334421
installPhase = ''
set -eu -o pipefail
mkdir -p $out
${pkgs.imagemagick}/bin/magick $src -resize '${max-width}>' -quality 90% -interlace Plane -strip $out/img.jpg
${pkgs.imagemagick}/bin/magick $src -resize '${max-width}>' $out/img.png
'';
}