diff options
Diffstat (limited to 'archive/bin/choose-wallpaper')
-rwxr-xr-x | archive/bin/choose-wallpaper | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/archive/bin/choose-wallpaper b/archive/bin/choose-wallpaper new file mode 100755 index 00000000..5fc14c83 --- /dev/null +++ b/archive/bin/choose-wallpaper @@ -0,0 +1,38 @@ +#!/usr/bin/env perl + +use 5.028; +use strict; +use warnings; +use lib "$ENV{HOME}/src/dotfiles/perl5"; + +use Local::Desktop; +use File::Copy; + +# dirs where wallpaper can be found +our @dirs = ("$ENV{HOME}/annex/wallpaper/pro"); + +if (@ARGV and $ARGV[0] eq "--check-have") { + # ensure_resize_for_current_outputs; + exit !<"$ENV{HOME}/local/wallpaper??.*">; +} + +die "need --random and/or some image files" unless @ARGV; + +my @wallpapers; +if ($ARGV[0] eq "--random") { + shift; + push @wallpapers, pick_random_wallpapers 4, @dirs; +} +unshift @wallpapers, @ARGV; +select_wallpaper_files @wallpapers; + +# resize_for_current_outputs; +# system "$ENV{HOME}/src/dotfiles/scripts/desktop/i3-startup-always"; # feh & restart i3lock + +# now give develacc something +if (-e "$ENV{HOME}/local/develacc") { + my $develacc_wallpaper = @ARGV ? $ARGV[$#ARGV] : $wallpapers[$#wallpapers]; + my ($ext) = $develacc_wallpaper =~ /\.([^.]+)\z/; + copy $develacc_wallpaper, + "$ENV{HOME}/local/develacc/local/wallpaper00.$ext"; +} |