MCPcopy Create free account
hub / github.com/actuallyaridan/linux-devmgmt / pacmanBuildDate

Function pacmanBuildDate

src/scanner/SysfsScanner.cpp:126–152  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

124}
125
126QString pacmanBuildDate(const QString &package, const QString &version) {
127 static const QRegularExpression kPkgRe("^[a-zA-Z0-9_.+@-]+$");
128 if (version.isEmpty()
129 || !kPkgRe.match(package).hasMatch()
130 || !kPkgRe.match(version).hasMatch())
131 return {};
132 QString dirPath = QStringLiteral("/var/lib/pacman/local/%1-%2")
133 .arg(package, version);
134 QFile f(dirPath + "/desc");
135 if (!f.open(QIODevice::ReadOnly | QIODevice::Text))
136 return {};
137 QString content = QString::fromUtf8(f.read(65536));
138 int idx = content.indexOf("%BUILDDATE%");
139 if (idx < 0)
140 return {};
141 int nl = content.indexOf('\n', idx);
142 if (nl < 0)
143 return {};
144 QString tsLine = content.mid(nl + 1,
145 content.indexOf('\n', nl + 1) - nl - 1)
146 .trimmed();
147 bool ok = false;
148 qint64 ts = tsLine.toLongLong(&ok);
149 if (!ok)
150 return {};
151 return formatDate(QDateTime::fromSecsSinceEpoch(ts));
152}
153
154QString knownVersionDate(const QString &version) {
155 auto it = knownDriverDates().constFind(version);

Callers 1

queryPkgVersionDateFunction · 0.85

Calls 1

formatDateFunction · 0.85

Tested by

no test coverage detected