9#include <QRegularExpression>
59 executePass(PASS_SHOW, {
"show", file},
"",
true);
67 executePass(PASS_OTP_GENERATE, {
"otp", file},
"",
true);
74 QStringList args = {
"insert",
"-m"};
79 executePass(PASS_INSERT, args, newValue);
86 executePass(PASS_REMOVE, {
"rm", (isDir ?
"-rf" :
"-f"), file});
99 QString dirWithoutPassdir =
101 QStringList args = {
"init",
"--path=" + dirWithoutPassdir};
102 foreach (
const UserInfo &user, users) {
107 executePass(PASS_INIT, args);
117 QFileInfo srcFileInfo = QFileInfo(src);
118 QFileInfo destFileInfo = QFileInfo(dest);
123 if (!force && srcFileInfo.isFile() && destFileInfo.isFile()) {
128 .relativeFilePath(QDir(src).absolutePath());
130 .relativeFilePath(QDir(dest).absolutePath());
133 if (srcFileInfo.isFile() && srcFileInfo.suffix() ==
"gpg") {
136 if (destFileInfo.isFile() && destFileInfo.suffix() ==
"gpg") {
147 executePass(PASS_MOVE, args);
157 QFileInfo srcFileInfo = QFileInfo(src);
158 QFileInfo destFileInfo = QFileInfo(dest);
162 if (!force && srcFileInfo.isFile() && destFileInfo.isFile()) {
167 .relativeFilePath(QDir(src).absolutePath());
169 .relativeFilePath(QDir(dest).absolutePath());
172 if (srcFileInfo.isFile() && srcFileInfo.suffix() ==
"gpg") {
175 if (destFileInfo.isFile() && destFileInfo.suffix() ==
"gpg") {
185 executePass(PASS_COPY, args);
192void RealPass::executePass(PROCESS
id,
const QStringList &args, QString input,
193 bool readStdout,
bool readStderr) {
195 std::move(input), readStdout, readStderr);
static auto executeBlocking(QString app, const QStringList &args, const QString &input=QString(), QString *process_out=nullptr, QString *process_err=nullptr) -> int
Executor::executeBlocking blocking version of the executor, takes input and presents it as stdin.
void executeWrapper(PROCESS id, const QString &app, const QStringList &args, bool readStdout=true, bool readStderr=true)
static auto getPassStore(const QString &defaultValue=QVariant().toString()) -> QString
static auto getPassExecutable(const QString &defaultValue=QVariant().toString()) -> QString
virtual void Insert(QString file, QString newValue, bool overwrite=false) Q_DECL_OVERRIDE
RealPass::Insert pass insert.
virtual void OtpGenerate(QString file) Q_DECL_OVERRIDE
RealPass::OtpGenerate pass otp.
virtual void GitPull() Q_DECL_OVERRIDE
RealPass::GitPull pass git pull wrapper.
virtual void GitPush() Q_DECL_OVERRIDE
RealPass::GitPush pass git push wrapper.
virtual void Init(QString path, const QList< UserInfo > &users) Q_DECL_OVERRIDE
RealPass::Init initialize pass repository.
virtual void GitInit() Q_DECL_OVERRIDE
RealPass::GitInit pass git init wrapper.
virtual void Remove(QString file, bool isDir=false) Q_DECL_OVERRIDE
RealPass::Remove pass remove wrapper.
void Copy(const QString src, const QString dest, const bool force=false) Q_DECL_OVERRIDE
RealPass::Copy copy a file (or folder)
virtual void GitPull_b() Q_DECL_OVERRIDE
RealPass::GitInit pass git pull wrapper which blocks until process finishes.
void Move(const QString src, const QString dest, const bool force=false) Q_DECL_OVERRIDE
RealPass::Move move a file (or folder)
virtual void Show(QString file) Q_DECL_OVERRIDE
RealPass::Show pass show.
static auto endsWithGpg() -> const QRegularExpression &
Stores key info lines including validity, creation date and more.
bool enabled
UserInfo::enabled.
QString key_id
UserInfo::key_id hexadecimal representation.