-
Notifications
You must be signed in to change notification settings - Fork 405
/
licenses.sh
executable file
·60 lines (49 loc) · 1.38 KB
/
licenses.sh
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
#!/bin/bash
license() {
apache=$(grep -rs "Apache License, Version 2.0" vendor/$1)
if [[ ! -z $apache ]]; then
echo "$1 Apache 2.0"
return
fi
bsd_file=$(grep -lrs "Redistribution and use in source and binary forms, with or without" vendor/$1 | head -n 1)
if [[ ! -z $bsd_file ]]; then
bsd3=$(grep "this software without specific prior written permission" $bsd_file)
if [[ ! -z $bsd3 ]]; then
echo "$1 BSD 3"
else
echo "$1 BSD 2"
fi
return
fi
mit=$(grep -rs "Permission is hereby granted, free of charge" vendor/$1)
if [[ ! -z $mit ]]; then
echo "$1 MIT"
return
fi
moz=$(grep -rs "Mozilla Public License" vendor/$1)
if [[ ! -z $moz ]]; then
echo "$1 Mozilla Public License 2.0"
return
fi
isc=$(grep -rs "Permission to use, copy, modify, and distribute this software for any" vendor/$1)
if [[ ! -z $isc ]]; then
echo "$1 ISC License"
return
fi
unlicense=$(grep -rs "This is free and unencumbered software released into the public domain." vendor/$1)
if [[ ! -z $unlicense ]]; then
echo "$1 Unlicense"
return
fi
cc=$(grep -rs "creativecommons" vendor/$1)
if [[ ! -z $cc ]]; then
echo "$1 Creative Commons"
return
fi
# TODO others
echo "$1 No License Found"
}
deps=$(cat Gopkg.lock | grep -E 'name.*=.*"' | awk '{print $3}' | tr -d '"')
for dep in $deps; do
license $dep
done