blob: 3c7327bb12f867f01cae88ba844f65b7ec7357f2 (
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
113
114
115
116
117
118
119
120
121
122
123
124
|
#!/bin/bash
set -e
shopt -s extglob nullglob
PKG_BASE=$(dirname "$(realpath "$0")")
cd "${PKG_BASE}"
PKG_RVSN=282
PKG_REPO=/dat/web/beta.apt.saurik.com
for PKG_ARCH in "${PKG_BASE}/arch"/*; do
PKG_ARCH=$(basename "${PKG_ARCH}")
echo "scanning ${PKG_ARCH}"
PKG_DCBF=${PKG_REPO}/dists/tangelo/main/binary-${PKG_ARCH}
mkdir -p "${PKG_DCBF}"
PKG_PKGS=${PKG_DCBF}/Packages
rm -rf "${PKG_BASE}/link"
mkdir "${PKG_BASE}/link"
for package in "${PKG_BASE}/data"/!(*_); do
PKG_NAME=$(basename "${package}")
# XXX: add to above filter
if [[ ${PKG_NAME} == _* ]]; then
continue
fi
PKG_DATA="${PKG_BASE}/data/${PKG_NAME}"
PKG_STAT="${PKG_BASE}/stat/${PKG_ARCH}/${PKG_NAME}"
PKG_PRIO=$(cat "${PKG_DATA}/_metadata/priority")
if [[ -e ${PKG_STAT}/fail ]]; then
continue
fi
echo "${PKG_NAME}" "${PKG_PRIO#+}" "$(cat "${PKG_DATA}/_metadata/section")"
PKG_FILE=${PKG_BASE}/stat/${PKG_ARCH}/${PKG_NAME}/dest-ver
if [[ -e ${PKG_FILE} ]]; then
PKG_REAL=${PKG_BASE}/stat/${PKG_ARCH}/${PKG_NAME}/real-ver
if [[ -e ${PKG_REAL} ]]; then
PKG_RVER=$(cat "${PKG_REAL}")
else
PKG_RVER=$(cat "${PKG_STAT}/data-ver")-$(cat "${PKG_FILE}")
fi
PKG_FILE=${PKG_BASE}/debs/${PKG_NAME}_${PKG_RVER}_${PKG_ARCH}.deb
if [[ -e ${PKG_FILE} && ! -e "${PKG_STAT}/exclude" ]]; then
ln -s "${PKG_FILE}" "${PKG_BASE}/link"
echo "${PKG_FILE}"
fi
fi
done >"${PKG_BASE}/overrides.txt"
for deb in "${PKG_BASE}/xtra/${PKG_ARCH}"/*.deb; do
ln -s "$(readlink -f "${deb}")" "${PKG_BASE}/link"
done
dpkg-scanpackages -m link "${PKG_BASE}/overrides.txt" | sed -e 's/: link\//: debs\//' | while IFS= read -r line; do
if [[ ${line} == '' ]]; then
PKG_TAGS=$(cat "${PKG_BASE}/tags/${PKG_NAME}" 2>/dev/null || true)
if [[ -z ${PKG_TAGS} ]]; then
PKG_TAGS=$(cat "${PKG_BASE}/data/${PKG_NAME}/_metadata/tags" 2>/dev/null || true)
fi
PKG_ROLE="${PKG_BASE}/data/${PKG_NAME}/_metadata/role"
if [[ -n ${PKG_TAGS} || -e ${PKG_ROLE} ]]; then
echo -n "Tag: "
if [[ -n ${PKG_TAGS} ]]; then
echo -n "${PKG_TAGS}"
fi
if [[ -n ${PKG_TAGS} && -e ${PKG_ROLE} ]]; then
echo -n ", "
fi
if [[ -e ${PKG_ROLE} ]]; then
echo -n "role::$(cat "${PKG_ROLE}")"
fi
echo
fi
elif [[ ${line} == Package:* ]]; then
PKG_NAME=${line#Package: }
fi
echo "${line}"
done >"${PKG_PKGS}"
if [[ ${PKG_ARCH} == "iphoneos-arm" ]]; then
dpkg-scanpackages paid >>"${PKG_PKGS}"
fi
rm -f "${PKG_BASE}/overrides.txt"
done
for PKG_ARCH in "${PKG_BASE}/arch"/*; do
PKG_ARCH=$(basename "${PKG_ARCH}")
PKG_PKGS=${PKG_REPO}/dists/tangelo/main/binary-${PKG_ARCH}/Packages
bzip2 -c "${PKG_PKGS}" >"${PKG_PKGS}.bz2"
done
cd "${PKG_REPO}/dists/tangelo"
{
cat <<EOF
Origin: Telesphoreo Tangelo
Label: Cydia/Telesphoreo
Suite: stable
Version: 1.0r${PKG_RVSN}
Codename: tangelo-3.7
Architectures:$(for PKG_ARCH in "${PKG_BASE}/arch"/*; do echo -n " $(basename "${PKG_ARCH}")"; done)
Components: main
Description: Distribution of Unix Software for iPhoneOS 3
Support: http://cydia.saurik.com/support/*
MD5Sum:
EOF
find */* -type f | while read -r line; do
echo " $(md5sum "${line}" | cut -d ' ' -f 1) $(du -b "${line}" | cut -d $'\t' -f 1) ${line}"
done
} >"Release"
rm -f Release.gpg
gpg -abs -o Release.gpg Release
|