mullvadrb 0.0.6 → 0.0.7

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: 62025cd992ac7eb3131759b79871deac11d0005d138bc859ac0d25bce2cc0cc5
4
- data.tar.gz: '0458bee533857011a1f195b710119c9f2e69a9d78a6051b01be9ff6da61834ba'
3
+ metadata.gz: 6d3b81115b6138a117c121c0725b47153364d8dc37f8515a3e933491360fa7d1
4
+ data.tar.gz: 795ea1aced15a02a1fd3bf4f43c154e63ac424ef039db87a888fac02070a2008
5
5
  SHA512:
6
- metadata.gz: ab28e8cbbba0b1bb7428c9bc5ad2e2878cd55f3321dd081c0d16dc2222fb2e0840e196ff3ab08302a75bb2e0a9b2e3c196ecb2ce74e75b94d121128005aa1307
7
- data.tar.gz: e8a804c0c70e5b9fd1e15cfe9a1b2c87af1d72616601ccdde35f57f63bf7fbd868ce5bf838023fef028081444f43a2bd682d557ae7f879fbd634be82c702e1e0
6
+ metadata.gz: 8c31f37cb83e5b10c0ede4534f6ba1590f0d51671b88fd9a710e5ac3dda1a69a51c0c88b197af82b6d40a62701d69afff3ca22bdf8ad817384852811ae57c62a
7
+ data.tar.gz: 7fd4c145ea2e57481a48ff103fb9703f70c353d049fee924d1917fcb606b67e47b096ec9390e849cc667e93b2ecc4028326367f35b1593ad1632474a136ba41b
data/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ # 0.0.7
2
+
3
+ - Fixes settings configuration, updates Settings code.
4
+
1
5
  # 0.0.6
2
6
 
3
7
  - Adds DNS Blockers functionality.
@@ -2,53 +2,51 @@ module Mullvadrb
2
2
  module Settings
3
3
  CONFIG_FILE = File.expand_path('~/.local/share/mullvadrb/mullvadrb.yml').freeze
4
4
 
5
- class << self
6
- def load_config
7
- return unless File.exist?(CONFIG_FILE)
5
+ def load_config
6
+ return unless File.exist?(CONFIG_FILE)
8
7
 
9
- config_file = YAML.load(File.read(CONFIG_FILE))
10
- @backend = config_file[:backend]
11
- @locale = config_file[:locale]
12
- @wg = (@backend == 'wg')
13
- load_servers unless @wg
14
- require 'mullvadrb/wg_manager' if @wg
15
- end
8
+ config_file = YAML.load(File.read(CONFIG_FILE))
9
+ @backend = config_file[:backend]
10
+ @locale = config_file[:locale]
11
+ @wg = (@backend == 'wg')
12
+ load_servers unless @wg
13
+ require 'mullvadrb/wg_manager' if @wg
14
+ end
16
15
 
17
- def save_config!
18
- dir = File.expand_path('~/.local/share/mullvadrb/')
19
- system 'mkdir', '-p', dir unless File.exist?(dir)
20
- config = {
21
- backend: @backend,
22
- locale: @locale || I18n.locale
23
- }
24
- File.open(CONFIG_FILE, 'w+') do |f|
25
- f.write(config.to_yaml)
26
- end
16
+ def save_config!
17
+ dir = File.expand_path('~/.local/share/mullvadrb/')
18
+ system 'mkdir', '-p', dir unless File.exist?(dir)
19
+ config = {
20
+ backend: @backend,
21
+ locale: @locale || I18n.locale
22
+ }
23
+ File.open(CONFIG_FILE, 'w+') do |f|
24
+ f.write(config.to_yaml)
27
25
  end
26
+ end
28
27
 
29
- def load_servers
30
- @servers = Mullvadrb::Servers.servers
31
- end
28
+ def load_servers
29
+ @servers = Mullvadrb::Servers.servers
30
+ end
32
31
 
33
- def ask_backend
34
- backend = TTY::Prompt.new.select(I18n.t(:backend_which), cycle: true) do |menu|
35
- menu.choice name: I18n.t(:backend_wg), value: 'wg'
36
- menu.choice name: I18n.t(:backend_mullvad), value: 'mullvad'
37
- end
38
- @wg = (backend == 'wg')
39
- require 'mullvadrb/wg_manager' if @wg
40
- backend
32
+ def ask_backend
33
+ backend = TTY::Prompt.new.select(I18n.t(:backend_which), cycle: true) do |menu|
34
+ menu.choice name: I18n.t(:backend_wg), value: 'wg'
35
+ menu.choice name: I18n.t(:backend_mullvad), value: 'mullvad'
41
36
  end
37
+ @wg = (backend == 'wg')
38
+ require 'mullvadrb/wg_manager' if @wg
39
+ backend
40
+ end
42
41
 
43
- def languages
44
- language = TTY::Prompt.new.select(I18n.t(:language_which), cycle: true) do |menu|
45
- menu.choice name: I18n.t(:language_en), value: 'en'
46
- menu.choice name: I18n.t(:language_es), value: 'es'
47
- end
48
- @locale = language.to_sym
49
- I18n.locale = @locale
50
- save_config!
42
+ def languages
43
+ language = TTY::Prompt.new.select(I18n.t(:language_which), cycle: true) do |menu|
44
+ menu.choice name: I18n.t(:language_en), value: 'en'
45
+ menu.choice name: I18n.t(:language_es), value: 'es'
51
46
  end
47
+ @locale = language.to_sym
48
+ I18n.locale = @locale
49
+ save_config!
52
50
  end
53
51
  end
54
52
  end
data/lib/mullvadrb.rb CHANGED
@@ -17,15 +17,16 @@ module Mullvadrb
17
17
  # Main object instantiated, saves backend, i18n if set, and persists.
18
18
  class Main
19
19
  include Mullvadrb::CommandManager
20
+ include Mullvadrb::Settings
20
21
 
21
22
  def initialize
22
23
  # To determine if we're using WireGuard or mullvad cli, attempt to load a pre-saved
23
24
  # configuration or prompt the user which one to use:
24
- Mullvadrb::Settings.load_config
25
+ load_config
25
26
  @backend ||= Mullvadrb::Settings.ask_backend
26
27
  puts I18n.t(:backend_using, backend: @backend)
27
28
  I18n.locale = @locale || I18n.default_locale
28
- Mullvadrb::Settings.save_config!
29
+ save_config!
29
30
  puts Mullvadrb::Connection.status
30
31
  end
31
32
 
@@ -68,7 +69,7 @@ module Mullvadrb
68
69
  when 'status', 'disconnect', 'country', 'specific', 'random'
69
70
  send(selection)
70
71
  when 'backend'
71
- Mullvadrb::Settings.ask_backend
72
+ ask_backend
72
73
  # Only when using mullvad cli and not wg:
73
74
  when 'update_servers'
74
75
  Mullvadrb::Servers.update
@@ -81,7 +82,7 @@ module Mullvadrb
81
82
  when 'account_devices'
82
83
  Mullvadrb::Account.devices
83
84
  when 'languages'
84
- Mullvadrb::Settings.languages
85
+ languages
85
86
  when 'dns_blockers'
86
87
  Mullvadrb::DNS.blockers
87
88
  end
data/mullvadrb.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'mullvadrb'
3
- s.version = '0.0.6'
3
+ s.version = '0.0.7'
4
4
  s.summary = 'A TUI to use with Mullvad VPN'
5
5
  s.description = 'A Terminal User Interface to use with Mullvad VPN'
6
6
  s.authors = ['Fernando Briano']
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mullvadrb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fernando Briano