xezat 0.3.2 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 19e1eef962e59cf81c84a69ea321838d0b0542952073b429cb0f9af0d8cd7dd3
4
- data.tar.gz: 88a9a875473d8e11ab01651393740b06af772b9c1f7ce18e9e3fc74909971b1b
3
+ metadata.gz: eb4e15ff6a5eab549ec2a89d711b6d81ec7a4e05656ecf59524cc472746dfe6c
4
+ data.tar.gz: 3f2c68eee2a3699adb2c2796bac9a988708bd8395b3e83f4ecd449b09e768c1b
5
5
  SHA512:
6
- metadata.gz: cf83fa1fbc96dfd22a07d64c974fc3d279cd00a3021315d18948011d44354624d8e426c88bdd654bd63c27a63b01ece6f47a842ed9cba54fb77cf50fa1d754d2
7
- data.tar.gz: b4132baf3892fccce8e9b19f6701751878be50a74e08551cc601c921a1ccfe25f3b29f7730d160a7cda93c51306a95ba47e4234ce99a84754b40b4849a50f5e6
6
+ metadata.gz: 1750d00392ebe3232b98098803aee8ea6d45f661de0c754e63b3ee4ee149fe9fd9e6309015c7645f2e4936a26c09110139a84da41f46d9416c25c8b5978c8497
7
+ data.tar.gz: 508ef5825975aa6bbaa48c58d9b7f957215f190c4747f73ccdec88f6d93d09bf0fca26c24049910d14cf505aae99e4f16472c5f313eb5f8b3b2d59dbf908184c
data/README.md CHANGED
@@ -1,39 +1,59 @@
1
1
  # Xezat
2
2
 
3
3
  [![Actions](https://github.com/fd00/xezat/actions/workflows/ruby.yml/badge.svg)](https://github.com/fd00/xezat/)
4
+ [![Gem Version](https://badge.fury.io/rb/xezat.svg)](https://badge.fury.io/rb/xezat)
4
5
 
5
- xezat helps you win at cygport.
6
+ Xezat is a helper tool for your daily packaging tasks with [Cygport](httpss://cygwin.com/cygport/).
6
7
 
7
- ## Installation
8
+ ## Features
8
9
 
9
- Add this line to your application's Gemfile:
10
+ Xezat provides the following subcommands through the `xezat` command:
10
11
 
11
- ```ruby
12
- gem 'xezat'
13
- ```
12
+ * `init`: Interactively generates a new `cygport` file.
13
+ * `bump`: Bumps the package version and updates the `README` file.
14
+ * `validate`: Validates that the `cygport` file and related files adhere to conventions.
15
+ * `port`: Copies the `cygport` to a Git repository.
16
+ * `announce`: Generates a template for ITP (Intent to Package) or `cygport` update announcements.
17
+ * `doctor`: Checks your system for potential problems.
18
+ * `generate`: Generates development files used by `cygport`.
19
+ * `debug`: Assists in debugging `cygport` files.
14
20
 
15
- And then execute:
21
+ You can check the details of each command with `xezat <command> --help`.
16
22
 
17
- $ bundle
23
+ ## Installation
18
24
 
19
- Or install it yourself as:
25
+ Install the gem:
20
26
 
21
- $ gem install xezat
27
+ ```bash
28
+ gem install xezat
29
+ ```
22
30
 
23
31
  ## Usage
24
32
 
25
- TODO: Write usage instructions here
33
+ ### 1. Creating a new package
34
+
35
+ ```bash
36
+ xezat init foo.cygport
37
+ ```
26
38
 
27
- ## Development
39
+ ### 2. Bumping the version
28
40
 
29
- After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
41
+ ```bash
42
+ xezat bump foo.cygport
43
+ ```
30
44
 
31
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
45
+ ### 3. Validating the package
46
+
47
+ ```bash
48
+ xezat validate foo.cygport
49
+ ```
32
50
 
33
51
  ## Contributing
34
52
 
35
- Bug reports and pull requests are welcome on GitHub at https://github.com/fd00/xezat.
53
+ Bug reports and pull requests are welcome on GitHub at [https://github.com/fd00/xezat](https://github.com/fd00/xezat).
54
+
55
+ This project utilizes Google Gemini for development assistance.
36
56
 
37
57
  ## License
38
58
 
39
- The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
59
+ The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
data/exe/xezat CHANGED
@@ -5,7 +5,6 @@ Encoding.default_external = 'UTF-8'
5
5
 
6
6
  self_file =
7
7
  if File.symlink?(__FILE__)
8
- require 'pathname'
9
8
  Pathname.new(__FILE__).realpath
10
9
  else
11
10
  __FILE__
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'bashvar'
4
+ require 'open3'
5
+ require 'xezat'
6
+
7
+ module Xezat
8
+ def bashvar(cygport)
9
+ command = ['bash', File.expand_path(File.join(DATA_DIR, 'bashvar.sh')), cygport]
10
+ result, error, status = Open3.capture3(command.join(' '))
11
+ raise CygportProcessError, error unless status.success?
12
+
13
+ BashVar.parse(result, symbolize_names: true)
14
+ end
15
+ end
@@ -15,7 +15,7 @@ module Xezat
15
15
  File.dirname(file)
16
16
  end.sort.uniq.join(':')
17
17
  Xezat.logger.debug(" Additional PATH = #{additional_path.gsub(Regexp.new(variables[:D]), '')}")
18
- command = ['bash', File.expand_path(File.join(DATA_DIR, 'cygport_dep.sh')), cygport]
18
+ command = ['bash', File.expand_path(File.join(DATA_DIR, 'cygport.sh')), cygport, 'dep']
19
19
  result, error, status = Open3.capture3({ 'PATH' => "#{additional_path}:#{ENV.fetch('PATH')}" }, command.join(' '))
20
20
  Xezat.logger.warn(" Stderr = #{error}") unless error.empty?
21
21
  raise CygportProcessError, error unless status.success?
@@ -26,11 +26,11 @@ module Xezat
26
26
 
27
27
  def resolve_pseudo(pkg, pkgs)
28
28
  case pkg
29
- when 'python3'
29
+ when /^python3\s*/
30
30
  pkgs[:python39]
31
- when 'perl5_036'
31
+ when /^perl5_0\d{2}$/
32
32
  pkgs[:perl_base]
33
- when 'ruby_32'
33
+ when /^ruby_\d{2}$/
34
34
  pkgs[:ruby]
35
35
  else
36
36
  pkg
@@ -0,0 +1,53 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'fileutils'
4
+ require 'xezat'
5
+ require 'xezat/config'
6
+ require 'xezat/variables'
7
+
8
+ module Xezat
9
+ class NoDistDirectoryError < StandardError
10
+ end
11
+
12
+ module Command
13
+ class Dist
14
+ include Xezat
15
+
16
+ def initialize(options, cygport)
17
+ @options = options
18
+ @cygport = cygport
19
+ end
20
+
21
+ def execute
22
+ Xezat.logger.debug('Start distributing')
23
+ vars = variables(@cygport)
24
+
25
+ noop = @options[:noop]
26
+ verbose = @options[:noop] || @options[:verbose]
27
+
28
+ arch = vars[:ARCH]
29
+ release_dir = File.expand_path(File.join(get_dist_directory(@options), arch, 'release'))
30
+ pkg_dir = File.expand_path(File.join(release_dir, vars[:PN]))
31
+ dist_dir = File.expand_path(File.join(vars[:distdir], vars[:PN]))
32
+
33
+ if Dir.exist?(pkg_dir)
34
+ Xezat.logger.warn(" Package directory already exists : #{pkg_dir} (skip)")
35
+ else
36
+ Xezat.logger.debug(" Copy package to release directory : #{pkg_dir}")
37
+ FileUtils.cp_r(dist_dir, release_dir, noop:, verbose:)
38
+ end
39
+
40
+ Xezat.logger.debug('End distributing')
41
+ end
42
+
43
+ def get_dist_directory(options)
44
+ conf = config(options[:config])
45
+ dist_dir = conf['xezat']['distdir'] || options[:distdir]
46
+ raise NoDistDirectoryError if dist_dir.nil?
47
+
48
+ Xezat.logger.debug(" Dist directory: #{dist_dir}")
49
+ dist_dir
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,55 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'fileutils'
4
+ require 'open3'
5
+ require 'xezat'
6
+ require 'xezat/variables'
7
+
8
+ module Xezat
9
+ module Command
10
+ class Prep
11
+ include Xezat
12
+
13
+ def initialize(options, cygport)
14
+ @options = options
15
+ @cygport = cygport
16
+ end
17
+
18
+ def execute
19
+ Xezat.logger.debug('Start prep')
20
+ invoke_cygport_command('fetch')
21
+ invoke_cygport_command('prep')
22
+ copy_readme_if_exists
23
+ Xezat.logger.debug('End prep')
24
+ end
25
+
26
+ private
27
+
28
+ def invoke_cygport_command(command)
29
+ Xezat.logger.debug(" Execute cygport #{command}")
30
+ script = File.expand_path(File.join(DATA_DIR, 'cygport.sh'))
31
+ output = +''
32
+ Open3.popen2e("bash #{script} #{@cygport} #{command}") do |_stdin, stdout_err, wait_thr|
33
+ stdout_err.each_line do |line|
34
+ $stdout.print(line)
35
+ $stdout.flush
36
+ output << line
37
+ end
38
+ raise CygportProcessError, output unless wait_thr.value.success?
39
+ end
40
+ end
41
+
42
+ def copy_readme_if_exists
43
+ vars = variables(@cygport)
44
+ cygport_dir = File.dirname(File.expand_path(@cygport))
45
+ readme_source = File.expand_path('README', cygport_dir)
46
+ readme_dest = File.expand_path('README', vars[:C])
47
+
48
+ return unless File.exist?(readme_source)
49
+
50
+ Xezat.logger.debug(" Copy README from #{readme_source} to #{readme_dest}")
51
+ FileUtils.cp(readme_source, readme_dest)
52
+ end
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'xezat'
4
+
5
+ module Xezat
6
+ module Command
7
+ class Validate
8
+ def validate_appstream_path(variables)
9
+ legacy_dir = File.join(variables[:D], '/usr/share/appdata')
10
+ Dir.glob('*', base: legacy_dir).each do |file|
11
+ Xezat.logger.error(" #{file} is in the legacy AppStream path /usr/share/appdata, move it to /usr/share/metainfo")
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -30,10 +30,23 @@ module Xezat
30
30
  end
31
31
  end
32
32
 
33
+ EXECUTABLE_TIMEOUT = 5
34
+
33
35
  private
34
36
 
35
37
  def executable?(config)
36
- Open3.capture3(config.to_s)
38
+ Open3.popen3(config.to_s) do |stdin, stdout, stderr, wait_thr|
39
+ stdin.close
40
+ out_reader = Thread.new { stdout.read }
41
+ err_reader = Thread.new { stderr.read }
42
+ unless wait_thr.join(EXECUTABLE_TIMEOUT)
43
+ Process.kill(:KILL, wait_thr.pid)
44
+ wait_thr.join
45
+ raise "#{config} timed out after #{EXECUTABLE_TIMEOUT}s"
46
+ end
47
+ out_reader.join
48
+ err_reader.join
49
+ end
37
50
  rescue StandardError => e
38
51
  Xezat.logger.warn(" #{config} not executable: #{e}")
39
52
  raise e
@@ -2,6 +2,7 @@
2
2
 
3
3
  require 'net/http'
4
4
  require 'uri'
5
+ require 'xezat/command/validate/appstream'
5
6
  require 'xezat/command/validate/config'
6
7
  require 'xezat/command/validate/license'
7
8
  require 'xezat/command/validate/pkgconfig'
@@ -47,6 +48,9 @@ module Xezat
47
48
  Xezat.logger.debug(' Validate *-config')
48
49
  validate_config(vars, gcc_version)
49
50
 
51
+ Xezat.logger.debug(' Validate AppStream path')
52
+ validate_appstream_path(vars)
53
+
50
54
  Xezat.logger.debug('End validating')
51
55
  end
52
56
 
@@ -58,8 +62,10 @@ module Xezat
58
62
 
59
63
  def validate_category(category)
60
64
  categories_file = File.expand_path(File.join(DATA_DIR, 'categories.yaml'))
61
- Xezat.logger.error(" Category is invalid : #{category}") unless
62
- YAML.safe_load(File.open(categories_file), symbolize_names: true, permitted_classes: [Symbol]).include?(category.downcase)
65
+ valid_categories = YAML.safe_load(File.open(categories_file), symbolize_names: true, permitted_classes: [Symbol])
66
+ category.split.each do |cat|
67
+ Xezat.logger.error(" Category is invalid : #{cat}") unless valid_categories.include?(cat.downcase)
68
+ end
63
69
  end
64
70
 
65
71
  def validate_homepage(homepage)
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Xezat
4
+ module Detector
5
+ class GnomeCommon
6
+ def detect?(variables)
7
+ variables.key?(:_gnome2_CYGCLASS_)
8
+ end
9
+ end
10
+ end
11
+ end
@@ -31,6 +31,10 @@ module Xezat
31
31
  Xezat.logger.debug(' Remove python27 because of detecting python3x')
32
32
  tools.delete(:python27)
33
33
  end
34
+ if tools.include?(:libtool) && tools.include?(:cmake)
35
+ Xezat.logger.debug(' Remove libtool because of detecting cmake')
36
+ tools.delete(:libtool)
37
+ end
34
38
  tools
35
39
  end
36
40
  end
data/lib/xezat/main.rb CHANGED
@@ -62,6 +62,15 @@ module Xezat
62
62
  Command::Port.new(options, cygport).execute
63
63
  end
64
64
 
65
+ desc 'dist cygport', 'Copy dist directory to release directory'
66
+ option :noop, type: :boolean, aliases: '-n', desc: 'dry run'
67
+ option :distdir, type: :string, aliases: '-d', desc: 'specify dist directory'
68
+
69
+ def dist(cygport)
70
+ require 'xezat/command/dist'
71
+ Command::Dist.new(options, cygport).execute
72
+ end
73
+
65
74
  desc 'validate cygport', 'Validate files'
66
75
  option :ignore, type: :boolean, aliases: '-i', desc: 'ignore error'
67
76
 
@@ -76,5 +85,12 @@ module Xezat
76
85
  require 'xezat/command/announce'
77
86
  Command::Announce.new(nil, cygport).execute
78
87
  end
88
+
89
+ desc 'prep cygport', 'Fetch and prepare sources'
90
+
91
+ def prep(cygport)
92
+ require 'xezat/command/prep'
93
+ Command::Prep.new(options, cygport).execute
94
+ end
79
95
  end
80
96
  end
@@ -3,14 +3,12 @@
3
3
  require 'English'
4
4
  require 'etc'
5
5
  require 'facets/file/atomic_write'
6
- require 'facets/string/word_wrap'
7
- require 'open3'
8
- require 'uri'
9
6
  require 'yaml'
10
7
  require 'xezat'
8
+ require 'xezat/bashvar'
11
9
 
12
10
  module Xezat
13
- def variables(cygport, var2yaml_fetcher: nil)
11
+ def variables(cygport)
14
12
  cygport_dir = File.dirname(File.absolute_path(cygport))
15
13
  cache_file = File.expand_path(File.join(cygport_dir, "#{File.basename(cygport, '.cygport')}.#{Etc.uname[:machine]}.yml"))
16
14
 
@@ -23,48 +21,13 @@ module Xezat
23
21
  end
24
22
  end
25
23
 
26
- result = if var2yaml_fetcher
27
- var2yaml_fetcher.call(cygport)
28
- else
29
- execute_var2yaml(cygport)
30
- end
31
-
32
- result.gsub!(/^.*\*\*\*.*$/, '')
33
-
34
- begin
35
- variables = YAML.safe_load(result, symbolize_names: true, permitted_classes: [Symbol]).each_value do |v|
36
- v.strip! if v.respond_to?(:strip)
37
- end
38
- rescue Psych::SyntaxError => e
39
- print_yaml(result)
40
- raise e
41
- end
42
-
43
- variables[:DESCRIPTION].word_wrap!(79)
24
+ vars = bashvar(cygport)
44
25
 
45
26
  File.atomic_write(cache_file) do |f|
46
27
  Xezat.logger.debug(' Write cache for variables')
47
- f.write(YAML.dump(variables))
48
- end
49
-
50
- variables
51
- end
52
-
53
- def print_yaml(result)
54
- lineno = 1
55
- result.split($INPUT_RECORD_SEPARATOR).each do |line|
56
- printf '%<lineno>5d | %<line>s%<ls>s', lineno:, line:, ls: $INPUT_RECORD_SEPARATOR
57
- lineno += 1
28
+ f.write(YAML.dump(vars))
58
29
  end
59
- end
60
-
61
- private
62
-
63
- def execute_var2yaml(cygport)
64
- command = ['bash', File.expand_path(File.join(DATA_DIR, 'var2yaml.sh')), cygport]
65
- result, error, status = Open3.capture3(command.join(' '))
66
- raise CygportProcessError, error unless status.success?
67
30
 
68
- result
31
+ vars
69
32
  end
70
33
  end
data/lib/xezat/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Xezat
4
- VERSION = '0.3.2'
4
+ VERSION = '0.5.0'
5
5
  end
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/bash
2
+
3
+ bashvar()
4
+ {
5
+ compgen -v | while read var; do declare -p "$var"; done
6
+ }
7
+
8
+ source ${CYGPORT:-/usr/bin/cygport} $* bashvar
@@ -4,14 +4,12 @@
4
4
  - archive
5
5
  - audio
6
6
  - base
7
- - benchmark
8
7
  - comm
9
8
  - database
10
9
  - debug
11
10
  - devel
12
11
  - doc
13
12
  - editors
14
- - emulators
15
13
  - games
16
14
  - gnome
17
15
  - graphics
@@ -0,0 +1,5 @@
1
+ #!/bin/bash
2
+
3
+ export LANG=C
4
+
5
+ source ${CYGPORT:-/usr/bin/cygport} $*
@@ -2,6 +2,7 @@
2
2
  ------------------------------------------
3
3
  <%= variables[:DESCRIPTION] -%>
4
4
 
5
+
5
6
  Runtime requirements:
6
7
  <% info[:runtimes].each { |runtime| -%>
7
8
  <%= runtime %>
data/xezat.gemspec CHANGED
@@ -40,11 +40,13 @@ Gem::Specification.new do |spec|
40
40
  spec.bindir = 'exe'
41
41
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
42
42
  spec.require_paths = ['lib']
43
- spec.required_ruby_version = '>= 3.2.2'
43
+ spec.required_ruby_version = '>= 4.0.5'
44
44
 
45
+ spec.add_dependency 'bashvar', '>= 0.1.1'
45
46
  spec.add_dependency 'colorize', '>= 1.1.0'
46
47
  spec.add_dependency 'facets', '>= 3.1.0'
47
48
  spec.add_dependency 'github-linguist', '>= 9.1.0'
49
+ spec.add_dependency 'logger', '>= 1.6.0'
48
50
  spec.add_dependency 'pkg-config', '>= 1.6.1'
49
51
  spec.add_dependency 'spdx', '>= 4.1.5'
50
52
  spec.add_dependency 'thor', '>= 1.2.2'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xezat
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.2
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daisuke Fujimura (fd0)
@@ -9,6 +9,20 @@ bindir: exe
9
9
  cert_chain: []
10
10
  date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: bashvar
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - ">="
17
+ - !ruby/object:Gem::Version
18
+ version: 0.1.1
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - ">="
24
+ - !ruby/object:Gem::Version
25
+ version: 0.1.1
12
26
  - !ruby/object:Gem::Dependency
13
27
  name: colorize
14
28
  requirement: !ruby/object:Gem::Requirement
@@ -51,6 +65,20 @@ dependencies:
51
65
  - - ">="
52
66
  - !ruby/object:Gem::Version
53
67
  version: 9.1.0
68
+ - !ruby/object:Gem::Dependency
69
+ name: logger
70
+ requirement: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: 1.6.0
75
+ type: :runtime
76
+ prerelease: false
77
+ version_requirements: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - ">="
80
+ - !ruby/object:Gem::Version
81
+ version: 1.6.0
54
82
  - !ruby/object:Gem::Dependency
55
83
  name: pkg-config
56
84
  requirement: !ruby/object:Gem::Requirement
@@ -217,6 +245,7 @@ files:
217
245
  - README.md
218
246
  - exe/xezat
219
247
  - lib/xezat.rb
248
+ - lib/xezat/bashvar.rb
220
249
  - lib/xezat/command/announce.rb
221
250
  - lib/xezat/command/bump.rb
222
251
  - lib/xezat/command/bump/changelog.rb
@@ -229,11 +258,14 @@ files:
229
258
  - lib/xezat/command/bump/src_uri.rb
230
259
  - lib/xezat/command/bump/tool.rb
231
260
  - lib/xezat/command/debug.rb
261
+ - lib/xezat/command/dist.rb
232
262
  - lib/xezat/command/doctor.rb
233
263
  - lib/xezat/command/generate.rb
234
264
  - lib/xezat/command/init.rb
235
265
  - lib/xezat/command/port.rb
266
+ - lib/xezat/command/prep.rb
236
267
  - lib/xezat/command/validate.rb
268
+ - lib/xezat/command/validate/appstream.rb
237
269
  - lib/xezat/command/validate/config.rb
238
270
  - lib/xezat/command/validate/license.rb
239
271
  - lib/xezat/command/validate/pkgconfig.rb
@@ -253,6 +285,7 @@ files:
253
285
  - lib/xezat/detector/font-util.rb
254
286
  - lib/xezat/detector/gengetopt.rb
255
287
  - lib/xezat/detector/gettext-devel.rb
288
+ - lib/xezat/detector/gnome-common.rb
256
289
  - lib/xezat/detector/gnulib.rb
257
290
  - lib/xezat/detector/gobject-introspection.rb
258
291
  - lib/xezat/detector/halibut.rb
@@ -282,9 +315,10 @@ files:
282
315
  - lib/xezat/variables.rb
283
316
  - lib/xezat/version.rb
284
317
  - share/xezat/autoconf-archive.yml
318
+ - share/xezat/bashvar.sh
285
319
  - share/xezat/categories.yaml
286
320
  - share/xezat/compilers.yaml
287
- - share/xezat/cygport_dep.sh
321
+ - share/xezat/cygport.sh
288
322
  - share/xezat/languages.yaml
289
323
  - share/xezat/repository/bitbucket.yaml
290
324
  - share/xezat/repository/github.yaml
@@ -298,7 +332,6 @@ files:
298
332
  - share/xezat/template/pkgconfig/Makefile.am
299
333
  - share/xezat/template/pkgconfig/cmake.erb
300
334
  - share/xezat/template/pkgconfig/pkgconfig.erb
301
- - share/xezat/var2yaml.sh
302
335
  - xezat.gemspec
303
336
  homepage: https://github.com/fd00/xezat
304
337
  licenses:
@@ -312,14 +345,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
312
345
  requirements:
313
346
  - - ">="
314
347
  - !ruby/object:Gem::Version
315
- version: 3.2.2
348
+ version: 4.0.5
316
349
  required_rubygems_version: !ruby/object:Gem::Requirement
317
350
  requirements:
318
351
  - - ">="
319
352
  - !ruby/object:Gem::Version
320
353
  version: '0'
321
354
  requirements: []
322
- rubygems_version: 3.6.9
355
+ rubygems_version: 4.0.10
323
356
  specification_version: 4
324
357
  summary: xezat helps you win at cygport.
325
358
  test_files: []
@@ -1,5 +0,0 @@
1
- #!/bin/bash
2
-
3
- export LANG=C
4
-
5
- source ${CYGPORT:-/usr/bin/cygport} $* dep
@@ -1,33 +0,0 @@
1
- #!/bin/bash
2
-
3
- var2yaml()
4
- {
5
- for var in `compgen -A variable`
6
- do
7
- [ $var = 'BASH_COMMAND' ] && continue
8
- [ $var = 'COMP_WORDBREAKS' ] && continue
9
- [ $var = 'HOMEPATH' ] && continue
10
- [ $var = 'PERL_MB_OPT' ] && continue
11
- [ $var = 'PSModulePath' ] && continue
12
- [ $var = '_cygport_orig_env' ] && continue
13
- [[ ${!var} =~ ^[A-Za-z]:.* ]] && continue
14
-
15
- echo -n :$var:
16
- if [[ `declare -p $var` =~ "declare -a" ]]
17
- then
18
- echo
19
- x=`printf '${!%s[@]}' $var`
20
- eval "keys=$x"
21
- for key in $keys
22
- do
23
- x=`printf '${%s[%s]}' $var $key`
24
- eval "value=$x"
25
- echo " -" '"'$value'"'
26
- done
27
- else
28
- echo ' "'`echo "${!var}" | sed -e "s/\\n/ /g"`'"'
29
- fi
30
- done
31
- }
32
-
33
- source ${CYGPORT:-/usr/bin/cygport} $* var2yaml