mac_setup 0.8.6 → 0.9.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 +4 -4
- data/.ruby-version +1 -1
- data/lib/mac_setup.rb +0 -2
- data/lib/mac_setup/configuration.rb +7 -1
- data/lib/mac_setup/plugins/dotfiles.rb +13 -2
- data/lib/mac_setup/plugins/keybase.rb +0 -20
- data/lib/mac_setup/version.rb +1 -1
- metadata +23 -23
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b172f86ac79a714d13f90f469e577965906888b4
|
4
|
+
data.tar.gz: e72880131a84e71201d210310b53cf0086394705
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 43c95d83b9c2e70f3e00ad528826cc606b3a782565852d8a163f8b0b0cee57f6bbf2156e61b0bfa5f23342217d7a03446e6f68de138d9d95154d8dad082cc514
|
7
|
+
data.tar.gz: f3cc4fffb8d1b2afe98fdc165fd42789d81f1544543c830e749412f28575ce59e57feabfa7d94ca54014aead0ca0a8321c8dc726243606ba81ba1fdb96744f10
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
system
|
data/lib/mac_setup.rb
CHANGED
@@ -51,8 +51,6 @@ module MacSetup
|
|
51
51
|
def install # (config_path, _options)
|
52
52
|
config = Configuration.new(DEFAULT_CONFIG_PATH)
|
53
53
|
|
54
|
-
GitRepoInstaller.install_repo(config.dotfiles_repo, dotfiles_path)
|
55
|
-
|
56
54
|
Shell.raw("brew update")
|
57
55
|
|
58
56
|
config = Configuration.new(DEFAULT_CONFIG_PATH)
|
@@ -4,7 +4,9 @@ require "set"
|
|
4
4
|
module MacSetup
|
5
5
|
class Configuration
|
6
6
|
InvalidConfigError = Class.new(StandardError)
|
7
|
-
DEFAULT_KEYS = [
|
7
|
+
DEFAULT_KEYS = [
|
8
|
+
:repo, :plugins, :git_repos, :symlinks, :taps, :brews, :fonts, :casks, :quicklook, :mas, :extra_dotfiles
|
9
|
+
]
|
8
10
|
|
9
11
|
def initialize(config_path)
|
10
12
|
@config_path = config_path
|
@@ -55,6 +57,10 @@ module MacSetup
|
|
55
57
|
@config.fetch("repo")
|
56
58
|
end
|
57
59
|
|
60
|
+
def extra_dotfiles
|
61
|
+
@config.fetch("extra_dotfiles", [])
|
62
|
+
end
|
63
|
+
|
58
64
|
def git_repos
|
59
65
|
@git_repos ||= @config["git_repos"] || {}
|
60
66
|
end
|
@@ -3,8 +3,19 @@ module MacSetup
|
|
3
3
|
class Dotfiles < MacSetup::Plugin
|
4
4
|
class << self
|
5
5
|
def add_requirements(config)
|
6
|
-
|
7
|
-
|
6
|
+
GitRepoInstaller.install_repo(config.dotfiles_repo, MacSetup.dotfiles_path)
|
7
|
+
paths = [MacSetup.dotfiles_path]
|
8
|
+
|
9
|
+
config.extra_dotfiles.each do |repo|
|
10
|
+
path = File.expand_path("~/.#{repo.split('/').last}")
|
11
|
+
paths << path
|
12
|
+
GitRepoInstaller.install_repo(repo, path)
|
13
|
+
end
|
14
|
+
|
15
|
+
paths.each do |path|
|
16
|
+
SymlinkPathBuilder.paths_for(path) do |source, target|
|
17
|
+
config.add(:symlinks, source => target)
|
18
|
+
end
|
8
19
|
end
|
9
20
|
end
|
10
21
|
end
|
@@ -6,13 +6,11 @@ module MacSetup
|
|
6
6
|
add_requirements(config)
|
7
7
|
install
|
8
8
|
log_in(config.keybase)
|
9
|
-
install_volume
|
10
9
|
end
|
11
10
|
|
12
11
|
def add_requirements(config)
|
13
12
|
config.require_value(:keybase)
|
14
13
|
config.add(:casks, :keybase)
|
15
|
-
add_private_dotfiles(config)
|
16
14
|
end
|
17
15
|
|
18
16
|
private
|
@@ -25,24 +23,6 @@ module MacSetup
|
|
25
23
|
# Using backticks doesn't work with the keybase login process
|
26
24
|
Shell.raw("keybase login #{username}")
|
27
25
|
end
|
28
|
-
|
29
|
-
# TODO: Investigate making this work with kext permissions
|
30
|
-
def install_volume
|
31
|
-
Shell.run("keybase install --components=fuse")
|
32
|
-
Shell.ask("Allow the extension in system preferences and then hit Return")
|
33
|
-
Shell.run("keybase install --components=helper,fuse,mountdir,kbfs")
|
34
|
-
end
|
35
|
-
|
36
|
-
def add_private_dotfiles(config)
|
37
|
-
keybase_dir = Dir.entries("/Volumes").find { |dir| dir.start_with?("Keybase") }
|
38
|
-
dotfiles_dir = "/Volumes/#{keybase_dir}/private/#{config.keybase}/dotfiles"
|
39
|
-
|
40
|
-
return unless Dir.exist?(dotfiles_dir)
|
41
|
-
|
42
|
-
SymlinkPathBuilder.paths_for(dotfiles_dir) do |source, target|
|
43
|
-
config.add(:symlinks, source => target)
|
44
|
-
end
|
45
|
-
end
|
46
26
|
end
|
47
27
|
end
|
48
28
|
end
|
data/lib/mac_setup/version.rb
CHANGED
metadata
CHANGED
@@ -1,97 +1,97 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mac_setup
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.9.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matt Wean
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-11-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - ~>
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '1.10'
|
20
20
|
type: :development
|
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.10'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - ~>
|
31
|
+
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '10.0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - ~>
|
38
|
+
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '10.0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rspec
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '0'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: rubocop
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- - ~>
|
59
|
+
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: 0.34.2
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- - ~>
|
66
|
+
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: 0.34.2
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rubocop-rspec
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- -
|
73
|
+
- - ">="
|
74
74
|
- !ruby/object:Gem::Version
|
75
75
|
version: '0'
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- -
|
80
|
+
- - ">="
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: pry
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- -
|
87
|
+
- - ">="
|
88
88
|
- !ruby/object:Gem::Version
|
89
89
|
version: '0'
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- -
|
94
|
+
- - ">="
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0'
|
97
97
|
description:
|
@@ -102,12 +102,12 @@ executables:
|
|
102
102
|
extensions: []
|
103
103
|
extra_rdoc_files: []
|
104
104
|
files:
|
105
|
-
- .codeclimate.yml
|
106
|
-
- .gitignore
|
107
|
-
- .rspec
|
108
|
-
- .rubocop.yml
|
109
|
-
- .ruby-version
|
110
|
-
- .travis.yml
|
105
|
+
- ".codeclimate.yml"
|
106
|
+
- ".gitignore"
|
107
|
+
- ".rspec"
|
108
|
+
- ".rubocop.yml"
|
109
|
+
- ".ruby-version"
|
110
|
+
- ".travis.yml"
|
111
111
|
- CODE_OF_CONDUCT.md
|
112
112
|
- Gemfile
|
113
113
|
- LICENSE.txt
|
@@ -150,17 +150,17 @@ require_paths:
|
|
150
150
|
- lib
|
151
151
|
required_ruby_version: !ruby/object:Gem::Requirement
|
152
152
|
requirements:
|
153
|
-
- -
|
153
|
+
- - ">="
|
154
154
|
- !ruby/object:Gem::Version
|
155
155
|
version: '0'
|
156
156
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
157
157
|
requirements:
|
158
|
-
- -
|
158
|
+
- - ">="
|
159
159
|
- !ruby/object:Gem::Version
|
160
160
|
version: '0'
|
161
161
|
requirements: []
|
162
162
|
rubyforge_project:
|
163
|
-
rubygems_version: 2.
|
163
|
+
rubygems_version: 2.5.2.3
|
164
164
|
signing_key:
|
165
165
|
specification_version: 4
|
166
166
|
summary: Tool to set up a Mac
|