rbt 0.11.89 → 0.11.90
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of rbt might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/README.md +11 -26
- data/bin/root_prefix +7 -0
- data/lib/rbt/installer/initialize.rb +183 -0
- data/lib/rbt/installer/installer.rb +1 -165
- data/lib/rbt/installer/menu.rb +29 -23
- data/lib/rbt/installer/misc.rb +45 -38
- data/lib/rbt/version/version.rb +1 -1
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: af4d517980d3772b2a6f2549de98c1d96086b0c998972817ef2fc02edf203767
|
4
|
+
data.tar.gz: 8f0641bbcb97969c6c7a6e8ad75cd3414329e08a35521bbdec5d96450569f739
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c830b7427fe4a6c7dfac0f480e306ba514b58698eb257467f0c0574548732ac8dc143714e40b72b854ecfec0ac1e1cf83abf7abdcf403cb6397dbabfee5d3b2d
|
7
|
+
data.tar.gz: f8e1259be1977afbccee7ec069144929c384c944cc9bd2b830a8291106799451a0e88d22c362ef3bb3bf40b3f9ba0ed7d743fb04e5d17c4d3a120482bad47528
|
data/README.md
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
[](https://www.ruby-lang.org/en/)
|
6
6
|
[](https://badge.fury.io/rb/rbt)
|
7
7
|
|
8
|
-
This gem was <b>last updated</b> on the <span style="color: darkblue; font-weight: bold">15.03.2023</span> (dd.mm.yyyy notation), at <span style="color: steelblue; font-weight: bold">
|
8
|
+
This gem was <b>last updated</b> on the <span style="color: darkblue; font-weight: bold">15.03.2023</span> (dd.mm.yyyy notation), at <span style="color: steelblue; font-weight: bold">18:08:44</span> o'clock.
|
9
9
|
|
10
10
|
## RBT - The "Ruby Build Tools" Project
|
11
11
|
|
@@ -2616,6 +2616,7 @@ directory:
|
|
2616
2616
|
report_host_cpu
|
2617
2617
|
report_mate_desktop_version
|
2618
2618
|
report_total_size_of_all_archives
|
2619
|
+
root_prefix
|
2619
2620
|
ruby_libtool
|
2620
2621
|
run_make_then_make_install
|
2621
2622
|
scookie
|
@@ -9264,22 +9265,6 @@ that can occur during compilation.
|
|
9264
9265
|
The following programs were updated with this release,
|
9265
9266
|
compared to the previous release:
|
9266
9267
|
|
9267
|
-
linux was updated to program version 6.2.6 (on: 13.03.2023-19:21:23)<br>
|
9268
|
-
pip was updated to program version 23.0.1 (on: 14.03.2023-00:30:16)<br>
|
9269
|
-
icewm was updated to program version 3.3.2 (on: 14.03.2023-00:41:47)<br>
|
9270
|
-
setuptools was updated to program version 67.6.0 (on: 14.03.2023-01:09:23)<br>
|
9271
|
-
git was updated to program version 2.40.0 (on: 14.03.2023-07:42:37)<br>
|
9272
|
-
tdb was updated to program version 1.4.8 (on: 15.03.2023-06:16:05)<br>
|
9273
|
-
php was updated to program version 8.2.4 (on: 15.03.2023-06:51:21)<br>
|
9274
|
-
cmake was updated to program version 3.26.0 (on: 15.03.2023-07:04:00)<br>
|
9275
|
-
gtk was updated to program version 4.10.1 (on: 15.03.2023-07:09:17)<br>
|
9276
|
-
gtk was updated to program version 4.10.1 (on: 15.03.2023-07:26:43)<br>
|
9277
|
-
openssl was updated to program version 3.1.0 (on: 15.03.2023-07:40:02)<br>
|
9278
|
-
libxt was updated to program version 1.2.1 (on: 15.03.2023-08:48:11)<br>
|
9279
|
-
ccache was updated to program version 4.8.0 (on: 15.03.2023-15:58:09)<br>
|
9280
|
-
ccache was updated to program version 4.8 (on: 15.03.2023-15:59:07)<br>
|
9281
|
-
gobjectintrospection was updated to program version 1.76.0 (on: 15.03.2023-16:00:07)<br>
|
9282
|
-
|
9283
9268
|
|
9284
9269
|
## Available program versions
|
9285
9270
|
|
@@ -10505,7 +10490,7 @@ castlecombat 0.8.1 28 Jul 2016 http://prdownloads.sourcefor
|
|
10505
10490
|
caxlsx 3.2.0 27 May 2022 https://rubygems.org/downloads/caxlsx-3.2.0.gem
|
10506
10491
|
cbase 1.3.7 28 Sep 2019 http://www.hyperrealm.com/packages/cbase-1.3.7.tar.gz
|
10507
10492
|
cbindgen 0.24.3 11 Sep 2022 https://github.com/eqrion/cbindgen/archive/v0.24.3/cbindgen-0.24.3.tar.gz
|
10508
|
-
ccache 4.
|
10493
|
+
ccache 4.8 15 Mar 2023 https://github.com/ccache/ccache/releases/download/v4.8/ccache-4.8.tar.gz
|
10509
10494
|
ccaudio2 2.2.0 19 Mar 2019 http://ftp.gnu.org/pub/gnu/ccaudio/ccaudio2-2.2.0.tar.gz
|
10510
10495
|
ccmath 2.2.1 01 Jun 2014 http://www.ibiblio.org/pub/Linux/libs/ccmath-2.2.1.tar.gz
|
10511
10496
|
cdemuclient 3.2.1 27 Jun 2020 http://downloads.sourceforge.net/cdemu/cdemu-client-3.2.1.tar.bz2
|
@@ -10577,7 +10562,7 @@ cluttergst 3.0.27 07 Feb 2019 http://ftp.gnome.org/pub/gno
|
|
10577
10562
|
cluttergtk 1.8.4 09 Aug 2017 http://ftp.gnome.org/pub/gnome/sources/clutter-gtk/1.8/clutter-gtk-1.8.4.tar.xz
|
10578
10563
|
cluttergtkmm 1.6.0 18 Mar 2015 http://ftp.gnome.org/pub/GNOME/sources/clutter-gtkmm/1.6/clutter-gtkmm-1.6.0.tar.xz
|
10579
10564
|
cluttermm 1.17.3 01 May 2014 http://ftp.gnome.org/pub/GNOME/sources/cluttermm/1.17/cluttermm-1.17.3.tar.xz
|
10580
|
-
cmake 3.
|
10565
|
+
cmake 3.26.0 15 Mar 2023 https://github.com/Kitware/CMake/releases/download/v3.26.0/cmake-3.26.0.tar.gz
|
10581
10566
|
cmark 0.29.0 26 May 2020 https://github.com/commonmark/cmark/archive/0.29.0.tar.gz
|
10582
10567
|
cmdftp 0.9.7 01 Jun 2014 http://download.savannah.nongnu.org/releases/cmdftp/cmdftp-0.9.7.tar.gz
|
10583
10568
|
cmdparse 3.0.7 06 Mar 2021 https://rubygems.org/downloads/cmdparse-3.0.7.gem
|
@@ -11249,7 +11234,7 @@ gnuuid 0.5.1 14 Oct 2018 https://rubygems.org/downloa
|
|
11249
11234
|
go 1.4.2 19 May 2015 https://storage.googleapis.com/golang/go1.4.2.src.tar.gz
|
11250
11235
|
gob2 2.0.20 01 Dec 2013 http://ftp.gnome.org/pub/GNOME/sources/gob2/2.0/gob2-2.0.20.tar.xz
|
11251
11236
|
gobby 0.5.0 02 Jun 2018 http://releases.0x539.de/gobby/gobby-0.5.0.tar.gz
|
11252
|
-
gobjectintrospection 1.
|
11237
|
+
gobjectintrospection 1.76.0 15 Mar 2023 https://download.gnome.org/sources/gobject-introspection/1.76/gobject-introspection-1.76.0.tar.xz
|
11253
11238
|
gocr 0.47 02 Aug 2017 https://sourceforge.net/projects/jocr/files/gocr/0.47/gocr-0.47.tar.gz
|
11254
11239
|
god 0.13.7 03 Sep 2022 https://rubygems.org/downloads/god-0.13.7.gem
|
11255
11240
|
goffice 0.10.54 23 Jan 2023 https://download.gnome.org/sources/goffice/0.10/goffice-0.10.54.tar.xz
|
@@ -11327,7 +11312,7 @@ gstrtspserver 1.4.5 02 Mar 2015 http://gstreamer.freedesktop
|
|
11327
11312
|
gsview 4.9 01 Jun 2014 http://mirror.cs.wisc.edu/pub/mirrors/ghost/ghostgum/gsview-4.9.tar.gz
|
11328
11313
|
gtef 1.99.2 12 Mar 2017 http://ftp.gnome.org/pub/GNOME/sources/gtef/1.99/gtef-1.99.2.tar.xz
|
11329
11314
|
gthumb 3.12.2 04 Apr 2022 https://download.gnome.org/sources/gthumb/3.12/gthumb-3.12.2.tar.xz
|
11330
|
-
gtk 4.10.
|
11315
|
+
gtk 4.10.1 15 Mar 2023 https://download.gnome.org/sources/gtk/4.10/gtk-4.10.1.tar.xz
|
11331
11316
|
gtk+ 3.24.37 04 Mar 2023 https://download.gnome.org/sources/gtk+/3.24/gtk+-3.24.37.tar.xz
|
11332
11317
|
gtkam 0.2.0 01 Apr 2014 http://sourceforge.net/projects/gphoto/files/gtkam/0.2.0/gtkam-0.2.0.tar.gz
|
11333
11318
|
gtkchtheme 0.3.1 01 Dec 2012 http://plasmasturm.org/code/gtk-chtheme/gtk-chtheme-0.3.1.tar.bz2
|
@@ -12258,7 +12243,7 @@ libxscrnsaver 1.2.4 05 Dec 2022 https://www.x.org/releases/i
|
|
12258
12243
|
libxshmfence 1.3.2 12 Dec 2022 https://www.x.org/releases/individual/lib/libxshmfence-1.3.2.tar.xz
|
12259
12244
|
libxslt 1.1.37 03 Sep 2022 https://download.gnome.org/sources/libxslt/1.1/libxslt-1.1.37.tar.xz
|
12260
12245
|
libxspf 1.2.0 16 Feb 2017 http://downloads.xiph.org/releases/xspf/libxspf-1.2.0.tar.bz2
|
12261
|
-
libxt 1.2.
|
12246
|
+
libxt 1.2.1 15 Mar 2023 https://www.x.org/releases/individual/lib/libXt-1.2.1.tar.bz2
|
12262
12247
|
libxtst 1.2.4 28 Sep 2022 https://www.x.org/releases/individual/lib/libXtst-1.2.4.tar.gz
|
12263
12248
|
libxv 1.0.12 05 Dec 2022 https://www.x.org/releases/individual/lib/libXv-1.0.12.tar.gz
|
12264
12249
|
libxvmc 1.0.13 28 Mar 2022 https://www.x.org/releases/individual/lib/libXvMC-1.0.13.tar.gz
|
@@ -12672,7 +12657,7 @@ npth 1.6 30 Jul 2018 ftp://ftp.gnupg.org/gcrypt/n
|
|
12672
12657
|
nsd 4.2.1 11 Jul 2019 https://www.nlnetlabs.nl/downloads/nsd/nsd-4.2.1.tar.gz
|
12673
12658
|
nspluginwrapper 1.2.2 01 Jun 2014 http://gwenole.beauchesne.info/projects/nspluginwrapper/files/nspluginwrapper-1.2.2.tar.bz2
|
12674
12659
|
nspr 4.35 17 Sep 2022 https://archive.mozilla.org/pub/nspr/releases/v4.35/src/nspr-4.35.tar.gz
|
12675
|
-
nss 3.
|
12660
|
+
nss 3.89 15 Mar 2023 https://archive.mozilla.org/pub/security/nss/releases/NSS_3_89_RTM/src/nss-3.89.tar.gz
|
12676
12661
|
31 Oct 2022 https://tuxera.com/opensource/ntfs-3g_ntfsprogs-2022.10.3.tgz
|
12677
12662
|
ntp 4.2.8p15 24 Jun 2020 https://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-4.2.8p15.tar.gz
|
12678
12663
|
ntrack 017 09 Jul 2015 https://launchpad.net/ntrack/main/017/+download/ntrack-017.tar.gz
|
@@ -12724,7 +12709,7 @@ openshot 1.4.3 01 Jun 2014 http://launchpad.net/opensho
|
|
12724
12709
|
openshotqt 2.5.1 03 Mar 2020 https://github.com/OpenShot/openshot-qt/archive/v2.5.1.tar.gz
|
12725
12710
|
opensp 1.5.2 01 Jun 2014 http://ovh.dl.sourceforge.net/sourceforge/openjade/OpenSP-1.5.2.tar.gz
|
12726
12711
|
openssh 9.2p1 02 Feb 2023 https://ftp3.usa.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-9.2p1.tar.gz
|
12727
|
-
openssl 3.0
|
12712
|
+
openssl 3.1.0 15 Mar 2023 https://ftp.openssl.org/source/openssl-3.1.0.tar.gz
|
12728
12713
|
openssn 1.3 01 Dec 2012 http://sourceforge.net/projects/openssn/files/openssn-1.3/openssn-1.3.tar.gz
|
12729
12714
|
openttd 1.10.3 11 Aug 2020 https://cdn.openttd.org/openttd-releases/1.10.3/openttd-1.10.3-source.tar.xz
|
12730
12715
|
openvpn 2.6.1 10 Mar 2023 https://swupdate.openvpn.org/community/releases/openvpn-2.6.1.tar.gz
|
@@ -12826,7 +12811,7 @@ phodav 3.0 02 Jul 2022 https://download.gnome.org/s
|
|
12826
12811
|
phonon 4.11.1 28 Sep 2019 https://download.kde.org/stable/phonon/4.11.1/phonon-4.11.1.tar.xz
|
12827
12812
|
phononbackendgstreamer 4.9.0 13 Oct 2017 http://download.kde.org/stable/phonon/phonon-backend-gstreamer/4.9.0/phonon-backend-gstreamer-4.9.0.tar.xz
|
12828
12813
|
phononbackendvlc 0.11.2 07 Feb 2021 https://download.kde.org/stable/phonon/phonon-backend-vlc/0.11.2/phonon-backend-vlc-0.11.2.tar.xz
|
12829
|
-
php 8.2.
|
12814
|
+
php 8.2.4 15 Mar 2023 https://www.php.net/distributions/php-8.2.4.tar.xz
|
12830
12815
|
phpbb 3.2.3 30 Sep 2018 https://www.phpbb.com/files/release/phpBB-3.2.3.zip
|
12831
12816
|
phpunit 6.3 24.09.2017 https://phar.phpunit.de/phpunit-6.3.phar
|
12832
12817
|
phpwiki 1.5.5 02 Aug 2017 https://sourceforge.net/projects/phpwiki/files/PhpWiki%201.5%20%28current%29/phpwiki-1.5.5.zip
|
@@ -13423,7 +13408,7 @@ tcc 0.9.26 01 Aug 2013 http://download.savannah.gnu
|
|
13423
13408
|
tcl 8.6.13 16 Nov 2022 https://sourceforge.net/projects/tcl/files/Tcl/8.6.13/tcl8.6.13rc2-src.tar.gz
|
13424
13409
|
tcpdump 4.99.2 31 Dec 2022 http://www.tcpdump.org/release/tcpdump-4.99.2.tar.gz
|
13425
13410
|
tcsh 6.24.07 25 Dec 2022 https://astron.com/pub/tcsh/tcsh-6.24.07.tar.gz
|
13426
|
-
tdb 1.4.
|
13411
|
+
tdb 1.4.8 15 Mar 2023 https://www.samba.org/ftp/tdb/tdb-1.4.8.tar.gz
|
13427
13412
|
tea 44.1.0 18 Jul 2017 http://semiletov.org/tea/dloads/tea-44.1.0.tar.bz2
|
13428
13413
|
ted 2.21.src 01 May 2014 ftp://ftp.nluug.nl/pub/editors/ted/ted-2.21.src.tar.gz
|
13429
13414
|
telegnome 0.3.6 30 Aug 2021 https://download.gnome.org/sources/telegnome/0.3/telegnome-0.3.6.tar.xz
|
data/bin/root_prefix
ADDED
@@ -0,0 +1,183 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'rbt/installer/initialize.rb'
|
6
|
+
# =========================================================================== #
|
7
|
+
require 'rbt/compile_base/compile_base.rb'
|
8
|
+
|
9
|
+
module RBT
|
10
|
+
|
11
|
+
class Installer < ::RBT::CompileBase # === RBT::Compile
|
12
|
+
|
13
|
+
# ========================================================================= #
|
14
|
+
# === initialize
|
15
|
+
#
|
16
|
+
# The first argument to this method will contain the commandline arguments
|
17
|
+
# for class RBT::Install. These are usually the name of the program
|
18
|
+
# (or programs) that you wish to compile.
|
19
|
+
#
|
20
|
+
# So, for example, "htop" could be passed as the first argument to
|
21
|
+
# this method. You can also pass in an Array here, and this class
|
22
|
+
# will then attempt to batch-compile these programs.
|
23
|
+
# ========================================================================= #
|
24
|
+
def initialize(
|
25
|
+
commandline_arguments = ARGV, # ← This should usually be an Array of programs that should be installed.
|
26
|
+
run_already = true
|
27
|
+
)
|
28
|
+
register_sigint
|
29
|
+
reset
|
30
|
+
# ======================================================================= #
|
31
|
+
# Handle symbols given as first argument next.
|
32
|
+
# ======================================================================= #
|
33
|
+
case commandline_arguments
|
34
|
+
# ======================================================================= #
|
35
|
+
# === :do_not_run_yet
|
36
|
+
# ======================================================================= #
|
37
|
+
when :do_not_run_yet,
|
38
|
+
:do_not_yet_run,
|
39
|
+
:dont_run_yet
|
40
|
+
run_already = false
|
41
|
+
commandline_arguments = []
|
42
|
+
end
|
43
|
+
set_commandline_arguments(
|
44
|
+
commandline_arguments
|
45
|
+
)
|
46
|
+
if block_given?
|
47
|
+
yielded = yield
|
48
|
+
case yielded
|
49
|
+
# ===================================================================== #
|
50
|
+
# === :dont_run_yet
|
51
|
+
# ===================================================================== #
|
52
|
+
when :dont_run_yet
|
53
|
+
run_already = false
|
54
|
+
end
|
55
|
+
end
|
56
|
+
case run_already
|
57
|
+
# ======================================================================= #
|
58
|
+
# === :do_not_run_yet
|
59
|
+
# ======================================================================= #
|
60
|
+
when :do_not_run_yet
|
61
|
+
run_already = false
|
62
|
+
end
|
63
|
+
consider_entering_the_log_directory
|
64
|
+
# ======================================================================= #
|
65
|
+
# === Handle blocks next
|
66
|
+
# ======================================================================= #
|
67
|
+
if block_given?
|
68
|
+
yielded = yield
|
69
|
+
# ===================================================================== #
|
70
|
+
# Handle Symbols first:
|
71
|
+
# ===================================================================== #
|
72
|
+
if yielded.is_a? Symbol
|
73
|
+
case yielded
|
74
|
+
# =================================================================== #
|
75
|
+
# === :do_not_run_yet
|
76
|
+
# =================================================================== #
|
77
|
+
when :do_not_run_yet,
|
78
|
+
:do_not_run,
|
79
|
+
:dont_run_yet
|
80
|
+
run_already = false
|
81
|
+
# =================================================================== #
|
82
|
+
# === :do_not_check_whether_the_program_exists
|
83
|
+
# =================================================================== #
|
84
|
+
when :do_not_check_whether_the_program_exists
|
85
|
+
do_not_check_whether_the_program_exists # ← This method exists, so use it too.
|
86
|
+
# =================================================================== #
|
87
|
+
# === :use_root_prefix
|
88
|
+
# =================================================================== #
|
89
|
+
when :use_root_prefix
|
90
|
+
do_use_root_prefix
|
91
|
+
end
|
92
|
+
# ===================================================================== #
|
93
|
+
# === Handle Hashes next
|
94
|
+
# ===================================================================== #
|
95
|
+
elsif yielded.is_a? Hash
|
96
|
+
# =================================================================== #
|
97
|
+
# === :run_already
|
98
|
+
#
|
99
|
+
# This entry point should be checked last.
|
100
|
+
# =================================================================== #
|
101
|
+
if yielded.has_key? :run_already
|
102
|
+
case yielded[:run_already]
|
103
|
+
when :do_not_run_yet
|
104
|
+
run_already = false
|
105
|
+
end
|
106
|
+
end
|
107
|
+
# =================================================================== #
|
108
|
+
# === :use_this_prefix
|
109
|
+
# =================================================================== #
|
110
|
+
if yielded.has_key? :use_this_prefix
|
111
|
+
set_use_this_prefix(yielded[:use_this_prefix])
|
112
|
+
end
|
113
|
+
# =================================================================== #
|
114
|
+
# === :shall_we_check_whether_the_program_exists
|
115
|
+
# =================================================================== #
|
116
|
+
if yielded.has_key? :shall_we_check_whether_the_program_exists
|
117
|
+
case yielded[:shall_we_check_whether_the_program_exists]
|
118
|
+
# ================================================================= #
|
119
|
+
# === nope
|
120
|
+
#
|
121
|
+
# In this case we will not check whether the program exists.
|
122
|
+
# ================================================================= #
|
123
|
+
when :nope, false
|
124
|
+
do_not_check_whether_the_program_exists
|
125
|
+
end
|
126
|
+
end
|
127
|
+
# =================================================================== #
|
128
|
+
# === :prefix
|
129
|
+
#
|
130
|
+
# Handle prefix-related keys first.
|
131
|
+
# =================================================================== #
|
132
|
+
if yielded.has_key? :prefix
|
133
|
+
set_user_prefix(yielded.delete(:prefix)) # ← Set the new prefix via a method call.
|
134
|
+
# =================================================================== #
|
135
|
+
# === :use_this_prefix
|
136
|
+
# =================================================================== #
|
137
|
+
elsif yielded.has_key? :use_this_prefix
|
138
|
+
set_user_prefix(yielded.delete(:use_this_prefix))
|
139
|
+
# =================================================================== #
|
140
|
+
# === :use_this_as_prefix
|
141
|
+
# =================================================================== #
|
142
|
+
elsif yielded.has_key? :use_this_as_prefix
|
143
|
+
set_user_prefix(yielded.delete(:use_this_as_prefix))
|
144
|
+
end
|
145
|
+
# =================================================================== #
|
146
|
+
# === :symlink_after_compilation_has_finished
|
147
|
+
# =================================================================== #
|
148
|
+
if yielded.has_key? :symlink_after_compilation_has_finished
|
149
|
+
value = yielded.delete(:symlink_after_compilation_has_finished)
|
150
|
+
if value == false
|
151
|
+
set_do_not_symlink(:be_verbose) # Disable symlinking after compilation.
|
152
|
+
end
|
153
|
+
end
|
154
|
+
# =================================================================== #
|
155
|
+
# Add commandline_arguments if the key is :commandline_arguments
|
156
|
+
#
|
157
|
+
# Such a Hash may have a key like this:
|
158
|
+
#
|
159
|
+
# {:commandline_arguments=>["--dont-use-colours", "ntrad"]}
|
160
|
+
# =================================================================== #
|
161
|
+
if yielded.has_key? :commandline_arguments
|
162
|
+
append_to_the_commandline(
|
163
|
+
yielded.delete(:commandline_arguments)
|
164
|
+
)
|
165
|
+
end
|
166
|
+
else
|
167
|
+
append_to_the_commandline(yielded)
|
168
|
+
end
|
169
|
+
end
|
170
|
+
# ======================================================================= #
|
171
|
+
# Handle special symbols passed to run_already next:
|
172
|
+
# ======================================================================= #
|
173
|
+
case run_already
|
174
|
+
when :dont_run_yet,
|
175
|
+
:do_not_run_yet,
|
176
|
+
:do_not_run_already
|
177
|
+
run_already = false
|
178
|
+
end
|
179
|
+
time_snapshot # Store the first snapshot, which is the start-mark.
|
180
|
+
run if run_already
|
181
|
+
end
|
182
|
+
|
183
|
+
end; end
|
@@ -64,177 +64,13 @@ class Installer < ::RBT::CompileBase # === RBT::Compile
|
|
64
64
|
require 'rbt/installer/build_directory.rb'
|
65
65
|
require 'rbt/installer/extracting_and_archive_related_code.rb'
|
66
66
|
require 'rbt/installer/handle_installing_and_compiling_programs.rb'
|
67
|
+
require 'rbt/installer/initialize.rb'
|
67
68
|
require 'rbt/installer/menu.rb'
|
68
69
|
require 'rbt/installer/misc.rb'
|
69
70
|
require 'rbt/installer/reset.rb'
|
70
71
|
require 'rbt/misc/classes_for_individual_programs/change_lib64_to_lib.rb'
|
71
72
|
require 'rbt/linux/linux_from_scratch/lfs/lfs.rb'
|
72
73
|
|
73
|
-
# ========================================================================= #
|
74
|
-
# === initialize
|
75
|
-
#
|
76
|
-
# The first argument to this method will contain the commandline arguments
|
77
|
-
# for class RBT::Install. These are usually the name of the program
|
78
|
-
# (or programs) that you wish to compile.
|
79
|
-
#
|
80
|
-
# So, for example, "htop" could be passed as the first argument to
|
81
|
-
# this method. You can also pass in an Array here, and this class
|
82
|
-
# will then attempt to batch-compile these programs.
|
83
|
-
# ========================================================================= #
|
84
|
-
def initialize(
|
85
|
-
commandline_arguments = ARGV, # ← This should usually be an Array of programs that should be installed.
|
86
|
-
run_already = true
|
87
|
-
)
|
88
|
-
register_sigint
|
89
|
-
reset
|
90
|
-
# ======================================================================= #
|
91
|
-
# Handle symbols given as first argument next.
|
92
|
-
# ======================================================================= #
|
93
|
-
case commandline_arguments
|
94
|
-
# ======================================================================= #
|
95
|
-
# === :do_not_run_yet
|
96
|
-
# ======================================================================= #
|
97
|
-
when :do_not_run_yet,
|
98
|
-
:do_not_yet_run,
|
99
|
-
:dont_run_yet
|
100
|
-
run_already = false
|
101
|
-
commandline_arguments = []
|
102
|
-
end
|
103
|
-
set_commandline_arguments(
|
104
|
-
commandline_arguments
|
105
|
-
)
|
106
|
-
if block_given?
|
107
|
-
yielded = yield
|
108
|
-
case yielded
|
109
|
-
# ===================================================================== #
|
110
|
-
# === :dont_run_yet
|
111
|
-
# ===================================================================== #
|
112
|
-
when :dont_run_yet
|
113
|
-
run_already = false
|
114
|
-
end
|
115
|
-
end
|
116
|
-
case run_already
|
117
|
-
# ======================================================================= #
|
118
|
-
# === :do_not_run_yet
|
119
|
-
# ======================================================================= #
|
120
|
-
when :do_not_run_yet
|
121
|
-
run_already = false
|
122
|
-
end
|
123
|
-
consider_entering_the_log_directory
|
124
|
-
# ======================================================================= #
|
125
|
-
# === Handle blocks next
|
126
|
-
# ======================================================================= #
|
127
|
-
if block_given?
|
128
|
-
yielded = yield
|
129
|
-
# ===================================================================== #
|
130
|
-
# Handle Symbols first:
|
131
|
-
# ===================================================================== #
|
132
|
-
if yielded.is_a? Symbol
|
133
|
-
case yielded
|
134
|
-
# =================================================================== #
|
135
|
-
# === :do_not_run_yet
|
136
|
-
# =================================================================== #
|
137
|
-
when :do_not_run_yet,
|
138
|
-
:do_not_run,
|
139
|
-
:dont_run_yet
|
140
|
-
run_already = false
|
141
|
-
# =================================================================== #
|
142
|
-
# === :do_not_check_whether_the_program_exists
|
143
|
-
# =================================================================== #
|
144
|
-
when :do_not_check_whether_the_program_exists
|
145
|
-
do_not_check_whether_the_program_exists # ← This method exists, so use it too.
|
146
|
-
end
|
147
|
-
# ===================================================================== #
|
148
|
-
# === Handle Hashes next
|
149
|
-
# ===================================================================== #
|
150
|
-
elsif yielded.is_a? Hash
|
151
|
-
# =================================================================== #
|
152
|
-
# === :run_already
|
153
|
-
#
|
154
|
-
# This entry point should be checked last.
|
155
|
-
# =================================================================== #
|
156
|
-
if yielded.has_key? :run_already
|
157
|
-
case yielded[:run_already]
|
158
|
-
when :do_not_run_yet
|
159
|
-
run_already = false
|
160
|
-
end
|
161
|
-
end
|
162
|
-
# =================================================================== #
|
163
|
-
# === :use_this_prefix
|
164
|
-
# =================================================================== #
|
165
|
-
if yielded.has_key? :use_this_prefix
|
166
|
-
set_use_this_prefix(yielded[:use_this_prefix])
|
167
|
-
end
|
168
|
-
# =================================================================== #
|
169
|
-
# === :shall_we_check_whether_the_program_exists
|
170
|
-
# =================================================================== #
|
171
|
-
if yielded.has_key? :shall_we_check_whether_the_program_exists
|
172
|
-
case yielded[:shall_we_check_whether_the_program_exists]
|
173
|
-
# ================================================================= #
|
174
|
-
# === nope
|
175
|
-
#
|
176
|
-
# In this case we will not check whether the program exists.
|
177
|
-
# ================================================================= #
|
178
|
-
when :nope, false
|
179
|
-
do_not_check_whether_the_program_exists
|
180
|
-
end
|
181
|
-
end
|
182
|
-
# =================================================================== #
|
183
|
-
# === :prefix
|
184
|
-
#
|
185
|
-
# Handle prefix-related keys first.
|
186
|
-
# =================================================================== #
|
187
|
-
if yielded.has_key? :prefix
|
188
|
-
set_user_prefix(yielded.delete(:prefix)) # ← Set the new prefix via a method call.
|
189
|
-
# =================================================================== #
|
190
|
-
# === :use_this_prefix
|
191
|
-
# =================================================================== #
|
192
|
-
elsif yielded.has_key? :use_this_prefix
|
193
|
-
set_user_prefix(yielded.delete(:use_this_prefix))
|
194
|
-
# =================================================================== #
|
195
|
-
# === :use_this_as_prefix
|
196
|
-
# =================================================================== #
|
197
|
-
elsif yielded.has_key? :use_this_as_prefix
|
198
|
-
set_user_prefix(yielded.delete(:use_this_as_prefix))
|
199
|
-
end
|
200
|
-
# =================================================================== #
|
201
|
-
# === :symlink_after_compilation_has_finished
|
202
|
-
# =================================================================== #
|
203
|
-
if yielded.has_key? :symlink_after_compilation_has_finished
|
204
|
-
value = yielded.delete(:symlink_after_compilation_has_finished)
|
205
|
-
if value == false
|
206
|
-
set_do_not_symlink(:be_verbose) # Disable symlinking after compilation.
|
207
|
-
end
|
208
|
-
end
|
209
|
-
# =================================================================== #
|
210
|
-
# Add commandline_arguments if the key is :commandline_arguments
|
211
|
-
#
|
212
|
-
# Such a Hash may have a key like this:
|
213
|
-
#
|
214
|
-
# {:commandline_arguments=>["--dont-use-colours", "ntrad"]}
|
215
|
-
# =================================================================== #
|
216
|
-
if yielded.has_key? :commandline_arguments
|
217
|
-
append_to_the_commandline(
|
218
|
-
yielded.delete(:commandline_arguments)
|
219
|
-
)
|
220
|
-
end
|
221
|
-
else
|
222
|
-
append_to_the_commandline(yielded)
|
223
|
-
end
|
224
|
-
end
|
225
|
-
# ======================================================================= #
|
226
|
-
# Handle special symbols passed to run_already next:
|
227
|
-
# ======================================================================= #
|
228
|
-
case run_already
|
229
|
-
when :dont_run_yet,
|
230
|
-
:do_not_run_yet,
|
231
|
-
:do_not_run_already
|
232
|
-
run_already = false
|
233
|
-
end
|
234
|
-
time_snapshot # Store the first snapshot, which is the start-mark.
|
235
|
-
run if run_already
|
236
|
-
end
|
237
|
-
|
238
74
|
# ========================================================================= #
|
239
75
|
# === RBT::Installer[]
|
240
76
|
# ========================================================================= #
|
data/lib/rbt/installer/menu.rb
CHANGED
@@ -39,6 +39,21 @@ class Installer < ::RBT::CompileBase # === RBT::Compile
|
|
39
39
|
else
|
40
40
|
case i # (case tag, cas tag)
|
41
41
|
# ===================================================================== #
|
42
|
+
# === Use /root as prefix
|
43
|
+
#
|
44
|
+
# This entry point allows us to use /root/ as the prefix value.
|
45
|
+
# Note that this is distinct to --rootprefix which uses /.
|
46
|
+
#
|
47
|
+
# Invocation examples:
|
48
|
+
#
|
49
|
+
# ry bison --root
|
50
|
+
# ry libtool --root
|
51
|
+
#
|
52
|
+
# ===================================================================== #
|
53
|
+
when /^-?-?root$/i,
|
54
|
+
/^-?-?root(_|-| )?prefix$/i
|
55
|
+
set_user_prefix('/root/')
|
56
|
+
# ===================================================================== #
|
42
57
|
# === Use the / root prefix as target for --prefix=
|
43
58
|
#
|
44
59
|
# This entry point allows the user to target / as the main prefix
|
@@ -46,26 +61,30 @@ class Installer < ::RBT::CompileBase # === RBT::Compile
|
|
46
61
|
#
|
47
62
|
# Usage example:
|
48
63
|
#
|
49
|
-
# ry coreutils --static --
|
64
|
+
# ry coreutils --static --realrootprefix
|
50
65
|
#
|
51
66
|
# ===================================================================== #
|
52
67
|
when /^-?-?real(_|-| )?root(_|-| )?prefix$/i
|
53
68
|
set_user_prefix('/')
|
54
69
|
# ===================================================================== #
|
55
|
-
# ===
|
70
|
+
# === Show the intro for RBT.
|
56
71
|
#
|
57
|
-
# This entry point
|
58
|
-
#
|
72
|
+
# This entry point will provide a very few useful hints to a new
|
73
|
+
# user of the rbt suite.
|
59
74
|
#
|
60
|
-
#
|
75
|
+
# We have to be careful with the input, as "gobject-introspection"
|
76
|
+
# includes the word "intro" as well.
|
61
77
|
#
|
62
|
-
#
|
63
|
-
# ry libtool --root
|
78
|
+
# Invocation example:
|
64
79
|
#
|
80
|
+
# rbt --intro
|
81
|
+
#
|
65
82
|
# ===================================================================== #
|
66
|
-
when /^-?-?
|
67
|
-
/^-?-?
|
68
|
-
|
83
|
+
when /^-?-?intro$/,
|
84
|
+
/^-?-?show(_|-| )?intro$/,
|
85
|
+
/^-?-?show(_|-| )?rbt(_|-| )?intro$/
|
86
|
+
show_rbt_intro
|
87
|
+
exit_program
|
69
88
|
# ======================================================================= #
|
70
89
|
# === Copy the expanded cookbooks
|
71
90
|
#
|
@@ -7000,19 +7019,6 @@ class Installer < ::RBT::CompileBase # === RBT::Compile
|
|
7000
7019
|
show_installation_procedure_file
|
7001
7020
|
exit_program
|
7002
7021
|
# ===================================================================== #
|
7003
|
-
# === Show the intro for RBT.
|
7004
|
-
#
|
7005
|
-
# Invocation example:
|
7006
|
-
#
|
7007
|
-
# rbt --intro
|
7008
|
-
#
|
7009
|
-
# ===================================================================== #
|
7010
|
-
when /-?-?intro$/,
|
7011
|
-
/show(_|-| )?intro$/,
|
7012
|
-
/^show(_|-| )?rbt(_|-| )?intro$/
|
7013
|
-
show_rbt_intro
|
7014
|
-
exit_program
|
7015
|
-
# ===================================================================== #
|
7016
7022
|
# === Generate PDF tutorial
|
7017
7023
|
#
|
7018
7024
|
# Invocation example:
|
data/lib/rbt/installer/misc.rb
CHANGED
@@ -57,6 +57,51 @@ class Installer < ::RBT::CompileBase # === RBT::Installer
|
|
57
57
|
require 'rbt/libtool/remove_this_entry.rb'
|
58
58
|
require 'rbt/time/time.rb'
|
59
59
|
|
60
|
+
# ========================================================================= #
|
61
|
+
# === do_use_root_prefix
|
62
|
+
# ========================================================================= #
|
63
|
+
def do_use_root_prefix
|
64
|
+
set_user_prefix('/root/')
|
65
|
+
end
|
66
|
+
|
67
|
+
# ========================================================================= #
|
68
|
+
# === show_rbt_intro
|
69
|
+
#
|
70
|
+
# Invocation example:
|
71
|
+
#
|
72
|
+
# ry --show-rbt-intro
|
73
|
+
# ry --intro
|
74
|
+
#
|
75
|
+
# ========================================================================= #
|
76
|
+
def show_rbt_intro
|
77
|
+
e
|
78
|
+
e 'Here are some hints to get you started with RBT.'
|
79
|
+
e
|
80
|
+
e "You can compile a program by issuing #{orange('rbt <name>')}."
|
81
|
+
e
|
82
|
+
e 'Example:'
|
83
|
+
e
|
84
|
+
e sfancy(' rbt php')
|
85
|
+
e
|
86
|
+
e 'You can also compile into a standalone app-dir:'
|
87
|
+
e
|
88
|
+
e sfancy(' rbt php ntrad')
|
89
|
+
e sfancy(' rbt php --app-dir')
|
90
|
+
e
|
91
|
+
e 'Both variants are synonymous. If in doubt, using the variants'
|
92
|
+
e 'that start with '+teal('--')+' is recommended.'
|
93
|
+
e
|
94
|
+
e 'To speed-up looking for the dataset stored in the various .yml'
|
95
|
+
e 'files you can also issue the following command:'
|
96
|
+
e
|
97
|
+
e sfancy(' rbt --expand')
|
98
|
+
e
|
99
|
+
e 'This command will expand the dataset into a "sanitized" variant'
|
100
|
+
e 'that requires less pre-processing before it can be used for'
|
101
|
+
e 'compiling/installing programs from source.'
|
102
|
+
e
|
103
|
+
end
|
104
|
+
|
60
105
|
# ========================================================================= #
|
61
106
|
# === show_all_about
|
62
107
|
#
|
@@ -15310,44 +15355,6 @@ end # end false clause (DEBUG - FIXME!!!)
|
|
15310
15355
|
e
|
15311
15356
|
end
|
15312
15357
|
|
15313
|
-
# ========================================================================= #
|
15314
|
-
# === show_rbt_intro
|
15315
|
-
#
|
15316
|
-
# Invocation example:
|
15317
|
-
#
|
15318
|
-
# ry --show-rbt-intro
|
15319
|
-
# ry --intro
|
15320
|
-
#
|
15321
|
-
# ========================================================================= #
|
15322
|
-
def show_rbt_intro
|
15323
|
-
e
|
15324
|
-
e 'Here are some hints to get you started with RBT.'
|
15325
|
-
e
|
15326
|
-
e "You can compile a program by issuing #{orange('rbt <name>')}."
|
15327
|
-
e
|
15328
|
-
e 'Example:'
|
15329
|
-
e
|
15330
|
-
e sfancy(' rbt php')
|
15331
|
-
e
|
15332
|
-
e 'You can also compile into a standalone app-dir:'
|
15333
|
-
e
|
15334
|
-
e sfancy(' rbt php ntrad')
|
15335
|
-
e sfancy(' rbt php --app-dir')
|
15336
|
-
e
|
15337
|
-
e 'Both variants are synonymous. If in doubt, using the variants'
|
15338
|
-
e 'that start with '+teal('--')+' is recommended.'
|
15339
|
-
e
|
15340
|
-
e 'To speed-up looking for the dataset stored in the various .yml'
|
15341
|
-
e 'files you can also issue the following command:'
|
15342
|
-
e
|
15343
|
-
e sfancy(' rbt --expand')
|
15344
|
-
e
|
15345
|
-
e 'This command will expand the dataset into a "sanitized" variant'
|
15346
|
-
e 'that requires less pre-processing before it can be used for'
|
15347
|
-
e 'compiling/installing programs from source.'
|
15348
|
-
e
|
15349
|
-
end
|
15350
|
-
|
15351
15358
|
# ========================================================================= #
|
15352
15359
|
# === report_n_programs
|
15353
15360
|
#
|
data/lib/rbt/version/version.rb
CHANGED
@@ -13,7 +13,7 @@ module RBT
|
|
13
13
|
# just an alias to it - stick to using VERSION instead "officially"
|
14
14
|
# whenever possible.
|
15
15
|
# ========================================================================= #
|
16
|
-
VERSION = '0.11.
|
16
|
+
VERSION = '0.11.90'
|
17
17
|
RBT_VERSION_NUMBER = VERSION # === RBT_VERSION_NUMBER
|
18
18
|
PROGRAM_VERSION = VERSION # === PROGRAM_VERSION
|
19
19
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rbt
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.11.
|
4
|
+
version: 0.11.90
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Robert A. Heiler
|
@@ -209,6 +209,7 @@ executables:
|
|
209
209
|
- report_host_cpu
|
210
210
|
- report_mate_desktop_version
|
211
211
|
- report_total_size_of_all_archives
|
212
|
+
- root_prefix
|
212
213
|
- ruby_libtool
|
213
214
|
- run_make_then_make_install
|
214
215
|
- scookie
|
@@ -293,6 +294,7 @@ files:
|
|
293
294
|
- bin/report_host_cpu
|
294
295
|
- bin/report_mate_desktop_version
|
295
296
|
- bin/report_total_size_of_all_archives
|
297
|
+
- bin/root_prefix
|
296
298
|
- bin/ruby_libtool
|
297
299
|
- bin/run_make_then_make_install
|
298
300
|
- bin/scookie
|
@@ -528,6 +530,7 @@ files:
|
|
528
530
|
- lib/rbt/installer/constants.rb
|
529
531
|
- lib/rbt/installer/extracting_and_archive_related_code.rb
|
530
532
|
- lib/rbt/installer/handle_installing_and_compiling_programs.rb
|
533
|
+
- lib/rbt/installer/initialize.rb
|
531
534
|
- lib/rbt/installer/installer.rb
|
532
535
|
- lib/rbt/installer/menu.rb
|
533
536
|
- lib/rbt/installer/meson_and_ninja_related_code.rb
|
@@ -8605,7 +8608,7 @@ post_install_message: "\n With the RBT scripts, you should be able to install o
|
|
8605
8608
|
see:\n\n scookie --help\n\n If you wish to search for common tags, such as
|
8606
8609
|
tag \"ruby\" or tag\n \"php\", then try this:\n\n search_for_tags ruby\n search_for_tags
|
8607
8610
|
php\n\n This can be found in the subdirectory bin/search_for_tags of\n this gem.\n\n
|
8608
|
-
\ For more documentation, the official documentation, have a look at:\n\n https://www.rubydoc.info/gems/rbt/0.11.
|
8611
|
+
\ For more documentation, the official documentation, have a look at:\n\n https://www.rubydoc.info/gems/rbt/0.11.90\n\n
|
8609
8612
|
\ If you encounter any bug or oddities, feel free to drop an email\n to:\n\n shevy@inbox.lt\n\n
|
8610
8613
|
\ (I do not check for mails daily, though, so this may take a \n while to process
|
8611
8614
|
- apologies for that.)\n\n Thank you and have fun!\n\n"
|