ronin-repos 0.1.1 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.document +0 -1
- data/.github/workflows/ruby.yml +3 -2
- data/.gitignore +1 -0
- data/.rubocop.yml +4 -0
- data/.ruby-version +1 -1
- data/ChangeLog.md +15 -0
- data/Gemfile +5 -3
- data/README.md +19 -5
- data/Rakefile +10 -0
- data/data/completions/ronin-repos +139 -0
- data/data/completions/ronin-repos.yml +10 -0
- data/gemspec.yml +11 -2
- data/lib/ronin/repos/cache_dir.rb +1 -1
- data/lib/ronin/repos/class_dir.rb +5 -4
- data/lib/ronin/repos/cli/command.rb +1 -1
- data/lib/ronin/repos/cli/commands/completion.rb +61 -0
- data/lib/ronin/repos/cli/commands/install.rb +2 -2
- data/lib/ronin/repos/cli/commands/list.rb +15 -18
- data/lib/ronin/repos/cli/commands/new.rb +6 -2
- data/lib/ronin/repos/cli/commands/purge.rb +2 -2
- data/lib/ronin/repos/cli/commands/remove.rb +1 -1
- data/lib/ronin/repos/cli/commands/show.rb +93 -0
- data/lib/ronin/repos/cli/commands/update.rb +2 -2
- data/lib/ronin/repos/cli.rb +7 -4
- data/lib/ronin/repos/exceptions.rb +1 -1
- data/lib/ronin/repos/repository.rb +30 -1
- data/lib/ronin/repos/root.rb +1 -1
- data/lib/ronin/repos/version.rb +2 -2
- data/lib/ronin/repos.rb +19 -5
- data/man/ronin-repos-completion.1 +76 -0
- data/man/ronin-repos-completion.1.md +78 -0
- data/man/ronin-repos-install.1 +18 -32
- data/man/ronin-repos-install.1.md +14 -10
- data/man/ronin-repos-list.1 +18 -28
- data/man/ronin-repos-list.1.md +14 -10
- data/man/ronin-repos-new.1 +14 -19
- data/man/ronin-repos-new.1.md +8 -4
- data/man/ronin-repos-purge.1 +17 -28
- data/man/ronin-repos-purge.1.md +12 -8
- data/man/ronin-repos-remove.1 +16 -28
- data/man/ronin-repos-remove.1.md +12 -8
- data/man/ronin-repos-show.1 +48 -0
- data/man/ronin-repos-show.1.md +48 -0
- data/man/ronin-repos-update.1 +17 -31
- data/man/ronin-repos-update.1.md +14 -10
- data/man/ronin-repos.1 +17 -31
- data/man/ronin-repos.1.md +16 -12
- data/scripts/setup +58 -0
- metadata +17 -7
data/man/ronin-repos.1
CHANGED
@@ -1,75 +1,61 @@
|
|
1
|
-
.\" Generated by kramdown-man 0.1
|
1
|
+
.\" Generated by kramdown-man 1.0.1
|
2
2
|
.\" https://github.com/postmodern/kramdown-man#readme
|
3
3
|
.TH ronin-repos 1 "2023-02-01" Ronin Repos "User Manuals"
|
4
|
-
.
|
4
|
+
.SH NAME
|
5
|
+
.PP
|
6
|
+
ronin\-repos \- manages third\-party git repository for ronin\.
|
5
7
|
.SH SYNOPSIS
|
6
|
-
.
|
7
|
-
|
8
|
-
\fBronin-repos\fR \[lB]\fIoptions\fP\[rB] \[lB]\fICOMMAND\fP\[rB]
|
9
|
-
.LP
|
8
|
+
.PP
|
9
|
+
\fBronin\-repos\fR \[lB]\fIoptions\fP\[rB] \[lB]\fICOMMAND\fP\[rB]
|
10
10
|
.SH DESCRIPTION
|
11
|
-
.LP
|
12
11
|
.PP
|
13
|
-
Allows downloading and managing git repositories\. \fBronin
|
12
|
+
Allows downloading and managing git repositories\. \fBronin\-repos\fR can install
|
14
13
|
and use any git repository containing Ruby code or other data\.
|
15
|
-
.LP
|
16
14
|
.SH OPTIONS
|
17
|
-
.LP
|
18
15
|
.TP
|
19
|
-
\fB
|
16
|
+
\fB\-h\fR, \fB\-\-help\fR
|
20
17
|
Prints help information\.
|
21
|
-
.LP
|
22
18
|
.SH COMMANDS
|
23
|
-
.LP
|
24
19
|
.TP
|
25
20
|
\fBinstall\fR
|
26
21
|
Installs a 3rd\-party git repository\.
|
27
|
-
.LP
|
28
22
|
.TP
|
29
23
|
\fBlist\fR, \fBls\fR
|
30
24
|
Lists installed git repositories\.
|
31
|
-
.LP
|
32
25
|
.TP
|
33
26
|
\fBnew\fR
|
34
27
|
Generates a new git repository\.
|
35
|
-
.LP
|
36
28
|
.TP
|
37
29
|
\fBpurge\fR
|
38
30
|
Deletes all installed git repositories\.
|
39
|
-
.LP
|
40
31
|
.TP
|
41
32
|
\fBremove\fR, \fBrm\fR
|
42
33
|
Removes a previously installed git repository\.
|
43
|
-
.LP
|
44
34
|
.TP
|
45
35
|
\fBupdate\fR, \fBup\fR
|
46
36
|
Updates a previously installed git repository\.
|
47
|
-
.LP
|
48
37
|
.SH ENVIRONMENT
|
49
|
-
.LP
|
50
38
|
.TP
|
51
39
|
\fIHOME\fP
|
52
40
|
Specifies the home directory of the user\. Ronin will search for the
|
53
|
-
\fB
|
54
|
-
.LP
|
41
|
+
\fB\[ti]\[sl]\.cache\[sl]ronin\-repos\fR cache directory within the home directory\.
|
55
42
|
.TP
|
56
43
|
\fIXDG\[ru]CACHE\[ru]HOME\fP
|
57
|
-
Specifies the cache directory to use\. Defaults to \fB
|
58
|
-
.LP
|
44
|
+
Specifies the cache directory to use\. Defaults to \fB\[Do]HOME\[sl]\.cache\fR\.
|
59
45
|
.SH FILES
|
60
|
-
.LP
|
61
46
|
.TP
|
62
|
-
\fB
|
47
|
+
\fB\[ti]\[sl]\.cache\[sl]ronin\-repos\fR
|
63
48
|
Installation directory for repositories\.
|
64
|
-
.LP
|
65
49
|
.SH AUTHOR
|
66
|
-
.LP
|
67
50
|
.PP
|
68
51
|
Postmodern
|
69
52
|
.MT postmodern\.mod3\[at]gmail\.com
|
70
53
|
.ME
|
71
|
-
.LP
|
72
54
|
.SH SEE ALSO
|
73
|
-
.LP
|
74
55
|
.PP
|
75
|
-
|
56
|
+
.BR ronin\-repos\-completion (1)
|
57
|
+
.BR ronin\-repos\-install (1)
|
58
|
+
.BR ronin\-repos\-list (1)
|
59
|
+
.BR ronin\-repos\-remove (1)
|
60
|
+
.BR ronin\-repos\-update (1)
|
61
|
+
.BR ronin\-repos\-purge (1)
|
data/man/ronin-repos.1.md
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
# ronin-repos 1 "2023-02-01" Ronin Repos "User Manuals"
|
2
2
|
|
3
|
+
## NAME
|
4
|
+
|
5
|
+
ronin-repos - manages third-party git repository for ronin.
|
6
|
+
|
3
7
|
## SYNOPSIS
|
4
8
|
|
5
9
|
`ronin-repos` [*options*] [*COMMAND*]
|
@@ -12,41 +16,41 @@ and use any git repository containing Ruby code or other data.
|
|
12
16
|
## OPTIONS
|
13
17
|
|
14
18
|
`-h`, `--help`
|
15
|
-
|
19
|
+
: Prints help information.
|
16
20
|
|
17
21
|
## COMMANDS
|
18
22
|
|
19
23
|
`install`
|
20
|
-
|
24
|
+
: Installs a 3rd-party git repository.
|
21
25
|
|
22
26
|
`list`, `ls`
|
23
|
-
|
27
|
+
: Lists installed git repositories.
|
24
28
|
|
25
29
|
`new`
|
26
|
-
|
30
|
+
: Generates a new git repository.
|
27
31
|
|
28
32
|
`purge`
|
29
|
-
|
33
|
+
: Deletes all installed git repositories.
|
30
34
|
|
31
35
|
`remove`, `rm`
|
32
|
-
|
36
|
+
: Removes a previously installed git repository.
|
33
37
|
|
34
38
|
`update`, `up`
|
35
|
-
|
39
|
+
: Updates a previously installed git repository.
|
36
40
|
|
37
41
|
## ENVIRONMENT
|
38
42
|
|
39
43
|
*HOME*
|
40
|
-
|
41
|
-
|
44
|
+
: Specifies the home directory of the user. Ronin will search for the
|
45
|
+
`~/.cache/ronin-repos` cache directory within the home directory.
|
42
46
|
|
43
47
|
*XDG_CACHE_HOME*
|
44
|
-
|
48
|
+
: Specifies the cache directory to use. Defaults to `$HOME/.cache`.
|
45
49
|
|
46
50
|
## FILES
|
47
51
|
|
48
52
|
`~/.cache/ronin-repos`
|
49
|
-
|
53
|
+
: Installation directory for repositories.
|
50
54
|
|
51
55
|
## AUTHOR
|
52
56
|
|
@@ -54,4 +58,4 @@ Postmodern <postmodern.mod3@gmail.com>
|
|
54
58
|
|
55
59
|
## SEE ALSO
|
56
60
|
|
57
|
-
ronin-repos-install(1) ronin-repos-list(1) ronin-repos-remove(1) ronin-repos-update(1) ronin-repos-purge(1)
|
61
|
+
[ronin-repos-completion](ronin-repos-completion.1.md) [ronin-repos-install](ronin-repos-install.1.md) [ronin-repos-list](ronin-repos-list.1.md) [ronin-repos-remove](ronin-repos-remove.1.md) [ronin-repos-update](ronin-repos-update.1.md) [ronin-repos-purge](ronin-repos-purge.1.md)
|
data/scripts/setup
ADDED
@@ -0,0 +1,58 @@
|
|
1
|
+
#!/usr/bin/env bash
|
2
|
+
|
3
|
+
#
|
4
|
+
# Prints a log message.
|
5
|
+
#
|
6
|
+
function log()
|
7
|
+
{
|
8
|
+
if [[ -t 1 ]]; then
|
9
|
+
echo -e "\x1b[1m\x1b[32m>>>\x1b[0m \x1b[1m$1\x1b[0m"
|
10
|
+
else
|
11
|
+
echo ">>> $1"
|
12
|
+
fi
|
13
|
+
}
|
14
|
+
|
15
|
+
#
|
16
|
+
# Prints a warn message.
|
17
|
+
#
|
18
|
+
function warn()
|
19
|
+
{
|
20
|
+
if [[ -t 1 ]]; then
|
21
|
+
echo -e "\x1b[1m\x1b[33m***\x1b[0m \x1b[1m$1\x1b[0m" >&2
|
22
|
+
else
|
23
|
+
echo "*** $1" >&2
|
24
|
+
fi
|
25
|
+
}
|
26
|
+
|
27
|
+
#
|
28
|
+
# Prints an error message.
|
29
|
+
#
|
30
|
+
function error()
|
31
|
+
{
|
32
|
+
if [[ -t 1 ]]; then
|
33
|
+
echo -e "\x1b[1m\x1b[31m!!!\x1b[0m \x1b[1m$1\x1b[0m" >&2
|
34
|
+
else
|
35
|
+
echo "!!! $1" >&2
|
36
|
+
fi
|
37
|
+
}
|
38
|
+
|
39
|
+
#
|
40
|
+
# Prints an error message and exists with -1.
|
41
|
+
#
|
42
|
+
function fail()
|
43
|
+
{
|
44
|
+
error "$@"
|
45
|
+
exit -1
|
46
|
+
}
|
47
|
+
|
48
|
+
# default to installing gems into vendor/bundle
|
49
|
+
if [[ ! -f .bundle/config ]]; then
|
50
|
+
bundle config set --local path vendor/bundle >/dev/null || \
|
51
|
+
fail "Failed to run 'bundle config'"
|
52
|
+
fi
|
53
|
+
|
54
|
+
log "Installing gems ..."
|
55
|
+
bundle install || fail "Failed to run 'bundle install'!"
|
56
|
+
|
57
|
+
log "Setting up the project ..."
|
58
|
+
bundle exec rake setup || "Failed to run 'rake setup'!"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ronin-repos
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Postmodern
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-07-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ronin-core
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '0.
|
19
|
+
version: '0.2'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '0.
|
26
|
+
version: '0.2'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -38,8 +38,9 @@ dependencies:
|
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '2.0'
|
41
|
-
description:
|
42
|
-
accessing third-party git repositories,
|
41
|
+
description: |-
|
42
|
+
ronin-repos provides a repository system for installing, managing, and accessing third-party git repositories, that can contain additional Ruby code or other data. Other Ronin libraries, such as ronin-exploits or ronin-payloads, can then list and load additional third-party Ruby classes from specific directories within the installed third-party reposs.
|
43
|
+
ronin-repos is essentially a decentralized plugin system for Ronin using git repos.
|
43
44
|
email: postmodern.mod3@gmail.com
|
44
45
|
executables:
|
45
46
|
- ronin-repos
|
@@ -62,6 +63,8 @@ files:
|
|
62
63
|
- README.md
|
63
64
|
- Rakefile
|
64
65
|
- bin/ronin-repos
|
66
|
+
- data/completions/ronin-repos
|
67
|
+
- data/completions/ronin-repos.yml
|
65
68
|
- data/templates/repo/README.md.erb
|
66
69
|
- gemspec.yml
|
67
70
|
- lib/ronin/repos.rb
|
@@ -69,16 +72,20 @@ files:
|
|
69
72
|
- lib/ronin/repos/class_dir.rb
|
70
73
|
- lib/ronin/repos/cli.rb
|
71
74
|
- lib/ronin/repos/cli/command.rb
|
75
|
+
- lib/ronin/repos/cli/commands/completion.rb
|
72
76
|
- lib/ronin/repos/cli/commands/install.rb
|
73
77
|
- lib/ronin/repos/cli/commands/list.rb
|
74
78
|
- lib/ronin/repos/cli/commands/new.rb
|
75
79
|
- lib/ronin/repos/cli/commands/purge.rb
|
76
80
|
- lib/ronin/repos/cli/commands/remove.rb
|
81
|
+
- lib/ronin/repos/cli/commands/show.rb
|
77
82
|
- lib/ronin/repos/cli/commands/update.rb
|
78
83
|
- lib/ronin/repos/exceptions.rb
|
79
84
|
- lib/ronin/repos/repository.rb
|
80
85
|
- lib/ronin/repos/root.rb
|
81
86
|
- lib/ronin/repos/version.rb
|
87
|
+
- man/ronin-repos-completion.1
|
88
|
+
- man/ronin-repos-completion.1.md
|
82
89
|
- man/ronin-repos-install.1
|
83
90
|
- man/ronin-repos-install.1.md
|
84
91
|
- man/ronin-repos-list.1
|
@@ -89,11 +96,14 @@ files:
|
|
89
96
|
- man/ronin-repos-purge.1.md
|
90
97
|
- man/ronin-repos-remove.1
|
91
98
|
- man/ronin-repos-remove.1.md
|
99
|
+
- man/ronin-repos-show.1
|
100
|
+
- man/ronin-repos-show.1.md
|
92
101
|
- man/ronin-repos-update.1
|
93
102
|
- man/ronin-repos-update.1.md
|
94
103
|
- man/ronin-repos.1
|
95
104
|
- man/ronin-repos.1.md
|
96
105
|
- ronin-repos.gemspec
|
106
|
+
- scripts/setup
|
97
107
|
homepage: https://ronin-rb.dev
|
98
108
|
licenses:
|
99
109
|
- LGPL-3.0
|
@@ -118,7 +128,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
118
128
|
- !ruby/object:Gem::Version
|
119
129
|
version: '0'
|
120
130
|
requirements: []
|
121
|
-
rubygems_version: 3.
|
131
|
+
rubygems_version: 3.5.11
|
122
132
|
signing_key:
|
123
133
|
specification_version: 4
|
124
134
|
summary: Third-party git repository support for ronin.
|