You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.4 KiB
54 lines
1.4 KiB
#[Copyright 2023 ITwrx.
|
|
This file is part of EZ-Bkup.
|
|
EZ-Bkup is released under the General Public License 3.0.
|
|
See COPYING or <https://www.gnu.org/licenses/> for details.]#
|
|
|
|
import logging, times, os, distros
|
|
#import "models/routine"
|
|
|
|
#store the RoutineIds of ea. Routine selected for the current Bkup run.
|
|
#[type SelectedRoutine* = object
|
|
id*: RoutineId
|
|
name*: string
|
|
sources*: seq[string]
|
|
destinations*: seq[string]
|
|
|
|
type CurrentRun* = object
|
|
status*: string]#
|
|
|
|
let appPath* = getHomeDir() & ".ez-bkup"
|
|
|
|
if not dirExists(appPath):
|
|
createDir(appPath)
|
|
|
|
var logger = newFileLogger(appPath & "/errors.log")
|
|
let dt = now()
|
|
let nowDT = dt.format("M-d-YYYY h:mm:ss tt")
|
|
var logMsg: string
|
|
|
|
proc writeErrorToLog*(logMsg: string) =
|
|
logger.log(lvlError, logMsg)
|
|
|
|
proc writeInfoToLog*(logMsg: string) =
|
|
logger.log(lvlInfo, logMsg)
|
|
|
|
proc hasCommas*(filename: string):bool =
|
|
',' in filename
|
|
|
|
proc getAskPassPath*(): string =
|
|
var askPassPath: string
|
|
|
|
if fileExists("/usr/libexec/openssh/ssh-askpass"):
|
|
askPassPath = "/usr/libexec/openssh/ssh-askpass"
|
|
elif fileExists("/usr/lib/openssh/gnome-ssh-askpass"):
|
|
askPassPath = "/usr/lib/openssh/gnome-ssh-askpass"
|
|
elif fileExists("/usr/lib/ssh/gtk-ssh-askpass"):
|
|
askPassPath = "/usr/lib/ssh/gtk-ssh-askpass"
|
|
elif fileExists("/usr/lib/ssh/ssh-askpass"):
|
|
askPassPath = "/usr/lib/ssh/ssh-askpass"
|
|
else:
|
|
askPassPath = ""
|
|
|
|
return askPassPath
|
|
|
|
|
|
|