class FileDiscard::LinuxDiscarder
Public Class Methods
new(home = '~')
click to toggle source
Calls superclass method
FileDiscard::Discarder::new
# File lib/file_discard.rb, line 212 def initialize(home = '~') super home, '.local/share/Trash/files', '.Trash-%s/files' end
Private Instance Methods
move(*args)
click to toggle source
Linux has a special layout for the trash folder and tracking for restore. See www.freedesktop.org/wiki/Specifications/trash-spec/
Calls superclass method
FileDiscard::Discarder#move
# File lib/file_discard.rb, line 219 def move(*args) super do |src, dst| infodir = dst.dirname.dirname.join('info') infodir.directory? or infodir.mkpath infodir.join("#{dst.basename}.trashinfo").open('w') do |io| io.write <<EOF [Trash Info] Path=#{src} DeletionDate=#{Time.now.strftime('%Y-%m-%dT%H:%M:%S')} EOF end end end