mirror of
https://github.com/abraunegg/onedrive
synced 2024-06-15 20:25:18 +02:00
new parameter syncdir
This commit is contained in:
parent
7fae9c1bef
commit
9765b27902
2
Makefile
2
Makefile
|
@ -41,4 +41,4 @@ uninstall:
|
||||||
rm -f $(DESTDIR)/usr/lib/systemd/user/onedrive.service
|
rm -f $(DESTDIR)/usr/lib/systemd/user/onedrive.service
|
||||||
|
|
||||||
version: .git/HEAD .git/index
|
version: .git/HEAD .git/index
|
||||||
printf "$(shell git describe --tags 2>/dev/null)" >version
|
echo $(shell git describe --tags 2>/dev/null) >version
|
12
src/main.d
12
src/main.d
|
@ -8,6 +8,8 @@ int main(string[] args)
|
||||||
{
|
{
|
||||||
// configuration directory
|
// configuration directory
|
||||||
string configDirName = environment.get("XDG_CONFIG_HOME", "~/.config") ~ "/onedrive";
|
string configDirName = environment.get("XDG_CONFIG_HOME", "~/.config") ~ "/onedrive";
|
||||||
|
// override the sync directory
|
||||||
|
string syncDirName;
|
||||||
// enable monitor mode
|
// enable monitor mode
|
||||||
bool monitor;
|
bool monitor;
|
||||||
// force a full resync
|
// force a full resync
|
||||||
|
@ -31,6 +33,7 @@ int main(string[] args)
|
||||||
"monitor|m", "Keep monitoring for local and remote changes", &monitor,
|
"monitor|m", "Keep monitoring for local and remote changes", &monitor,
|
||||||
"print-token", "Print the access token, useful for debugging", &printAccessToken,
|
"print-token", "Print the access token, useful for debugging", &printAccessToken,
|
||||||
"resync", "Forget the last saved state, perform a full sync", &resync,
|
"resync", "Forget the last saved state, perform a full sync", &resync,
|
||||||
|
"syncdir", "Set the directory used to sync the files are synced", &syncDirName,
|
||||||
"verbose|v", "Print more details, useful for debugging", &log.verbose,
|
"verbose|v", "Print more details, useful for debugging", &log.verbose,
|
||||||
"version", "Print the version and exit", &printVersion
|
"version", "Print the version and exit", &printVersion
|
||||||
);
|
);
|
||||||
|
@ -49,16 +52,19 @@ int main(string[] args)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (printVersion) {
|
if (printVersion) {
|
||||||
writeln("OneDrive Free Client version ", import("version"));
|
std.stdio.write("onedrive ", import("version"));
|
||||||
return EXIT_SUCCESS;
|
return EXIT_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
log.vlog("Loading config ...");
|
log.vlog("Loading config ...");
|
||||||
configDirName = configDirName.expandTilde().absolutePath();
|
configDirName = configDirName.expandTilde().absolutePath();
|
||||||
if (!exists(configDirName)) mkdir(configDirName);
|
if (!exists(configDirName)) mkdirRecurse(configDirName);
|
||||||
auto cfg = new config.Config(configDirName);
|
auto cfg = new config.Config(configDirName);
|
||||||
cfg.init();
|
cfg.init();
|
||||||
|
|
||||||
|
// command line parameters override the config
|
||||||
|
if (syncDirName) cfg.setValue("sync_dir", syncDirName);
|
||||||
|
|
||||||
// upgrades
|
// upgrades
|
||||||
if (exists(configDirName ~ "/items.db")) {
|
if (exists(configDirName ~ "/items.db")) {
|
||||||
remove(configDirName ~ "/items.db");
|
remove(configDirName ~ "/items.db");
|
||||||
|
@ -96,7 +102,7 @@ int main(string[] args)
|
||||||
|
|
||||||
string syncDir = expandTilde(cfg.getValue("sync_dir"));
|
string syncDir = expandTilde(cfg.getValue("sync_dir"));
|
||||||
log.vlog("All operations will be performed in: ", syncDir);
|
log.vlog("All operations will be performed in: ", syncDir);
|
||||||
if (!exists(syncDir)) mkdir(syncDir);
|
if (!exists(syncDir)) mkdirRecurse(syncDir);
|
||||||
chdir(syncDir);
|
chdir(syncDir);
|
||||||
|
|
||||||
log.vlog("Initializing the Synchronization Engine ...");
|
log.vlog("Initializing the Synchronization Engine ...");
|
||||||
|
|
Loading…
Reference in a new issue