summaryrefslogtreecommitdiff
path: root/man/asp32.1.txt
blob: 50ef80c30fd0396128aec316345316afc37c07c8 (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
125
126
127
128
129
130
131
/////
vim:set ts=4 sw=4 syntax=asciidoc noet:
/////
asp32(1)
========

Name
----
asp32 - Manage Arch Linux 32 build sources

Synopsis
--------
asp32 [options] command [targets...]

Description
-----------
The original script can be found at https://github.com/falconindy/asp.
This is a fork for the specific needs of the Archlinux32 project
(https://www.archlinux32.org).

Manage the version-controlled sources for the build scripts used to create Arch
Linux 32 packages. This program provides a thin wrapper over the svntogit
repositories hosted at https://git.archlinux.org and https://git.archlinux32.org/archlinux32/packages.
It aims to provide a replacement for abs which favors a sparse checkout.

Commands
--------
The following commands are understood:

*checkout* 'TARGET'...::
	Create a new git repository containing the full source and history
	for each of the given targets. The new repository will pull from the
	repository in '$ASPROOT' and must be updated separately after using
	'asp32 update'. If a checkout occurs on the same filesystem as '$ASPROOT',
	most of the metadata can be hard linked, making this a relatively cheap
	copy.

*difflog* 'TARGET'::
	Show the full revision history of the target, with file diffs.

*disk-usage*::
	Report the approximate disk usage for locally tracked packages.

*export* 'TARGET'...::
	Dump the build source files for each target into a directory of the
	target's name in '$PWD'. Targets can be specified simply as 'package' to
	check out the source files at HEAD, or in 'repository/package' format
	to checkout the source files which were used to push the 'package' which
	exists in 'repository'.

*gc*::
	Perform housekeeping procedures on the local repo, optimizing and
	compacting the repo to free disk space.

*help*::
	Display the command line usage and exit.

*list-all*::
	List all known packages in the repositories.

*list-arches* 'TARGET'...::
	List the architectures the given targets are available for.

*list-local*::
	List all packages which are tracked locally.

*list-repos* 'TARGET'...::
	List the repositories the given targets exist in.

*log* 'TARGET'::
	Show the revision history of the target.

*ls-files* 'TARGET'::
	List source files for the given target.

*set-git-protocol* 'PROTOCOL'::
	Set the protocol used to communicate with the remote git repositories. Must
	be one of 'git', 'http', or 'https'.

*shortlog* 'TARGET'::
	Show a condensed revision history of the target.

*show* 'TARGET' ['FILE']::
	Show the file content of the target, which may be in the format 'package'
	or 'repository/package'. If an additional 'file' argument is provided, attempt
	to display that file rather than the PKGBUILD. If the repository is not
	specified, the file will be shown at the most recent revision (which may be
	newer than what is in the repositories).

*untrack* 'TARGET'...::
	Remove a remote tracking branch from the local repository. Disk usage for
	the removed package(s) may not be freed until garbage collection has taken
	place.

*update* ['TARGET'...]::
	For each target, if the package is not known to the local repository,
	attempt to track it. If the package is tracked, update the package
	to the newest version. If no targets are provided, all locally known
	packages will be updated.

Options
-------
*-a* 'architecture'::
	When relevant, specify an architecture other than that of the current host.

*-f*::
	Allow files to be overwritten.

*-h*::
	Print a short help text and exit.

*-V*::
	Print a short version string and exit.

Environment
-----------
*ASPROOT*::
	Determines where the metadata is stored for locally tracked packages. Defaults
	to '`${XDG_CACHE_HOME:-$HOME/.cache}/asp32`'.

*ASPCACHE*::
	Determines where cached data is stored. Defaults to '$ASPROOT/cache'. Data in
	this directory can always be safely deleted.

Authors
-------
Dave Reisner <d@falconindy.com>

Motifications for Archlinux32
-----------------------------
Andreas Baumann <mail@andreasbaumann.cc>