rbt 0.16.12 → 0.16.14

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.

Files changed (43) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/doc/README.gen +1 -1
  4. data/lib/rbt/actions/actions.rb +18 -17
  5. data/lib/rbt/actions/individual_actions/create_app_dir_skeleton/create_app_dir_skeleton.rb +1 -1
  6. data/lib/rbt/actions/individual_actions/installer/aggregate.rb +28 -112
  7. data/lib/rbt/{utility_scripts → actions/individual_actions/show_manual_steps}/show_manual_steps.rb +12 -15
  8. data/lib/rbt/actions/individual_actions/software_manager/actions.rb +72 -0
  9. data/lib/rbt/actions/individual_actions/software_manager/extract_related_code.rb +26 -9
  10. data/lib/rbt/actions/individual_actions/software_manager/logic_related_code.rb +50 -73
  11. data/lib/rbt/actions/individual_actions/software_manager/menu.rb +154 -153
  12. data/lib/rbt/actions/individual_actions/software_manager/misc.rb +1390 -1865
  13. data/lib/rbt/actions/individual_actions/software_manager/query_related_methods.rb +121 -21
  14. data/lib/rbt/actions/individual_actions/software_manager/reset.rb +7 -7
  15. data/lib/rbt/actions/individual_actions/software_manager/setters.rb +433 -28
  16. data/lib/rbt/actions/individual_actions/software_manager/software_manager.rb +1 -0
  17. data/lib/rbt/shell/shell_script_containing_the_program_versions.sh +11420 -5
  18. data/lib/rbt/toplevel_methods/meson.rb +13 -11
  19. data/lib/rbt/version/version.rb +2 -2
  20. data/lib/rbt/yaml/cookbooks/exiv2.yml +1 -0
  21. data/lib/rbt/yaml/cookbooks/extracmakemodules.yml +1 -1
  22. data/lib/rbt/yaml/cookbooks/glibnetworking.yml +1 -0
  23. data/lib/rbt/yaml/cookbooks/kitinerary.yml +5 -0
  24. data/lib/rbt/yaml/cookbooks/libproxy.yml +1 -1
  25. data/lib/rbt/yaml/cookbooks/ncurses.yml +1 -2
  26. data/lib/rbt/yaml/cookbooks/wordpress.yml +4 -2
  27. data/lib/rbt/yaml/expanded_cookbooks/cbindgen.yml +16 -13
  28. data/lib/rbt/yaml/expanded_cookbooks/erlang.yml +1 -1
  29. data/lib/rbt/yaml/expanded_cookbooks/exiv2.yml +1 -1
  30. data/lib/rbt/yaml/expanded_cookbooks/extracmakemodules.yml +1 -1
  31. data/lib/rbt/yaml/expanded_cookbooks/gdkpixbuf.yml +2 -2
  32. data/lib/rbt/yaml/expanded_cookbooks/kitinerary.yml +3 -3
  33. data/lib/rbt/yaml/expanded_cookbooks/libmpeg3.yml +2 -1
  34. data/lib/rbt/yaml/expanded_cookbooks/libproxy.yml +1 -1
  35. data/lib/rbt/yaml/expanded_cookbooks/nuvie.yml +1 -1
  36. data/lib/rbt/yaml/expanded_cookbooks/qt.yml +5 -5
  37. data/lib/rbt/yaml/expanded_cookbooks/sendmail.yml +14 -7
  38. data/lib/rbt/yaml/expanded_cookbooks/sharutils.yml +1 -1
  39. data/lib/rbt/yaml/expanded_cookbooks/squashfstools.yml +3 -3
  40. data/lib/rbt/yaml/expanded_cookbooks/wordpress.yml +10 -10
  41. data/lib/rbt/yaml/programs_version/available_programs_versions.md +3 -3
  42. data/lib/rbt/yaml/programs_version/the_expanded_coobkook_dataset_was_last_updated_on_this_day.yml +1 -1
  43. metadata +5 -4
@@ -356,9 +356,9 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
356
356
  if use_meson_configure_options?
357
357
  configure_options = meson_configure_options?.to_s.strip
358
358
  if configure_options and !configure_options.empty?
359
- # ==================================================================== #
359
+ # ================================================================== #
360
360
  # Append the meson-configure options in this case.
361
- # ==================================================================== #
361
+ # ================================================================== #
362
362
  orev "Making use of the #{royalblue('meson_configure_options')}#{rev}, "\
363
363
  "#{rev}as specified by the corresponding "\
364
364
  "#{slateblue('.yml')} #{rev}file."
@@ -638,22 +638,22 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
638
638
  can_we_continue? #and
639
639
  #!a_problem_has_occurred? and # Also check for no problem.
640
640
  #!an_error_has_occurred?
641
- # ====================================================================== #
641
+ # ==================================================================== #
642
642
  # Build up the command to run next.
643
- # ====================================================================== #
643
+ # ==================================================================== #
644
644
  cmd_to_run = 'ldconfig'.dup
645
- # ====================================================================== #
645
+ # ==================================================================== #
646
646
  # We could be verbose, but it is not that useful, so uncomment it.
647
647
  # cmd_to_run << ' -v'
648
- # ====================================================================== #
648
+ # ==================================================================== #
649
649
  # Since as of July 2011, we will be quieter and ignore whether
650
650
  # ldconfig exists or not.
651
- # ====================================================================== #
651
+ # ==================================================================== #
652
652
  cmd_to_run << " #{SHELL_ERROR_CODE}"
653
- # ====================================================================== #
653
+ # ==================================================================== #
654
654
  # Check for superuser privilege next. ldconfig requires the
655
655
  # superuser.
656
- # ====================================================================== #
656
+ # ==================================================================== #
657
657
  if is_superuser?
658
658
  orev "Now running `#{sfancy(cmd_to_run)}#{rev}`." # We output the ldconfig command variant here.
659
659
  system cmd_to_run
@@ -883,10 +883,10 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
883
883
  else
884
884
  run_this_command = "#{do_this_action}".dup
885
885
  if run_this_command.start_with?('python') and !run_this_command.include?('/')
886
- # ==================================================================== #
886
+ # ================================================================== #
887
887
  # This is valid for a command line such as:
888
888
  # "python setup.py config"
889
- # ==================================================================== #
889
+ # ================================================================== #
890
890
  splitted = run_this_command.split(' ')
891
891
  splitted[1].prepend(configure_base_dir?.dup)
892
892
  run_this_command = splitted.join(' ')
@@ -1100,10 +1100,10 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
1100
1100
  if porg_is_available?
1101
1101
  use_porg = true
1102
1102
  else
1103
- # ==================================================================== #
1103
+ # ================================================================== #
1104
1104
  # Notify the user that porg is NOT available. We will continue
1105
1105
  # anyway, though.
1106
- # ==================================================================== #
1106
+ # ================================================================== #
1107
1107
  notify_the_user_that_porg_is_not_available
1108
1108
  end
1109
1109
  end
@@ -1330,9 +1330,9 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
1330
1330
  # In this case all is fine.
1331
1331
  else
1332
1332
  compile_this_program = compile_which_program?
1333
- # ==================================================================== #
1333
+ # ================================================================== #
1334
1334
  # Else it is a not-registered binary, so report it.
1335
- # ==================================================================== #
1335
+ # ================================================================== #
1336
1336
  cliner
1337
1337
  opne crimson('The entry ')+steelblue(entry)+
1338
1338
  crimson(' is not a registered')
@@ -1341,10 +1341,10 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
1341
1341
  crimson('.')
1342
1342
  opne olivedrab('^^^ Consider changing this. ^^^')
1343
1343
  cliner
1344
- # ==================================================================== #
1344
+ # ================================================================== #
1345
1345
  # Since as of 09.12.2019 we will also store this result into a
1346
1346
  # log file.
1347
- # ==================================================================== #
1347
+ # ================================================================== #
1348
1348
  what = "#{entry} belongs to the program called "\
1349
1349
  "#{rarrow?} #{compile_this_program}"
1350
1350
  into = "#{log_dir?}these_binaries.yml"
@@ -1674,29 +1674,6 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
1674
1674
  end; alias do_show_the_infobox consider_showing_the_flexbox # === do_show_the_infobox
1675
1675
  alias infobox_for consider_showing_the_flexbox # === infobox_for
1676
1676
 
1677
- # ========================================================================== #
1678
- # === consider_removing_the_old_extracted_directory_if_it_exists
1679
- # ========================================================================== #
1680
- def consider_removing_the_old_extracted_directory_if_it_exists(
1681
- i = remove_archive_stuff_from_the_end(will_be_extracted_towards?)
1682
- )
1683
- i = rds(i) if i.include?('//')
1684
- # ======================================================================= #
1685
- # We also check whether the target is or appears to be under the
1686
- # log-directory that RBT uses.
1687
- # ======================================================================= #
1688
- if File.directory?(i) and i.include?(log_dir?) and !(i == '/')
1689
- if i == log_dir? # The log-directory can not be removed via this method.
1690
- orev "Can not remove #{sdir(i)}#{rev}."
1691
- else
1692
- orev "#{steelblue('Removing')}#{rev}"\
1693
- " the old, extracted directory at #{sdir(i)}"\
1694
- "#{rev} next."
1695
- remove_directory(i)
1696
- end
1697
- end
1698
- end
1699
-
1700
1677
  # ======================================================================= #
1701
1678
  # === notify_the_user_as_to_which_program_will_be_compiled_or_installed_next
1702
1679
  #
@@ -2107,7 +2084,9 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
2107
2084
  orev "`#{sfile(to)}#{rev}`,"
2108
2085
  orev 'if the extraction-step worked properly.'
2109
2086
  # ==================================================================== #
2110
- # === (5) Extracting the archive next:
2087
+ # === (5) Extracting the archive next
2088
+ #
2089
+ # We will next extract the source archive to the target directory.
2111
2090
  # ==================================================================== #
2112
2091
  extract_what_to(local_path, File.dirname(to))
2113
2092
  orev lightsalmon('The extraction-step has finished.')
@@ -2242,39 +2221,27 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
2242
2221
  orev sdir(build_directory_object?.path?)+rev+'.'
2243
2222
  end
2244
2223
  run_the_equivalent_configure_like_stage_for_this_program(i)
2245
- unless keep_extracted?
2246
- # ==================================================================== #
2247
- # === Remove the extracted archive / directory
2248
- #
2249
- # We have to clean-up again, by removing the extracted archive. This
2250
- # behaviour can be changed by the user, though. Additionally, the
2251
- # individual .yml file may decide for us whether we will remove the
2252
- # extracted directory or whether we will keep that directory. User
2253
- # instructions overrule the settings in the .yml file, though.
2254
- # ==================================================================== #
2255
- consider_removing_the_old_extracted_directory_if_it_exists
2256
- end
2257
2224
  # ==================================================================== #
2258
2225
  # Consider stripping the compiled binaries.
2259
2226
  # ==================================================================== #
2260
2227
  if had_to_be_compiled?
2261
- # ==================================================================== #
2228
+ # ================================================================== #
2262
2229
  # Next check whether we have to strip the compiled binaries or
2263
2230
  # whether we do not have to strip them. The checks are done
2264
2231
  # with the method itself, so we don't have to do any conditional
2265
2232
  # checks here at this point.
2266
- # ==================================================================== #
2233
+ # ================================================================== #
2267
2234
  do_strip_the_compiled_binaries
2268
- # ==================================================================== #
2235
+ # ================================================================== #
2269
2236
  # Next, we will consider creating and populating the subdirectory
2270
2237
  # called "lib/pkgconfig/". This may be necessary for programs that
2271
2238
  # install into "share/pkgconfig/" rather than "lib/pkgconfig".
2272
2239
  #
2273
2240
  # This step has to be done before we call the method
2274
2241
  # consider_symlinking_the_pkgconfig_files().
2275
- # ==================================================================== #
2242
+ # ================================================================== #
2276
2243
  consider_creating_and_populating_the_pkgconfig_directory
2277
- # ==================================================================== #
2244
+ # ================================================================== #
2278
2245
  # If the cookbook file at hand has symlinking_pkgconfig_files
2279
2246
  # enabled, and if the program is compiled, as AppDir, then we
2280
2247
  # will symlink .pc iles into /usr/lib/pkgconfig/, if the
@@ -2282,9 +2249,9 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
2282
2249
  #
2283
2250
  # This should actually be part of the post-installation actions,
2284
2251
  # but before running ldconfig.
2285
- # ==================================================================== #
2252
+ # ================================================================== #
2286
2253
  consider_symlinking_the_pkgconfig_files
2287
- # ==================================================================== #
2254
+ # ================================================================== #
2288
2255
  # === Handle empty subdirectories
2289
2256
  #
2290
2257
  # Next we will consider removing empty subdirectories. This has to
@@ -2296,38 +2263,48 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
2296
2263
  # should NOT be removed, even if they are empty - such as temp or
2297
2264
  # logs directories called during the post-installation step. So
2298
2265
  # we have to include that as well.
2299
- # ==================================================================== #
2266
+ # ================================================================== #
2300
2267
  consider_removing_empty_subdirectories
2301
- # ==================================================================== #
2268
+ # ================================================================== #
2302
2269
  # Store the time it took to compile the program at hand.
2303
- # ==================================================================== #
2270
+ # ================================================================== #
2304
2271
  store_time_snapshot
2305
2272
  consider_creating_a_log_file_containing_information_about_the_used_environment_and_time_of_compilation
2306
- # ==================================================================== #
2273
+ # ================================================================== #
2307
2274
  # Report to the user how long it took us to compile/install the program
2308
2275
  # at hand.
2309
- # ==================================================================== #
2276
+ # ================================================================== #
2310
2277
  consider_reporting_the_time_it_took_to_compile_this_program
2311
- # ==================================================================== #
2278
+ # ================================================================== #
2312
2279
  # Next register the configure-line into the configure "database",
2313
2280
  # unless a problem or error has occurred.
2314
- # ==================================================================== #
2281
+ # ================================================================== #
2315
2282
  # if no_problem_was_encountered? and
2316
2283
  # no_error_was_encountered?
2317
- # ==================================================================== #
2284
+ # ================================================================== #
2318
2285
  # Register the configure-line that was used into the "global"
2319
2286
  # configure database next - this should come before we symlink
2320
2287
  # the .pc files:
2321
- # ==================================================================== #
2288
+ # ================================================================== #
2322
2289
  register_configure_line_into_configure_database
2323
- # ==================================================================== #
2290
+ # ================================================================== #
2291
+ # === Remove the extracted archive / directory
2292
+ #
2293
+ # We have to clean-up again, by removing the extracted archive. This
2294
+ # behaviour can be changed by the user, though. Additionally, the
2295
+ # individual .yml file may decide for us whether we will remove the
2296
+ # extracted directory or whether we will keep that directory. User
2297
+ # instructions overrule the settings in the .yml file, though.
2298
+ # ================================================================== #
2299
+ consider_removing_the_extracted_source_archive_directory
2300
+ # ================================================================== #
2324
2301
  # Go back into the starting directory again.
2325
- # ==================================================================== #
2302
+ # ================================================================== #
2326
2303
  consider_entering_the_log_directory
2327
2304
  show_the_everything_is_finished_message
2328
- # ==================================================================== #
2305
+ # ================================================================== #
2329
2306
  # Show success or failure - this should come last.
2330
- # ==================================================================== #
2307
+ # ================================================================== #
2331
2308
  show_success_or_failure_status
2332
2309
  end
2333
2310
  # ==================================================================== #
@@ -37,6 +37,160 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
37
37
  else
38
38
  case i # (case tag, cas tag)
39
39
  # ===================================================================== #
40
+ # === Set extract to
41
+ #
42
+ # Specify our target directory for extracting an archive. Special
43
+ # shortcuts, such as pwd for "current working directry", also
44
+ # exist.
45
+ #
46
+ # Usage examples:
47
+ #
48
+ # ry htop --extract_to=pwd
49
+ # ry htop --base-dir=/tmp/
50
+ # ry htop --base-dir=/opt/
51
+ # ry htop --extract-to=/opt/test
52
+ # ry mesa --use-this-as-temp-dir=/opt/foo
53
+ # ry htop ntrad --use-this-temp-dir=/opt/foobar_create_it
54
+ #
55
+ # ===================================================================== #
56
+ when /^-?-?extract(_|-| )?to=(.*)$/, # === $2
57
+ /^-?-?temp(_|-| )?dir=(.*)$/, # === $2
58
+ /^-?-?use(_|-| )?temp(_|-| )?dir=(.*)$/, # === $3
59
+ /^-?-?base(_|-| )?dir=(.+)$/, # === $2
60
+ /^-?-?use(_|-| )?this(_|-| )?temp(_|-| )?directory=(.*)$/, # === $4
61
+ /^-?-?use(_|-| )?this(_|-| )?temp(_|-| )?dir=(.*)$/, # === $4
62
+ /^-?-?use(_|-| )?this(_|-| )?as(_|-| )?temp(_|-| )?dir=(.*)$/, # === $5
63
+ /^-?-?use(_|-| )?this(_|-| )?as(_|-| )?temp(_|-| )?directory=(.*)$/, # === $4
64
+ /^-?e=(.*)$/ # === $1
65
+ _ = $1.to_s.dup
66
+ _ = $2.to_s.dup if $2
67
+ _ = $3.to_s.dup if $3
68
+ _ = $4.to_s.dup if $4
69
+ _ = $5.to_s.dup if $5
70
+ set_extract_to_this_directory_as_specified_by_the_user(
71
+ _
72
+ )
73
+ # ===================================================================== #
74
+ # === Query where we will extract to
75
+ #
76
+ # This entry point can be used to determine where to we will extract
77
+ # archives.
78
+ #
79
+ # Invocation example:
80
+ #
81
+ # ry --extract-to?
82
+ #
83
+ # ===================================================================== #
84
+ when /^-?-?extract(-|_)?to\??$/i
85
+ report_where_archives_will_be_extracted_into
86
+ exit_program
87
+ # ===================================================================== #
88
+ # === Keep the archive extracted
89
+ #
90
+ # The user can use this entry point if he/she dodoes not want
91
+ # to delete the extracted archive again.
92
+ #
93
+ # Keep our source archive extracted:
94
+ #
95
+ # ry htop ke
96
+ #
97
+ # ===================================================================== #
98
+ when *ARRAY_HELP_KEEP_EXTRACTED_OPTIONS
99
+ do_retain_the_extracted_source_archive
100
+ # ===================================================================== #
101
+ # === Do not keep the archive
102
+ #
103
+ # After extracting and compiling, we will get rid of the archive
104
+ # again. We will get rid of the archive independent over whether
105
+ # the installation process was a success or whether it was not,
106
+ # mind you.
107
+ #
108
+ # Usage examples:
109
+ #
110
+ # ry htop --remove-archive
111
+ # ry htop dontkeeparchive
112
+ #
113
+ # ===================================================================== #
114
+ when *ARRAY_HELP_DONT_KEEP_EXTRACTED_OPTIONS
115
+ set_dont_keep_archive # Remove archive(s) after a successful build.
116
+ # ===================================================================== #
117
+ # === Do not remove empty directories
118
+ #
119
+ # This entry point exists so that we can keep empty directories
120
+ # in the respective /Programs/PROGRAM_NAME/PROGRAM_VERSION/
121
+ # subdirectory.
122
+ #
123
+ # Invocation examples:
124
+ #
125
+ # rbt feh --ntrad --do-not-remove-empty-directories
126
+ # rbt htop --ntrad --do-not-remove-empty-directories
127
+ #
128
+ # ===================================================================== #
129
+ when /^-?-?do(-|_| )?not(-|_| )?remove(-|_| )?empty(-|_| )?directories$/
130
+ opne slateblue('class RBT::SymlinkProgram')+' will '+
131
+ crimson('not')+' remove empty directories.'
132
+ symlink_program?.do_keep_empty_directories
133
+ # ===================================================================== #
134
+ # === Generate a big shell script
135
+ #
136
+ # This entry point can be used to quickly generate the big
137
+ # shell script file that contains all programs versions as
138
+ # UPPERCASED variable, with an appended 'V'. So for example,
139
+ # BASHV would have a value of 5.0 or so, depending on the
140
+ # current version of bash registered in the rbt project.
141
+ #
142
+ # Invocation example:
143
+ #
144
+ # ry --shellscript
145
+ #
146
+ # ===================================================================== #
147
+ when /^-?-?shellscript$/i
148
+ action_generate_a_big_shell_script
149
+ exit_program
150
+ # ===================================================================== #
151
+ # === Show all Installed Programs, via a ruby-gtk3 widget
152
+ #
153
+ # Invocation example:
154
+ #
155
+ # rbt --installed-programs
156
+ #
157
+ # ===================================================================== #
158
+ when /^-?-?installed(-|_| )?programs$/i,
159
+ /^-?-?gtk(-|_| )?installed(-|_| )?programs$/i
160
+ require 'rbt/gui/gtk3/installed_programs/installed_programs.rb'
161
+ RBT::GUI::Gtk::InstalledPrograms.run
162
+ # ===================================================================== #
163
+ # === Start the main libui widget
164
+ #
165
+ # This entry point allows the user to start the libui-bindings for
166
+ # the SQL-centric compilation GUI.
167
+ #
168
+ # Invocation example:
169
+ #
170
+ # rbt --libui
171
+ #
172
+ # ===================================================================== #
173
+ when /^-?-?libui$/i
174
+ require 'rbt/gui/libui/compile_via_sql_database/compile_via_sql_database.rb'
175
+ RBT::GUI::LibUI::CompileProgram.new
176
+ # ===================================================================== #
177
+ # === Use different configure options
178
+ #
179
+ # We must allow the user to use a different set of configure options.
180
+ # This entry point ensures that.
181
+ #
182
+ # The user will be able to pass in the configure options specified
183
+ # in a commandline-flag.
184
+ #
185
+ # Invocation examples:
186
+ #
187
+ # ry gcc --use-these-configure-options="--enable-shared --enable-bootstrap --enable-languages=c,c++,lto,objc,fortran --enable-threads=posix --enable-checking=release --enable-objc-gc --with-system-zlib --enable-libstdcxx-dual-abi --with-default-libstdcxx-abi=gcc4-compatible --disable-libunwind-exceptions --enable-__cxa_atexit --enable-libssp --enable-lto --disable-install-libiberty --with-gnu-ld --verbose --with-arch-directory=amd64 --disable-gtktest --disable-multilib --target=x86_64-slackware-linux --build=x86_64-slackware-linux --host=x86_64-slackware-linux"
188
+ # ry poppler --use-these-configure-options="--enable-xpdf-headers"
189
+ #
190
+ # ===================================================================== #
191
+ when /^-?-?use(-|_| )?these(-|_| )?configure(-|_| )?options=(.+)$/
192
+ @internal_hash[:configure_options] = $4.to_s.dup
193
+ # ===================================================================== #
40
194
  # == Non-Traditional compilation (ntrad tag)
41
195
  #
42
196
  # This entry point allows the user to compile the given program in
@@ -2518,22 +2672,6 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
2518
2672
  'rall'
2519
2673
  compile_all_programs(:do_exit_afterwards) # Argument true for "shall we exit".
2520
2674
  # ===================================================================== #
2521
- # === Do not keep the archive
2522
- #
2523
- # After extracting and compiling, we will get rid of the archive
2524
- # again. We will get rid of the archive independent over whether
2525
- # the installation process was a success or whether it was not,
2526
- # mind you.
2527
- #
2528
- # Usage examples:
2529
- #
2530
- # ry htop --remove-archive
2531
- # ry htop dontkeeparchive
2532
- #
2533
- # ===================================================================== #
2534
- when *ARRAY_HELP_DONT_KEEP_EXTRACTED_OPTIONS
2535
- set_dont_keep_archive # Remove archive(s) after a successful build.
2536
- # ===================================================================== #
2537
2675
  # === Download a remote program into a given directory at hand
2538
2676
  #
2539
2677
  # This entry point allows us to download a remote program into
@@ -2664,20 +2802,6 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
2664
2802
  pin_this_program(this_program)
2665
2803
  exit_program
2666
2804
  # ===================================================================== #
2667
- # === Query where we will extract to
2668
- #
2669
- # This entry point can be used to determine where to we will extract
2670
- # archives.
2671
- #
2672
- # Invocation example:
2673
- #
2674
- # rbt --extract-to?
2675
- #
2676
- # ===================================================================== #
2677
- when /^-?-?extract(-|_)?to\??$/i
2678
- report_where_archives_will_be_extracted_into
2679
- exit_program
2680
- # ===================================================================== #
2681
2805
  # === Query whether we are on windows
2682
2806
  #
2683
2807
  # This entry point can be quickly used to determine whether we are
@@ -3643,23 +3767,6 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
3643
3767
  get_packages
3644
3768
  exit_program
3645
3769
  # ===================================================================== #
3646
- # === Use different configure options
3647
- #
3648
- # We must allow the user to use a different set of configure options.
3649
- # This entry point ensures that.
3650
- #
3651
- # The user will be able to pass in the configure options specified
3652
- # in a commandline-flag.
3653
- #
3654
- # Invocation examples:
3655
- #
3656
- # ry gcc --use-these-configure-options="--enable-shared --enable-bootstrap --enable-languages=c,c++,lto,objc,fortran --enable-threads=posix --enable-checking=release --enable-objc-gc --with-system-zlib --enable-libstdcxx-dual-abi --with-default-libstdcxx-abi=gcc4-compatible --disable-libunwind-exceptions --enable-__cxa_atexit --enable-libssp --enable-lto --disable-install-libiberty --with-gnu-ld --verbose --with-arch-directory=amd64 --disable-gtktest --disable-multilib --target=x86_64-slackware-linux --build=x86_64-slackware-linux --host=x86_64-slackware-linux"
3657
- # ry poppler --use-these-configure-options="--enable-xpdf-headers"
3658
- #
3659
- # ===================================================================== #
3660
- when /^-?-?use(-|_| )?these(-|_| )?configure(-|_| )?options=(.+)$/
3661
- @internal_hash[:configure_options] = $4.to_s.dup
3662
- # ===================================================================== #
3663
3770
  # === Enable pkgconfig-symlinks
3664
3771
  #
3665
3772
  # This option exists in order to allow, on the commandline, to
@@ -4514,40 +4621,6 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
4514
4621
  try_to_show_the_BLFS_content_of_this_program
4515
4622
  exit_program
4516
4623
  # ===================================================================== #
4517
- # === Set extract to
4518
- #
4519
- # Specify our target directory for extracting an archive. Special
4520
- # shortcuts, such as pwd for "current working directry", also
4521
- # exist.
4522
- #
4523
- # Usage examples:
4524
- #
4525
- # ry htop --extract_to=pwd
4526
- # ry htop --base-dir=/tmp/
4527
- # ry htop --base-dir=/opt/
4528
- # ry htop --extract-to=/opt/test
4529
- # ry mesa --use-this-as-temp-dir=/opt/foo
4530
- # ry htop ntrad --use-this-temp-dir=/opt/foobar_create_it
4531
- #
4532
- # ===================================================================== #
4533
- when /^-?-?extract(_|-| )?to=(.*)$/, # === $2
4534
- /^-?-?temp(_|-| )?dir=(.*)$/, # === $2
4535
- /^-?-?use(_|-| )?temp(_|-| )?dir=(.*)$/, # === $3
4536
- /^-?-?base(_|-| )?dir=(.+)$/, # === $2
4537
- /^-?-?use(_|-| )?this(_|-| )?temp(_|-| )?directory=(.*)$/, # === $4
4538
- /^-?-?use(_|-| )?this(_|-| )?temp(_|-| )?dir=(.*)$/, # === $4
4539
- /^-?-?use(_|-| )?this(_|-| )?as(_|-| )?temp(_|-| )?dir=(.*)$/, # === $5
4540
- /^-?-?use(_|-| )?this(_|-| )?as(_|-| )?temp(_|-| )?directory=(.*)$/, # === $4
4541
- /^-?e=(.*)$/ # === $1
4542
- _ = $1.to_s.dup
4543
- _ = $2.to_s.dup if $2
4544
- _ = $3.to_s.dup if $3
4545
- _ = $4.to_s.dup if $4
4546
- _ = $5.to_s.dup if $5
4547
- set_extract_to_this_directory_as_specified_by_the_user(
4548
- _
4549
- )
4550
- # ===================================================================== #
4551
4624
  # === Show whether RBT uses ccache or whether it does not
4552
4625
  #
4553
4626
  # This entry point just queries whether RBT will be making use of
@@ -6177,23 +6250,6 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
6177
6250
  install_palemoon
6178
6251
  exit_program
6179
6252
  # ===================================================================== #
6180
- # === Do not remove empty directories
6181
- #
6182
- # This entry point exists so that we can keep empty directories
6183
- # in the respective /Programs/PROGRAM_NAME/PROGRAM_VERSION/
6184
- # subdirectory.
6185
- #
6186
- # Invocation examples:
6187
- #
6188
- # rbt feh --ntrad --do-not-remove-empty-directories
6189
- # rbt htop --ntrad --do-not-remove-empty-directories
6190
- #
6191
- # ===================================================================== #
6192
- when /^-?-?do(-|_| )?not(-|_| )?remove(-|_| )?empty(-|_| )?directories$/
6193
- opne slateblue('class RBT::SymlinkProgram')+' will '+
6194
- crimson('not')+' remove empty directories.'
6195
- symlink_program?.do_keep_empty_directories
6196
- # ===================================================================== #
6197
6253
  # === Perform an intelligent bootstrap-operation
6198
6254
  #
6199
6255
  # This entry point has been added in November 2020, as means to
@@ -7217,48 +7273,6 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
7217
7273
  display_postinstall_dataset
7218
7274
  exit_program
7219
7275
  # ===================================================================== #
7220
- # === Generate a big shell script
7221
- #
7222
- # This entry point can be used to quickly generate the big
7223
- # shell script file that contains all programs versions as
7224
- # UPPERCASED variable, with an appended 'V'. So for example,
7225
- # BASHV would have a value of 5.0 or so, depending on the
7226
- # current version of bash registered in the rbt project.
7227
- #
7228
- # Invocation example:
7229
- #
7230
- # ry --shellscript
7231
- #
7232
- # ===================================================================== #
7233
- when /^-?-?shellscript$/i
7234
- action(:generate_a_big_shell_script)
7235
- # ===================================================================== #
7236
- # === Show all Installed Programs, via a ruby-gtk3 widget
7237
- #
7238
- # Invocation example:
7239
- #
7240
- # rbt --installed-programs
7241
- #
7242
- # ===================================================================== #
7243
- when /^-?-?installed(-|_| )?programs$/i,
7244
- /^-?-?gtk(-|_| )?installed(-|_| )?programs$/i
7245
- require 'rbt/gui/gtk3/installed_programs/installed_programs.rb'
7246
- RBT::GUI::Gtk::InstalledPrograms.run
7247
- # ===================================================================== #
7248
- # === Start the main libui widget
7249
- #
7250
- # This entry point allows the user to start the libui-bindings for
7251
- # the SQL-centric compilation GUI.
7252
- #
7253
- # Invocation example:
7254
- #
7255
- # rbt --libui
7256
- #
7257
- # ===================================================================== #
7258
- when /^-?-?libui$/i
7259
- require 'rbt/gui/libui/compile_via_sql_database/compile_via_sql_database.rb'
7260
- RBT::GUI::LibUI::CompileProgram.new
7261
- # ===================================================================== #
7262
7276
  # === Show all available programs
7263
7277
  #
7264
7278
  # This entry point allows the user to display all available programs,
@@ -8944,19 +8958,6 @@ class SoftwareManager < RBT::Action # === RBT::Action::SoftwareManager
8944
8958
  when /^-?-?LC_?ALL$/i
8945
8959
  ENV['LC_ALL'] = 'C'
8946
8960
  # ===================================================================== #
8947
- # === Keep the archive extracted
8948
- #
8949
- # The user can use this entry point if he/she dodoes not want
8950
- # to delete the extracted archive again.
8951
- #
8952
- # Keep our source archive extracted:
8953
- #
8954
- # ry htop ke
8955
- #
8956
- # ===================================================================== #
8957
- when *ARRAY_HELP_KEEP_EXTRACTED_OPTIONS
8958
- do_set_keep_extracted
8959
- # ===================================================================== #
8960
8961
  # === Check for the latest program
8961
8962
  #
8962
8963
  # Check for the latest program: