stockholm/krebs/5pkgs/simple/bling/default.nix
2021-10-12 20:53:45 +02:00

56 lines
1.1 KiB
Nix

{ imagemagick, runCommand, stockholm, ... }:
with stockholm.lib;
let
krebs-v2 = [
" "
" "
" x x x x"
"xx x xx xx xx x"
"xx x xx xx xx x"
" xxx x x xxx"
" xxx xxxxx xxx"
" x xxxxxxx x "
" xxxxxxxxxxxxx "
" xxxxxxx "
" xxxxxxxxxxx "
" x xxx x "
" x x x x x x "
" x x x x x x "
" x xx x x xx x "
" "
];
chars-per-pixel = 1;
colors = 2;
columns = foldl' max 0 (map stringLength krebs-v2);
rows = length krebs-v2;
png-geometry = "1692x1692";
txt = concatMapStrings (s: "${s}\n") krebs-v2;
xpm = ''
static char *krebs_v2[] = {
${toC (toString [columns rows colors chars-per-pixel])},
" c None",
"x c #E4002B",
${concatMapStringsSep ",\n " toC krebs-v2}
};
'';
in
runCommand "bling"
{
inherit xpm;
passAsFile = ["xpm"];
}
''
mkdir -p $out
cd $out
cp $xpmPath krebs-v2.xpm
${imagemagick}/bin/convert krebs-v2.xpm krebs-v2.ico
${imagemagick}/bin/convert krebs-v2.xpm -scale ${png-geometry} krebs-v2.png
''