-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrakefile
39 lines (32 loc) · 1 KB
/
rakefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# Actions for ruby project Songe
task default: [:clean]
desc "Remove the signature files"
task :clean do
puts "Cleaning packages"
`rm test.txt* SHASUM*`
end
desc "Install all dependencies"
task :install do
puts "Installing deps (Ubuntu)"
puts `sudo apt install libsodium23`
puts `sudo gem install rbnacl highline base32 digest-crc strong_password`
end
desc "Sign the files"
task :sign do
puts "Signing songe/songev (please enter the passphrase)"
puts `sha256sum songe songev > SHASUM && ./songe --embed --sign SHASUM && rm SHASUM`
end
desc "Verify the checksums of scripts"
task :verify do
puts "Verifying songe/songev"
puts `./songev SHASUM | sha256sum --check`
end
desc "Test a songe signature and verification"
task :test do
`echo "Lorem ipsum dolor sit amet... et patati, et patata." > test.txt`
puts "Testing signature (please enter the passphrase)"
puts `./songe --sign test.txt`
puts "\nTesting verification"
puts `./songe --verbose --verify test.txt`
puts `./songev test.txt`
end