mirror of
https://github.com/caiwx86/small-packages.git
synced 2026-07-28 01:11:21 +08:00
48 lines
2.4 KiB
Ucode
48 lines
2.4 KiB
Ucode
#!/usr/bin/ucode
|
|
|
|
'use strict';
|
|
|
|
import { cursor } from 'uci';
|
|
import { uci_bool, uci_int, uci_array, merge, trim_all, load_profile, save_profile } from '/etc/momo/ucode/include.uc';
|
|
|
|
const uci = cursor();
|
|
|
|
const config = {};
|
|
|
|
config['log'] = {};
|
|
config['log']['disabled'] = uci_bool(uci.get('momo', 'mixin', 'log_disabled'));
|
|
config['log']['level'] = uci.get('momo', 'mixin', 'log_level');
|
|
config['log']['timestamp'] = uci_bool(uci.get('momo', 'mixin', 'log_timestamp'));
|
|
config['log']['output'] = uci.get('momo', 'mixin', 'log_output');
|
|
|
|
config['dns'] = {};
|
|
config['dns']['strategy'] = uci.get('momo', 'mixin', 'dns_strategy');
|
|
config['dns']['disable_cache'] = uci_bool(uci.get('momo', 'mixin', 'dns_disable_cache'));
|
|
config['dns']['disable_expire'] = uci_bool(uci.get('momo', 'mixin', 'dns_disable_expire'));
|
|
config['dns']['independent_cache'] = uci_bool(uci.get('momo', 'mixin', 'dns_independent_cache'));
|
|
config['dns']['cache_capacity'] = uci_int(uci.get('momo', 'mixin', 'dns_cache_capacity'));
|
|
config['dns']['reverse_mapping'] = uci_bool(uci.get('momo', 'mixin', 'dns_reverse_mapping'));
|
|
|
|
config['ntp'] = {};
|
|
config['ntp']['enabled'] = uci_bool(uci.get('momo', 'mixin', 'ntp_enabled'));
|
|
config['ntp']['server'] = uci.get('momo', 'mixin', 'ntp_server');
|
|
config['ntp']['server_port'] = uci_int(uci.get('momo', 'mixin', 'ntp_server_port'));
|
|
config['ntp']['interval'] = uci.get('momo', 'mixin', 'ntp_interval');
|
|
|
|
config['experimental'] = {};
|
|
|
|
config['experimental']['cache_file'] = {};
|
|
config['experimental']['cache_file']['enabled'] = uci_bool(uci.get('momo', 'mixin', 'cache_enabled'));
|
|
config['experimental']['cache_file']['path'] = uci.get('momo', 'mixin', 'cache_path');
|
|
config['experimental']['cache_file']['store_fakeip'] = uci_bool(uci.get('momo', 'mixin', 'cache_store_fakeip'));
|
|
config['experimental']['cache_file']['store_rdrc'] = uci_bool(uci.get('momo', 'mixin', 'cache_store_rdrc'));
|
|
|
|
config['experimental']['clash_api'] = {};
|
|
config['experimental']['clash_api']['external_ui'] = uci.get('momo', 'mixin', 'external_control_ui_path');
|
|
config['experimental']['clash_api']['external_ui_download_url'] = uci.get('momo', 'mixin', 'external_control_ui_download_url');
|
|
config['experimental']['clash_api']['external_controller'] = uci.get('momo', 'mixin', 'external_control_api_listen');
|
|
config['experimental']['clash_api']['secret'] = uci.get('momo', 'mixin', 'external_control_api_secret');
|
|
|
|
const profile = load_profile();
|
|
|
|
save_profile(merge(profile, trim_all(config))); |