9 cursorsConf ? null, # If set to a string, overwrites contents of './cursors.conf'
12 newCursorsConf = writeText "oreo-cursors-plus.conf" cursorsConf;
14 stdenvNoCC.mkDerivation {
15 pname = "oreo-cursors-plus";
16 version = "unstable-2023-06-05";
17 src = fetchFromGitHub {
18 owner = "Souravgoswami";
19 repo = "oreo-cursors";
20 # At the time of writing, there are no version tags. The author will add them starting with the next version release.
21 # Using the latest commit instead.
22 rev = "9133204d60ca2c54be0df03b836968a1deac6b20";
23 hash = "sha256-6oTyOQK7mkr+jWYbPNBlJ4BpT815lNJvsJjzdTmj+68=";
26 nativeBuildInputs = lib.optionals (cursorsConf != null) [ ruby inkscape xorg.xcursorgen ];
28 # './cursors.conf' contains definitions of cursor variations to generate.
32 ${lib.optionalString (cursorsConf != null) ''
33 cp ${newCursorsConf} cursors.conf
39 # The repo already contains the default cursors pre-generated in './dist'. Just copy these if './cursors.conf' is not overwritten.
40 # Otherwise firs remove all default variations and build.
44 ${lib.optionalString (cursorsConf != null) ''
45 rm -r {dist,src/oreo_*}
47 ruby generator/convert.rb
58 mv ./dist $out/share/icons
64 description = "Colored Material cursors with cute animations";
65 homepage = "https://github.com/Souravgoswami/oreo-cursors";
66 license = lib.licenses.gpl2Only;
67 platforms = lib.platforms.all;
68 maintainers = with lib.maintainers; [michaelBrunner];