-
Notifications
You must be signed in to change notification settings - Fork 1
/
README
151 lines (107 loc) · 4.2 KB
/
README
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
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
Copyright (C) 2010-2024 Jason Woodward <woodwardj at jaos dot org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Library General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
Table of Contents:
1. About
2. Features
3. Requirements
4. Installation
5. slapt-srcrc
6. SLACKBUILDS.TXT
7. Troubleshooting
8. Thanks and contributions
1. About
slapt-src is a utility to make querying, retrieving, and building slackbuilds as
easy as working with binary packages with slapt-get.
2. Features
* Remote and local SlackBuild repository support
* fast
* more
3. Requirements
* slapt-get
* curl
4. Installation
You can install via meson or autotools (deprecated).
* Meson
meson setup build # or any dir of your choosing
meson compile -C build # or `ninja -C build` for older meson releases
meson install -C build # or `ninja -C build install` for older meson releases
Meson/ninja supports `DESTDIR=/path meson install -C build`
TIP:
slapt-src.Slackbuild will create a Slackware package.
Run with sudo or as a privileged user.
* autotools (deprecated)
./autogen.sh # if building from git
./configure
make
make install # as privileged user
The Makefile honors DESTDIR.
TIP:
`make pkg` (as privileged user) will create a Slackware package.
5. slapt-srcrc
The slapt-srcrc file consists of the following keys:
* SOURCE
* BUILDDIR
* PKGEXT
* PKGTAG
Refer to the slapt-src(8) man page for more on the configuration format and options.
Source should point to a local or remote SlackBuild repository that contains
the necessary meta data. See SLACKBUILDS.TXT below.
6. SLACKBUILDS.TXT
The following script can generate the currently supported format of SLACKBUILDS.TXT.
The filename and format are likely to change.
#!/bin/bash
set -e
for sb in $(find . -name '*.SlackBuild' | sort)
do
name=$(basename $sb | sed -re 's/\.SlackBuild$//')
location=$(dirname $sb)
if [ -f $location/$name.info ]; then
echo "SLACKBUILD NAME: $name"
echo "SLACKBUILD LOCATION: $location"
files=$(cd $location && find . -type f -printf '%P\n' | sort | xargs)
echo "SLACKBUILD FILES: $files"
# remove those pesky multi line listings for each interesting field
TMP=$(mktemp)
sed ':a;N;$!ba;s/\\\n*\s*//g' $location/$name.info > $TMP
DOWNLOAD=$(grep ^DOWNLOAD= $TMP | cut -f2 -d\" )
DOWNLOAD_x86_64=$(grep ^DOWNLOAD_x86_64= $TMP | cut -f2 -d\" )
MD5SUM=$(grep ^MD5SUM= $TMP | cut -f2 -d\" )
MD5SUM_x86_64=$(grep ^MD5SUM_x86_64= $TMP | cut -f2 -d\" )
VERSION=$(grep ^VERSION= $TMP | cut -f2 -d\" )
echo "SLACKBUILD VERSION: $VERSION"
echo "SLACKBUILD DOWNLOAD: $DOWNLOAD"
echo "SLACKBUILD DOWNLOAD_x86_64: $DOWNLOAD_x86_64"
echo "SLACKBUILD MD5SUM: $MD5SUM"
echo "SLACKBUILD MD5SUM_x86_64: $MD5SUM_x86_64"
if [ -f $location/slack-desc ]; then
SHORTDESC=$(grep ^$name: $location/slack-desc | head -n 1 | sed -re "s/^$name://")
echo "SLACKBUILD SHORT DESCRIPTION: $SHORTDESC"
else
echo "SLACKBUILD SHORT DESCRIPTION: "
fi
echo
rm -f $TMP
fi
done > SLACKBUILDS.TXT
gzip -9 SLACKBUILDS.TXT -c > SLACKBUILDS.TXT.gz
# END
7. Troubleshooting
There are likely a lot of bugs. Email bug reports to me:
Jason Woodward <woodwardj at jaos dot org>
Or create issues on Github:
https://github.com/jaos/slapt-src/issues
8. Thanks and contributions
Thanks to the guys from #gsb on freenode for ideas and conceptual discussions.
Thanks to Darren 'Tadgy' Austin and the sponsors File-away Limited
(http://www.file-away.co.uk) and UK2.NET (http://www.uk2.net) for
mirroring slackbuilds.org.