83 lines
2.0 KiB
Ruby
83 lines
2.0 KiB
Ruby
require_relative File.expand_path "~/.maid/private_rules.rb"
|
|
|
|
Maid.rules do
|
|
NOW = DateTime.now.strftime("%Y-%m")
|
|
rule 'File away EPub / Newspapers' do
|
|
move(
|
|
dir('~/Downloads/taz_*{epub,txt,pdf}'),
|
|
mkdir("~/Lager/eBooks/taz/")
|
|
)
|
|
move(
|
|
dir('~/Downloads/*{epub,txt,pdf}'),
|
|
mkdir("~/Lager/eBooks/")
|
|
)
|
|
end
|
|
|
|
rule 'Backups' do
|
|
move(
|
|
dir('~/Downloads/Inoreader Subscriptions *.xml'),
|
|
mkdir("~/Backup/Inoreader/")
|
|
)
|
|
move(
|
|
dir('~/Downloads/Hass_io_*.tar'),
|
|
mkdir("~/Backup/HomeAssistant/")
|
|
)
|
|
end
|
|
|
|
rule 'Safe the Ergodox Layouts' do
|
|
move(
|
|
dir('~/Downloads/ergodox_ez*.hex'),
|
|
mkdir("~/Lager/Ergodox-Layouts/")
|
|
)
|
|
end
|
|
|
|
rule 'Move PDF Files to be buffered' do
|
|
move(
|
|
dir('~/Downloads/*.{PDF,pdf}'),
|
|
mkdir("~/Lager/Downloaded-Documents/#{NOW}/")
|
|
)
|
|
end
|
|
|
|
rule 'Move Screenshots into Month-Folders' do
|
|
move(
|
|
dir('~/Pictures/*Screenshot*png'),
|
|
mkdir("~/Pictures/Screenshots/#{NOW}/")
|
|
)
|
|
end
|
|
|
|
rule 'Move Mediathek Downlads' do
|
|
move(
|
|
dir('~/*{nano,kulturzeit,Abenteuer_Forschung,hitec,Arte,ARD,ZDF,wido}*.{mkv,mp4}'),
|
|
mkdir("~/Videos/Mediathek/")
|
|
)
|
|
end
|
|
|
|
rule 'Move files away from Buffer' do
|
|
move(
|
|
dir('~/Downloads/*.{png,jpg,jpeg,tif,gif,bmp,svg}'),
|
|
mkdir("~/Lager/Downloaded-Pictures/#{NOW}/")
|
|
)
|
|
end
|
|
|
|
rule 'Move ISOs' do
|
|
dir('~/Downloads/*.iso').each do |f|
|
|
name = File.basename(f, ".iso").capitalize
|
|
move(f, mkdir("~/Lager/Images/#{name}/"))
|
|
end
|
|
end
|
|
|
|
rule 'Delete old and partial downloads' do
|
|
dir('~/Downloads/*.{deb,zip,nzb,bin,tgz,tar.gz,xz,gz,bz,jar,txz,dmg,exe,bz2,7z,rpm,part}').each do |path|
|
|
trash(path) if 3.days.since?(modified_at(path))
|
|
end
|
|
end
|
|
|
|
rule 'Delete extracted folders and really old shit' do
|
|
dir('~/Downloads/*').each do |path|
|
|
puts path
|
|
trash(path) if 5.days.since?(modified_at(path)) && File.directory?(path)
|
|
trash(path) if 2.weeks.since?(modified_at(path))
|
|
end
|
|
end
|
|
end
|