Class: RBT::Cookbooks::RegisteredBinaries
Overview
RBT::Cookbooks::RegisteredBinaries
Constant Summary
Constants inherited
from Registered
RBT::Cookbooks::Registered::SHOW_PROGRAM_NAME
LeanPrototype::ALL_COLOUR_METHODS, LeanPrototype::ARRAY_KDE_KONSOLE_COLOURS_IN_USE, LeanPrototype::DAY_NAMES, LeanPrototype::NAMESPACE, LeanPrototype::SILENT_REDIRECTION
Class Method Summary
collapse
-
.location? ⇒ Boolean
# === RBT::Cookbooks::RegisteredBinaries.location? ========================================================================= #.
-
.opnn ⇒ Object
# === RegisteredBinaries.opnn ========================================================================= #.
-
.search_for_this_program(i, &block) ⇒ Object
# === RBT::Cookbooks::RegisteredBinaries.search_for_this_program ========================================================================= #.
Instance Method Summary
collapse
Methods inherited from Registered
#also_storing_into, #hash_to_be_stored?, #it_is_part_of_the_package, #ruby_src_dir?, #ruby_src_dir_for_the_registered_yaml_files?, #set_this_program, #this_program?
Methods inherited from Base
#cat, #cd_back_to_the_current_working_directory, #consider_reporting_how_many_programs_are_registered, #cookbook_files?, #copy_recursively, #delete_code_of_conduct?, #determine_appdir_prefix_from_this_input, #directory_validation?, #do_not_show_names, #fast_return_file_size_of_this_program, #file_last_symlinked_program?, #file_programs_version_url, #gem_version, #is_a_64bit_system?, #is_ccache_available?, #is_porg_available?, #is_this_binary_registered?, #is_this_program_included?, #make_command?, #make_install_command?, #new_cookbook_instance_for, #program_exists?, #publish_list_of_all_programs_version, #rcp, registered_binaries?, #remove_symlink, #rename_kde_konsole_tab, #repackage, #report_n_programs, #report_working_directory, #return_compile_time_statistics, #return_n_random_characters, #return_version_of_this_program, #run_make_then_make_install, #sanitize_url1_entry, #set_source_directory, #show_overview_over_available_utility_scripts, #symlink_all_files_from_this_directory_to_that_directory, #system_tags?, #upload_list_of_all_programs_version, #use_yaml_database_for_tags?, #warn_and_exit, #wget
#a_or_an?, #abbreviations?, #absolute_path, #action, #add_to_the_commandline_arguments, #all_binaries?, #all_files_from, #all_libraries?, #allowed_cookbook_entries?, #appdir_location_of?, #append_onto_the_internal_hash, #append_what_into, #archive_type_of?, #available_programs?, #be_quiet?, #be_verbose?, #begins_with_a_comment?, #capitalize_first_alphabetical_character, #cd_to_the_log_directory, #cd_to_the_temp_directory, #change_directory, #change_permission, #cheering_person?, #chmod, #chop_off_archive, #clear_commandline_arguments, #cliner, #coloured_and_padded_e, #coloured_and_padded_esystem, #coloured_esystem, #colourize_directory_for_system_results, #colourize_this_error, #colourize_this_file_path, #colourize_this_warning, #commandline_arguments?, #commandline_arguments_without_hyphens?, #comment, #convert_dd_mm_yyyy_to_its_long_variant, #convert_env_variable, #copy_directory, #copy_files, #cpr, #create_directory, #current_hour?, #dd_mmm_yyy, #debug, #debug?, #directory_expanded_cookbooks?, #disable_colours, #display_md5sum?, #do_not_debug, #does_the_cookbook_include_this_program?, #does_this_expanded_cookbook_file_exist_for_this_program?, #does_this_file_exist?, #does_this_file_exist_and_is_it_a_file?, #e, #eblue, #ecomment, #ecrimson, #edir, #editor?, #efancy, #eimp, #enable_colours, #enable_debug, #ensure_main_encoding_for, #eparse, #esystem, #esystem_gold, #etomato, #ewarn, #exit_program, #expanded_cookbooks_directory_exists?, #extract_this_archive, #extract_to?, #file_compiled_programs?, #file_dirname_retaining_trailing_slash, #file_predefined_installation_instructions?, #file_specification_of_registered_cookbook_entries, #find_cookbook_alias_for, #find_this_yaml_file, #first_argument?, #first_non_hyphen_argument?, #get_all_directories_from, #get_all_files_from, #get_all_programs, #get_date, #get_extended_date, #get_files_and_directories_from, #go_to_base_dir, #home_dir?, #host_system?, #infer_the_namespace, #internal_hash?, #internal_hash_set_commandline_arguments, #is_an_archive?, #is_directory?, #is_file?, #is_github_url?, #is_make_available?, #is_meson_installed?, #is_on_gobolinux?, #is_on_windows?, #is_roebe?, #is_superuser?, #is_symlink?, #is_this_a_header?, #is_this_a_library?, #is_this_program_included?, #iso_encoding?, #load_dataset_from_this_expanded_cookbook, #load_yaml, #load_yaml_file_from_the_cookbook_directory_for_this_program, #log_directory?, #main_encoding?, #meson_build_file_exists?, #months?, #move_file, #n_programs_are_available?, #n_programs_available?, #namespace?, #no_directory_exists_at, #no_directory_was_found_at, #no_opn, #no_such_file_exists, #open_in_browser, #open_in_editor, #opncomment, #opne, #opnef, #opnerev, #opnerror, #opnesystem, #opnewarn, #opnfancy, #packages_directory?, #path_to_this_expanded_cookbooks_dataset, #pkgconfig_directory?, #populate_the_internal_hash_with_default_values, #predefined_installation_instructions?, #prepend_this_commandline_argument, #program_version_of?, #project_base_directory?, #project_yaml_directory?, #query_path?, #rarrow?, #read_file, #read_file_in_default_encoding, #read_file_with_default_encoding, #readlines, #readlines_with_proper_encoding, #register_sigint, #registered_cookbook_entries?, #remove, #remove_archive_from_the_end, #remove_comments_from_each_line, #remove_directory, #remove_double_slashes, #remove_file, #remove_newlines, #remove_parens, #remove_symlink, #remove_the_first_commandline_argument, #remove_this_commandline_argument, #remove_this_entry_from_the_commandline_arguments, #remove_trailing_ANSII_escape_code, #remove_unnecessary_data_from_url, #rename, #report_pwd, #require_the_rbt_aliases, #reset_the_internal_hash, #return_all_archives_from_this_directory, #return_appdir_prefix, #return_commandline_arguments_with_leading_hyphens, #return_current_hour_minutes_second, #return_date, #return_day_of_the_month_based_on_utc, #return_full_time, #return_hours_minutes_seconds_based_on_utc, #return_location_to_this_programs_yaml_file, #return_month_based_on_this_number, #return_month_based_on_utc, #return_opnn, #return_program_information, #return_program_name_for_gobolinux_systems, #return_pwd, #return_unicode_warning_symbol_or_empty_string, #return_utc, #return_utc_time_in_a_format_similar_to_slackware, #return_weekday_based_on_utc, #return_year_based_on_utc, #rev, #run_simulation=, #run_simulation?, #sdir, #sdir_return_pwd, #set_be_silent, #set_be_verbose, #set_first_commandline_argument, #set_namespace, #set_use_opn, #set_xorg_buffer, #sfancy, #sfile, #silent_redirection?, #silently_create_this_directory_if_it_does_not_yet_exist, #simp, #source_base_directory?, #ssym, #stderr, #store_into_this_directory?, #string_right_arrow?, #swarn, #symlink, #sysbin_directory?, #sysetc_directory?, #sysinclude_directory?, #syslib_directory?, #sysshare_directory?, #system_directory?, #temp_directory?, #to_bool, #to_camelcase, #to_iso_encoding, #to_unicode, #today?, #touch, #try_to_require_beautiful_url, #try_to_require_the_environment_information_gem, #try_to_require_the_extracter_gem, #try_to_require_the_open_gem, #try_to_require_the_xorg_buffer, #try_to_require_wget, #try_to_return_a_special_compile_component, #unicode_cliner, #unicode_middle_cliner, #use_colours=, #use_colours?, #use_opn=, #use_opn?, #utf_encoding?, #verbose_truth, #word_wrap, #write_what_into, #write_what_into_via_unicode, #yes_or_no
Constructor Details
34
35
36
37
38
39
40
41
42
43
44
45
46
|
# File 'lib/rbt/registered/registered_binaries.rb', line 34
def initialize(
run_already = true
)
reset
if block_given?
yielded = yield
case yielded
when :be_quiet
set_be_quiet
end
end
run if run_already
end
|
Class Method Details
.location? ⇒ Boolean
#
RBT::Cookbooks::RegisteredBinaries.location?
#
.opnn ⇒ Object
#
RegisteredBinaries.opnn
#
118
119
120
|
# File 'lib/rbt/registered/registered_binaries.rb', line 118
def self.opnn
Opn.opn(namespace: NAMESPACE)
end
|
.search_for_this_program(i, &block) ⇒ Object
#
RBT::Cookbooks::RegisteredBinaries.search_for_this_program
#
109
110
111
112
113
|
# File 'lib/rbt/registered/registered_binaries.rb', line 109
def self.search_for_this_program(i, &block)
_ = ::RBT::Cookbooks::RegisteredBinaries.new(false, &block)
_.set_this_program(i)
_.search_for_this_program(i)
end
|
Instance Method Details
#report_to_the_user_what_we_will_do ⇒ Object
#
report_to_the_user_what_we_will_do
#
71
72
73
74
75
|
# File 'lib/rbt/registered/registered_binaries.rb', line 71
def report_to_the_user_what_we_will_do
opne 'Obtaining Information about available binaries next.'
opne 'This may take a while.'
opne orange('Please be patient.')
end
|
#reset ⇒ Object
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
# File 'lib/rbt/registered/registered_binaries.rb', line 51
def reset
super()
infer_the_namespace
@hash_to_be_stored = {} @cookbook_dataset = nil
@this_program = nil
end
|
#return_program_version_of(i) ⇒ Object
#
return_program_version_of
#
#run ⇒ Object
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
|
# File 'lib/rbt/registered/registered_binaries.rb', line 198
def run
report_to_the_user_what_we_will_do
available_programs?.each { |program_name|
_ = action(:SanitizeCookbook, program_name) { :fast }
binaries = _.binaries? unless binaries.empty?
e program_name if SHOW_PROGRAM_NAME
binaries.each {|entry|
@hash_to_be_stored[entry] = program_name
}
end
}
save_yaml_file
end
|
#save_yaml_file ⇒ Object
Also known as:
create_yaml_file
#
save_yaml_file
The method ‘save_yaml_file` will create the yaml file which lists our binaries (in hash format). Right now, we need to manually update this yaml file on our own.
#
91
92
93
94
95
96
97
98
99
100
101
102
103
104
|
# File 'lib/rbt/registered/registered_binaries.rb', line 91
def save_yaml_file
into = RBT.file_registered_binaries
what = YAML.dump(hash?)
e sfancy('Storing yaml dataset in ')
e ' '+sfile(into)
write_what_into(what, into)
if is_on_roebe?
into = "#{ruby_src_dir_for_the_registered_yaml_files?}"\
"#{File.basename(into)}"
also_storing_into
e "`#{sfile(into)}`"
write_what_into(what, into)
end
end
|
#search_for_this_program(i = @this_program) ⇒ Object
#
search_for_this_program
Use this method to search for a specific program.
#
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
|
# File 'lib/rbt/registered/registered_binaries.rb', line 134
def search_for_this_program(
i = @this_program
)
be_verbose = be_verbose?
i = i.to_s
if i.include? '/'
i = File.basename(i)
opne "The input includes a #{simp('/')} token. We will "\
"truncate this to the"
opne 'last part only, as we only keep the names registered, '\
'not the paths.'
opne "Thus, our input will be #{sfancy(i)}#{rev}."
end
if be_verbose
opne "#{rev}Searching for `#{sfancy(i)}#{rev}` now:"
end
if RBT.does_include? i
if be_verbose
opne "Yes, this appears to be already registered with the "\
"same name #{simp(i)}#{rev}."
end
program_version = RBT.swift_return_version_of_this_program(i)
if be_verbose
opne "Its program version is: #{lightblue(program_version)}"
end
return i
else
hash = load_yaml(FILE_REGISTERED_BINARIES)
if hash.keys.include?(i)
result = hash[i]
if be_verbose
opne "#{rev}The binary called `#{sfancy(i)}#{rev}` was found."
it_is_part_of_the_package(result)
opne rev+'The currently registered version of '+
tomato(result)+"#{rev} is: "+
orchid(
return_program_version_of(result)
)
end
return result
else
if be_verbose
opne sfancy(i)+rev+' is '+swarn('NOT')+rev+' included. We could '\
'not find any program'
opne 'including this program.'
end
end
false end
end
|