dorian-dot 0.3.1 → 0.4.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/bin/dot +11 -11
  3. metadata +17 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c2310c29f3888978a5e3f64ff476b9447f1cd32409d67392818bbdec49d464bd
4
- data.tar.gz: 921ca088c54483fdf6b5d49df3491da557bb5a71f455513b4c92631b45b6adee
3
+ metadata.gz: b43f7a81c147baf2d07a733a476455fe89696729597bc0f372fab762369f89bf
4
+ data.tar.gz: 7b64d8acab973e4040f167f734c788e453c8ff0398b87c13930f0b9d7dd89af2
5
5
  SHA512:
6
- metadata.gz: 60e19d35d61eb49f034bf8d1efb0501ebff70ee91b36a3b0d4c70caaec4dad25cd91e58cacceed421699abd34a31c224cf20af26338a715a1ebe3e28d3a159d0
7
- data.tar.gz: a30214f3bb296e8f1734b2ffa06074df74dc20a607f8fb99908cc8b05b66a3809806bd41859ca896aad2e95b052eb65c31a8552e692e00404bb81332a2d5c932
6
+ metadata.gz: 5e1e75fd39be1c947ce58c27fcc0e3be3ef0664421ef0b746f82709250013b4dd77923231c4e562119bcc3cb75f718b1de89362b387d39b6fe949e3ad8969844
7
+ data.tar.gz: 90a6b63811b987fc1f06fa175627d92e42813afe5364822f16768d937bfcdc70231f29c9e561587e97b359f3878a14aeeadb487220d33dba54ef6fe498e489a1
data/bin/dot CHANGED
@@ -2,20 +2,20 @@
2
2
  # frozen_string_literal: true
3
3
 
4
4
  require "fileutils"
5
+ require "git"
5
6
 
6
7
  if ARGV.size != 1
7
8
  puts "USAGE: dot DIRECTORY"
8
9
  exit
9
10
  end
10
11
 
11
- dir = ARGV[0]
12
- files = Dir.glob("#{dir}/**/*", File::FNM_DOTMATCH)
13
- files = files.grep_v(%r{/\.git/})
14
- files = files.select { |file| File.file?(file) }
15
- files.each do |file|
16
- file = file.gsub("//", "/")
17
- barefile = file.gsub(dir, "").gsub(%r{^/}, "")
18
- homefile = "#{Dir.home}/#{barefile}".gsub("//", "/")
19
- File.delete(homefile) if File.exist?(homefile) || File.symlink?(homefile)
20
- FileUtils.ln_s(File.expand_path(file), homefile, verbose: true)
21
- end
12
+ Git
13
+ .open(ARGV.first)
14
+ .ls_files
15
+ .map(&:first)
16
+ .each do |file|
17
+ homefile = "#{Dir.home}/#{file}"
18
+ dotfile = File.expand_path("#{ARGV.first.chomp("/")}/#{file}")
19
+ File.delete(homefile) if File.exist?(homefile) || File.symlink?(homefile)
20
+ FileUtils.ln_s(dotfile, homefile, verbose: true)
21
+ end
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dorian-dot
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dorian Marié
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-02-08 00:00:00.000000000 Z
12
- dependencies: []
11
+ date: 2024-02-22 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: git
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1'
13
27
  description: |-
14
28
  Links dot files e.g. `dot ~/src/dotfiles`
15
29