mirror of
https://github.com/webinstall/webi-installers.git
synced 2026-02-14 09:39:51 +00:00
60 lines
1.3 KiB
JavaScript
60 lines
1.3 KiB
JavaScript
'use strict';
|
|
|
|
var github = require('../_common/github.js');
|
|
var owner = 'jmorganca';
|
|
var repo = 'ollama';
|
|
|
|
module.exports = async function () {
|
|
let all = await github(null, owner, repo);
|
|
|
|
let releases = [];
|
|
for (let rel of all.releases) {
|
|
// this is a janky, sudo-wantin' .app
|
|
let isJank = rel.name.startsWith('Ollama-darwin');
|
|
if (isJank) {
|
|
continue;
|
|
}
|
|
|
|
let isUniversal = rel.name === 'ollama-darwin';
|
|
if (isUniversal) {
|
|
let x64 = Object.assign({ arch: 'x86_64' }, rel);
|
|
releases.push(x64);
|
|
|
|
rel.arch = 'aarch64';
|
|
}
|
|
|
|
let isROCm = rel.name.includes('-rocm');
|
|
if (isROCm) {
|
|
Object.assign(rel, { arch: 'x86_64_rocm' });
|
|
}
|
|
|
|
let oddballs = {
|
|
tgz: 'tar.gz',
|
|
tbz2: 'tar.bz2',
|
|
txz: 'tar.xz',
|
|
};
|
|
let oddExts = Object.keys(oddballs);
|
|
for (let oddExt of oddExts) {
|
|
let isOddball = rel.name.endsWith(`.${oddExt}`);
|
|
if (isOddball) {
|
|
let ext = oddballs[oddExt];
|
|
rel.name = rel.name.replace(`.${oddExt}`, `.${ext}`);
|
|
rel.ext = ext;
|
|
}
|
|
}
|
|
|
|
releases.push(rel);
|
|
}
|
|
all.releases = releases;
|
|
|
|
return all;
|
|
};
|
|
|
|
if (module === require.main) {
|
|
module.exports().then(function (all) {
|
|
all = require('../_webi/normalize.js')(all);
|
|
console.info(JSON.stringify(all));
|
|
//console.info(JSON.stringify(all, null, 2));
|
|
});
|
|
}
|