blob: 92c7e175c65e9c9ec57a10df884d56bf0d5f270c (
plain)
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
|
#!/bin/bash
# The following creates a mixtape data message
# We can extend it by calling the ak-pack_z_block.sh mixtape/add data
ZFILESDIR="$AK_WORKDIR/files"
TEMP="/tmp/aktmp"
PROGRAM="$(basename $0)"
logit(){
ak-logthis "<$PROGRAM>" "$1" "$2"
}
if [ ! -d $ZFILESDIR ]; then
mkdir $ZFILESDIR
if [ $? == 0 ]
then
logit "[INFO]" "Folder $ZFILESDIR created!"
else
logit "[ERROR]" "Failed to create $ZFILESDIR folder"
exit 1
fi
cd $ZFILESDIR
git init
else
logit "[INFO]" "$ZFILESDIR found!"
fi
usage(){
echo "$PROGRAM - file"
}
add(){
CRP="$(pwd)"
FILENAME="$1"
main $FILENAME $CRP
cat $TEMPASSIN/data | jq -M
}
main(){
FILENAME="$1"
CRP="$2"
echo "Adding $FILENAME"
logit "[INFO]" "Switching to tmp folder..."
TEMPASSIN="$(ak-tempassin)"
cd $TEMPASSIN
if [ $? == 0 ]; then
logit "[INFO]" "Success"
else
logit "[ERROR]" "Error with tmp folder"
exit 5
fi
logit "[INFO]" "Copying $1 to $TEMPASSIN"
cp $2/$1 $TEMPASSIN/$1
if [ $? == 0 ]; then
logit "[INFO]" "Copied successfully"
else
logit "[ERROR]" "Error copying..."
fi
FILE="$TEMPASSIN/$1"
logit "[INFO]" "Adding $FILE to IPFS..."
FILE_IPFS_HASH=$(ak-ipfs-add $FILE)
if [ $? == 0 ]; then
logit "[INFO]" "Added $FILE to IPFS"
else
logit "[ERROR]" "Error in adding the $FILE to IPFS"
fi
logit "[INFO]" "Signing..."
SIGN_FILE=$FILENAME".asc"
gpg2 --detach-sign --sign-with $FINGERPRINT --armor --output $SIGN_FILE $FILE
if [ $? == 0 ]; then
logit "[INFO]" "Signed"
else
logit "[ERROR]" "Error while signing"
fi
logit "[INFO]" "Adding signature to IPFS"
SIGNATURE=$(ak-ipfs-add $TEMPASSIN/$SIGN_FILE)
if [ $? == 0 ]; then
logit "[INFO]" "Added"
else
logit "[ERROR]" "Error while adding"
fi
cat > $TEMPASSIN/data <<EOF
{
"timestamp":"$(date -u +%s)",
"filename":"$FILENAME",
"ipfs":"$FILE_IPFS_HASH",
"detach":"$SIGNATURE"
}
EOF
echo "Printing data..."
cat $TEMPASSIN/data
echo "Publishing..."
ak-pack_z_block files/add data
if [ $? == 0 ]
then
echo "cool"
else
echo "not?"
exit 2
fi
}
if [ ! -z $1 ]; then
case $1 in
help) usage; exit;;
add) add $2; exit;;
*) usage; exit;;
esac
else usage
fi
|