confpkgs 0.0.2.pre1 → 0.0.2

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
  SHA1:
3
- metadata.gz: 9741d77609c3c589b73b3b9c518414a615f20db6
4
- data.tar.gz: 21a6e41e191fe007d4f9e1e3e7e888e82c9a3168
3
+ metadata.gz: 7e399139750dce891ed2fd3bd986cef023a84642
4
+ data.tar.gz: 32e52638d717b20d0fabd88a5bb3b674d032d690
5
5
  SHA512:
6
- metadata.gz: b4fab143468783b5b97a748603fad740300ab13b4511756a19e2c5ee1fb5756b9ba3c1cc27fc2402f77ef940fe336040e6014f8dbd97b68e7d88341979640555
7
- data.tar.gz: 1e918bb65d655d58c9a815b60f94f8381c6ebe17d71f41e99dbea2c9b70f999e3bd8ed5dfc320cf55d5b19984dea949b110e21d0b57a17cc94543805db3bc55b
6
+ metadata.gz: a8bed1fb4874c56e81ab449909c7d0469f6901f233ef2c103221968ffdead85a6f7d19f560fbd55305d3ebb0ef620680cb38692f1d80937b1121ccd8f468f5ed
7
+ data.tar.gz: d81079bc904225a9fd09ef495f6b0194ab3b3d9cfb17ce107aa3c37be9ff64b50daec7061862b944754eba546ddaa3ceac6624968c7309137ef42e0771e0a085
@@ -1 +1,8 @@
1
-
1
+ require_relative 'PackageManager'
2
+
3
+ module Confpkgs
4
+ class Apt < PackageManager
5
+ INSTALL_CMD = "apt-get -y install"
6
+ REMOVE_CMD = "apt-get -y --purge autoremove"
7
+ end
8
+ end
@@ -0,0 +1,43 @@
1
+ module Confpkgs
2
+ class PackageManager
3
+ #Package management operations as constants
4
+ INSTALL_CMD = ""
5
+ REMOVE_CMD = ""
6
+
7
+ attr_reader :op_msgs
8
+
9
+ def initialize
10
+ #Hash for storing package manager output for each pkg operation
11
+ @op_msgs = {}
12
+ end
13
+
14
+ def install(array_of_pkgs)
15
+ if self.class::INSTALL_CMD.empty?
16
+ raise Exception, "INSTALL_CMD must be implemented by subclass"
17
+ end
18
+ @op_msgs[:install] = %x(#{self.class::INSTALL_CMD} #{array_of_pkgs.join(' ')})
19
+ end
20
+
21
+ def remove(array_of_pkgs)
22
+ if self.class::REMOVE_CMD.empty?
23
+ raise Exception, "REMOVE_CMD must be implemented by subclass"
24
+ end
25
+ @op_msgs[:remove] = %x(#{self.class::REMOVE_CMD} #{array_of_pkgs.join(' ')})
26
+ end
27
+
28
+ #TODO: not fully implemented yet
29
+ =begin
30
+ #add external package repositories
31
+ def add_repos(repo_hash)
32
+ repo_hash.each do |repo, url|
33
+ #ar - add repo
34
+ #-f - add autorefresh flag to repo
35
+ #url - URL of repo
36
+ #repo - alias for repo
37
+ @op_msgs[:add_repos] = %x(zypper ar -f #{url} #{repo})
38
+ end
39
+ end
40
+ =end
41
+
42
+ end
43
+ end
@@ -1,39 +1,9 @@
1
+ require_relative 'PackageManager'
1
2
  module Confpkgs
2
- class Zypper
3
+ class Zypper < PackageManager
3
4
 
4
- attr_reader :op_msgs
5
+ INSTALL_CMD = "zypper --non-interactive in"
6
+ REMOVE_CMD = "zypper --non-interactive rm --clean-deps"
5
7
 
6
- def initialize
7
- #Hash for storing package manager output for each pkg operation
8
- @op_msgs = {}
9
- end
10
-
11
- #install pkgs
12
- def install(array_of_pkgs)
13
- #--non-interactive - use default answer for all prompts
14
- #in - install
15
- @op_msgs[:install] = %x(zypper --non-interactive in #{array_of_pkgs.join(' ')})
16
- end
17
-
18
- #remove pkgs
19
- def remove(array_of_pkgs)
20
- #rm - remove
21
- #--clean-deps - remove package with dependencies
22
- @op_msgs[:remove] = %x(zypper --non-interactive rm --clean-deps #{array_of_pkgs.join(' ')})
23
- end
24
-
25
- #TODO: not fully implemented yet
26
- =begin
27
- #add external package repositories
28
- def add_repos(repo_hash)
29
- repo_hash.each do |repo, url|
30
- #ar - add repo
31
- #-f - add autorefresh flag to repo
32
- #url - URL of repo
33
- #repo - alias for repo
34
- @op_msgs[:add_repos] = %x(zypper ar -f #{url} #{repo})
35
- end
36
- end
37
- =end
38
8
  end
39
9
  end
metadata CHANGED
@@ -1,27 +1,27 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: confpkgs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2.pre1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Kurgi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-01 00:00:00.000000000 Z
11
+ date: 2014-03-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: colored
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.2'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.2'
27
27
  - !ruby/object:Gem::Dependency
@@ -120,10 +120,10 @@ files:
120
120
  - LICENSE.txt
121
121
  - README.rdoc
122
122
  - bin/confpkgs
123
- - lib/Pkgfile
124
123
  - lib/Pkgfile.rb
125
124
  - lib/Utils.rb
126
125
  - lib/package_manager/Apt.rb
126
+ - lib/package_manager/PackageManager.rb
127
127
  - lib/package_manager/Zypper.rb
128
128
  homepage: http://github.com/martin1/confpkgs
129
129
  licenses:
@@ -140,9 +140,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
140
140
  version: '0'
141
141
  required_rubygems_version: !ruby/object:Gem::Requirement
142
142
  requirements:
143
- - - ">"
143
+ - - ">="
144
144
  - !ruby/object:Gem::Version
145
- version: 1.3.1
145
+ version: '0'
146
146
  requirements: []
147
147
  rubyforge_project:
148
148
  rubygems_version: 2.2.2
data/lib/Pkgfile DELETED
@@ -1,5 +0,0 @@
1
- #Example Pkgfile
2
- #this is a comment
3
- [install]
4
-
5
- [remove]