Merged 1.0.7_branch into master
This commit is contained in:
@@ -1,5 +1,13 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 1.0.7
|
||||||
|
* \#31: New installation displays 'Mount location is not set' on Windows
|
||||||
|
* \#33: Add 'Microsoft Visual C++ Redistributable' as dependency installation on Windows
|
||||||
|
* \#32: Don't display network error message when check for UI updates fails
|
||||||
|
* \#30: Add uninstall feature with reboot to handle WinFSP upgrades/downgrades
|
||||||
|
* \#34: Allow cancelling/closing dependency installation if version count > 1
|
||||||
|
* Handle incorrect download sizes for dependencies and releases
|
||||||
|
|
||||||
## 1.0.6
|
## 1.0.6
|
||||||
* Additional Linux distribution support:
|
* Additional Linux distribution support:
|
||||||
* Antergos
|
* Antergos
|
||||||
|
|||||||
3
CONTRIBUTORS.md
Normal file
3
CONTRIBUTORS.md
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
# Repertory UI
|
||||||
|
* Oleg Nypadymka <onypadymka@gmail.com>
|
||||||
|
* Scott E. Graves <scott.e.graves@protonmail.com>
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
# Repertory UI
|
# Repertory UI
|
||||||

|

|
||||||
|
|
||||||
## GUI for [Repertory](https://bitbucket.org/blockstorage/repertory)
|
## GUI for [Repertory](https://bitbucket.org/blockstorage/repertory)
|
||||||
Repertory allows you to mount Sia and/or SiaPrime blockchain storage solutions via FUSE on Linux/OS X or via WinFSP on Windows.
|
Repertory allows you to mount Sia and/or SiaPrime blockchain storage solutions via FUSE on Linux/OS X or via WinFSP on Windows.
|
||||||
@@ -9,10 +9,10 @@ Repertory allows you to mount Sia and/or SiaPrime blockchain storage solutions v
|
|||||||
* SiaPrime >=1.4.0
|
* SiaPrime >=1.4.0
|
||||||
|
|
||||||
## Downloads
|
## Downloads
|
||||||
* **Repertory UI v1.0.6 Linux 64-bit** [<Primary\>](https://pixeldrain.com/u/u5WRzlSt) [<Alternate\>](https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_linux_x86_64.AppImage)
|
* **Repertory UI v1.0.7 Linux 64-bit** [<Primary\>](https://pixeldrain.com/u/thkU0RHP) [<Alternate\>](https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_linux_x86_64.AppImage)
|
||||||
* NOTE: Linux distributions require `fuse` and `libfuse` to be installed.
|
* NOTE: Linux distributions require `fuse` and `libfuse` to be installed.
|
||||||
* **Repertory UI v1.0.6 OS X 64-bit** [<Primary\>](https://pixeldrain.com/u/_Qk344Yy) [<Alternate\>](https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_mac.dmg)
|
* **Repertory UI v1.0.7 OS X 64-bit** [<Primary\>](https://pixeldrain.com/u/gBW5TSR0) [<Alternate\>](https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_mac.dmg)
|
||||||
* **Repertory UI v1.0.6 Windows 64-bit** [<Primary\>](https://pixeldrain.com/u/DpGbYmao) [<Alternate\>](https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_win.exe)
|
* **Repertory UI v1.0.7 Windows 64-bit** [<Primary\>](https://pixeldrain.com/u/AcsttDQ_) [<Alternate\>](https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_win.exe)
|
||||||
* NOTE: Windows systems require [Microsoft Visual C++ Redistributable for Visual Studio 2015, 2017 and 2019](https://aka.ms/vs/16/release/vc_redist.x64.exe)
|
* NOTE: Windows systems require [Microsoft Visual C++ Redistributable for Visual Studio 2015, 2017 and 2019](https://aka.ms/vs/16/release/vc_redist.x64.exe)
|
||||||
|
|
||||||
## Supported Platforms
|
## Supported Platforms
|
||||||
|
|||||||
@@ -6,6 +6,9 @@ set /a ENABLE_UPLOAD=%1
|
|||||||
set BITBUCKET_AUTH=%2
|
set BITBUCKET_AUTH=%2
|
||||||
|
|
||||||
set OPENSSL_BIN="c:\OpenSSL-Win64\bin\openssl.exe"
|
set OPENSSL_BIN="c:\OpenSSL-Win64\bin\openssl.exe"
|
||||||
|
if NOT EXIST %OPENSSL_BIN% (
|
||||||
|
set OPENSSL_BIN="c:\Program Files\OpenSSL-Win64\bin\openssl.exe"
|
||||||
|
)
|
||||||
set PRIVATE_KEY="c:\src\cert\blockstorage_dev_private.pem"
|
set PRIVATE_KEY="c:\src\cert\blockstorage_dev_private.pem"
|
||||||
set PUBLIC_KEY="%ROOT%blockstorage_dev_public.pem"
|
set PUBLIC_KEY="%ROOT%blockstorage_dev_public.pem"
|
||||||
|
|
||||||
@@ -26,8 +29,8 @@ pushd "%ROOT%"
|
|||||||
call npm run dist && (
|
call npm run dist && (
|
||||||
pushd dist
|
pushd dist
|
||||||
(certutil -hashfile "%OUT_FILE%" SHA256 | %SED_BIN% -e "1d" -e "$d" -e "s/\ //g") > "%OUT_FILE%.sha256" || (call :ERROR "Create sha-256 failed")
|
(certutil -hashfile "%OUT_FILE%" SHA256 | %SED_BIN% -e "1d" -e "$d" -e "s/\ //g") > "%OUT_FILE%.sha256" || (call :ERROR "Create sha-256 failed")
|
||||||
"%OPENSSL_BIN%" dgst -sha256 -sign "%PRIVATE_KEY%" -out "%OUT_FILE%.sig" "%OUT_FILE%" || (call :ERROR "Create signature failed")
|
%OPENSSL_BIN% dgst -sha256 -sign "%PRIVATE_KEY%" -out "%OUT_FILE%.sig" "%OUT_FILE%" || (call :ERROR "Create signature failed")
|
||||||
"%OPENSSL_BIN%" dgst -sha256 -verify "%PUBLIC_KEY%" -signature "%OUT_FILE%.sig" "%OUT_FILE%" || (call :ERROR "Verify signature failed")
|
%OPENSSL_BIN% dgst -sha256 -verify "%PUBLIC_KEY%" -signature "%OUT_FILE%.sig" "%OUT_FILE%" || (call :ERROR "Verify signature failed")
|
||||||
"%B64_BIN%" -e "%OUT_FILE%.sig" "%OUT_FILE%.sig.b64" || (call :ERROR "Create base64 failed")
|
"%B64_BIN%" -e "%OUT_FILE%.sig" "%OUT_FILE%.sig.b64" || (call :ERROR "Create base64 failed")
|
||||||
|
|
||||||
if "%ENABLE_UPLOAD%"=="1" (
|
if "%ENABLE_UPLOAD%"=="1" (
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "repertory-ui",
|
"name": "repertory-ui",
|
||||||
"version": "1.0.6",
|
"version": "1.0.7",
|
||||||
"private": true,
|
"private": true,
|
||||||
"author": "scott.e.graves@protonmail.com",
|
"author": "scott.e.graves@protonmail.com",
|
||||||
"description": "GUI for Repertory - Repertory allows you to mount Sia and/or SiaPrime blockchain storage solutions via FUSE on Linux/OS X or via WinFSP on Windows.",
|
"description": "GUI for Repertory - Repertory allows you to mount Sia and/or SiaPrime blockchain storage solutions via FUSE on Linux/OS X or via WinFSP on Windows.",
|
||||||
|
|||||||
@@ -63,7 +63,10 @@ elif [ -f /etc/debian_version ]; then
|
|||||||
resetDistVer
|
resetDistVer
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
elif [ -f /etc/os-release ]; then
|
fi
|
||||||
|
|
||||||
|
if [ "$DISTNAME" == "unknown" ]; then
|
||||||
|
if [ -f /etc/os-release ]; then
|
||||||
. /etc/os-release
|
. /etc/os-release
|
||||||
if [ "$ID" == "arch" ]; then
|
if [ "$ID" == "arch" ]; then
|
||||||
DISTNAME=arch
|
DISTNAME=arch
|
||||||
@@ -89,5 +92,6 @@ elif [ -f /etc/os-release ]; then
|
|||||||
else
|
else
|
||||||
resetDistVer
|
resetDistVer
|
||||||
fi
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
echo ${DISTNAME}${DISTVER}
|
echo ${DISTNAME}${DISTVER}
|
||||||
@@ -726,6 +726,7 @@ ipcMain.on(Constants.IPC_Install_Dependency, (event, data) => {
|
|||||||
}, error);
|
}, error);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
|
const execInstall = () => {
|
||||||
helpers
|
helpers
|
||||||
.executeAndWait(data.Source)
|
.executeAndWait(data.Source)
|
||||||
.then(() => {
|
.then(() => {
|
||||||
@@ -740,6 +741,30 @@ ipcMain.on(Constants.IPC_Install_Dependency, (event, data) => {
|
|||||||
URL: data.URL,
|
URL: data.URL,
|
||||||
}, error);
|
}, error);
|
||||||
});
|
});
|
||||||
|
};
|
||||||
|
if (data.IsWinFSP) {
|
||||||
|
helpers
|
||||||
|
.performWindowsUninstall(["WinFsp 2019.3 B1", "WinFsp 2019.3 B2"])
|
||||||
|
.then(uninstalled => {
|
||||||
|
if (uninstalled) {
|
||||||
|
standardIPCReply(event, Constants.IPC_Install_Dependency_Reply, {
|
||||||
|
RebootRequired: true,
|
||||||
|
Source: data.Source,
|
||||||
|
URL: data.URL,
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
execInstall();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(error => {
|
||||||
|
standardIPCReply(event, Constants.IPC_Install_Dependency_Reply, {
|
||||||
|
Source: data.Source,
|
||||||
|
URL: data.URL,
|
||||||
|
}, error);
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
execInstall();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -886,6 +911,13 @@ ipcMain.on(Constants.IPC_Mount_Drive, (event, data) => {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
ipcMain.on(Constants.IPC_Reboot_System, () => {
|
||||||
|
if (os.platform() === 'win32') {
|
||||||
|
helpers.executeAsync('shutdown.exe', ['/r', '/t', '30']);
|
||||||
|
}
|
||||||
|
closeApplication();
|
||||||
|
});
|
||||||
|
|
||||||
ipcMain.on(Constants.IPC_Save_State, (event, data) => {
|
ipcMain.on(Constants.IPC_Save_State, (event, data) => {
|
||||||
helpers.mkDirByPathSync(helpers.getDataDirectory());
|
helpers.mkDirByPathSync(helpers.getDataDirectory());
|
||||||
const configFile = path.join(helpers.getDataDirectory(), 'settings.json');
|
const configFile = path.join(helpers.getDataDirectory(), 'settings.json');
|
||||||
|
|||||||
192
releases.json
192
releases.json
@@ -1,220 +1,220 @@
|
|||||||
{
|
{
|
||||||
"Locations": {
|
"Locations": {
|
||||||
"arch": {
|
"arch": {
|
||||||
"1.0.6": {
|
"1.0.7": {
|
||||||
"sha256": "39f0a8e78ee78d6237a3c884666f6d87551fae13bbb43928f8f6f96386d5ed41",
|
"sha256": "dac898185beb12bd6e0eaf0164f2cdcd517223981678ee18e8ec99983921ecbf",
|
||||||
"sig": "AcrywSjZ+OHQTTJL+nbmtIcov2+5VhXUNFC1iNPsdlk19u7MRazE6OVgwa4GsEd8QsAnhrQocQeFr7Vc34lT7Z14Ypaf+rCtzcGxFJDdyq5KcPRS0svlO6KDkZ3u0IwRHIA4MGhET+jXLTKZvjC6VGXz6a7XFI9qHeD8W5QRCsfDIqOsgQFi2+gStoFuwRIi2nrhdEeqtH3jShciV+4bxwYISQ8V6xUuSYiymQTzYEOaPNgzO9nhvt6HWspQAlUs8Pmsw4jo15rob4vr8zNd7ZtfhLS4CtmCkgegVsbvxvZ+wo0MFHRXlBAB+N018APeGcN8flk9PusOOHsBzKdmgC38HDc2RL/+jEPr370GWGbzMlIEZLoVYRF1e0ivxLrlZz4l0cBJrc5JD+W3a8QulRp7y7oo9g13OFFsHw3dqRn/ei2rEwXU/+ux0P1TnZy2bWWGaPtDWghH83Dzk98lXnJZEmr2kw5klfzBHkSZKZEUHKYYXDezUJJIznphQQDbXX17uW51aKX8Su2HnD7IAFicjRoGFlxSXG1Qx9HyUzw4hVgrNocF5Mp1oHuX1xrP9Zlg6PF5vaVtcU+wB6ifdIXAQRhSvgLkp3aTHhA8H7xjFTMNKOGUTx8BJ1ze/yP4/ZAcl3FD708+cNLJCwthyFvTPyGH99j/jsam4d41io8SHXVN4+YfW7OLEI43jjKBVPBn9FMuAq9cgBJ9iTxmfZRT5uzb8lJnFrzXRPqiWU2ZWrviOIEhduzIr2UEWpkC8SndAVuMHePvvc0oRd7jWXHTWM7aV6gWrNyRDMMxcmAm2gZOtrjyI+mUgHNZ/k/MBpKNfWQvKDr26E1wEABwcG0/7ktWdDWSjHT+tXn8Xt7ZLwDE2yHJsrPdgIoAQQ+mrUc38gaazyyleqx/T+dW9P0GZU+oO1h17zj7GpEOllmWv2IVDekq17zTnQR5E5hku1xj8cP1RE6S1qYWT0bdzGBnaBg6hrgQ3zYW1SBuQDYBMTANHq8/JLsLXWU/Pf/ELbECaLeV7IPBLO2XC3PKjWttIF4ZkoX7YM7bo7Qgldocp2E/hjHq/5M1OEDbxOiohUWrYlSeHoIzyii+hIq60vA5ixMm7Ex9ZBtBFP16AGvJSr4sGELxMcMu0uPNIGYC6UQvZfXkQPBWD3C4QChNybQyn3VEiNo/b37HIoJIRYfLHwNpnUpT8viwGFfeQecGpnzooAQ1PevtmJwbPTWgKcUZEAk5TKgqZe3PcHsekuZ6gsT4hrKytxAAQTVqDGq9Up+eTuKRcUAoAt2ZyBTUtFsmatb5ODeA1ZeHak7LmwfarVZwIBC8RRfcRjuajmmfyr/PDWvyRyLCL2CMyrd0wg0=",
|
"sig": "A/jHXV4OFVc4jjczUlB+CzHZbmaCWIygzshHVS3wjpPYBuQjZRbqn0Lj7yIV7PBoaT3xBAykI0Nd6BAxFHdWwwt10d/Snz8jbW94U7LpQMYjhbmy/7FxlbVOcLJSGs1AeoZUIMsYZpyu74IFD0eHn7x37z5Sg62HBE03uggiwVdwKi5g5qfvgzpBkQnzlSAYRQFOb3wELjLu5GRupJQiKdYsUaSkh8xLeloxhsb3UD8VKB427lfyDG7Da+ZMUFROJN9e+1afkGshlJmLu+/6G+Wiyik7gnjVvNEIQyZOoUMfZNZfhO2oL+5YH1a5Sc7vXcPo1CqHxC9ZT9d5L2QLi/9isAk72FemdiRYhPcMHMJ52Zkp4s5WP/2HxCGunAMLx+qC+Zp4NIihkC99fGJcsJfJ4MX7W9ENdxtBA9al4E+Au2CftrxFWXuARhyCy3X6+b1JlQ1jeMWBqixEqthcsAHvWgVTJUOJKCcEJb4BzpQQt2iEIAqNg2nxIKcSeal86GSvz27Z7Cf7CaNXCxrc0CAJ8XeIm8ZzB17Fg/GnKfEDRzaxweL3yyMIrzpIZnGECc8xHBVa1cLpOpuL3s5DxsLRB4XvcNEQ9ywcyuK0ZiEDRHJMW7lWeKEHgvxhMZNTKFnBp72Fgla9Sb7r+ZGXkwJjSn2chwPkKyFr4HlQgMLU386C2fieL8aqaScbb9VpZnPC9gfXDE/ZaFnLug1ORQYwE45DFXoUSnLNVrFUAMne3ISDaXJ946dMQm/6lrAQm1PglS7WKk+1V+GYmrszx9YeHi+Mqz8Dmlww7PCOPbCYsDFHqeruxxcfisq7SoFoHEOzmlq1FNqT3h0hNatpGIKJ2/FM4tQnEuDIGb6gQZMUZrLrLiVYW4ZmeNBe/GoqOt6c8REbtbt4Hpo9UgueKhZtCZOppZZBXu6i59eJXOIgBtNqX+6Kg8R9iM8vhTNbpec5hC0Q9yyELdkoRZkbUDmKWObKZQSr6h82LlsDSggHFYKRtZ4mOqJNxR7U8T8XEr7xqSaC0jmCl9bbxNND1Ir1x6PREfOuSNABxCYHRvZBAqp3PI+T41OsN/2Gcbz5FKc1ShfRcEZKH6npg/mPeYB6KNtuTtgpTJefAAgEra6t3mrV84sjEPig0IfQhfp8VeZItB09OXV02aOOXHKOBU2VilXWF7+Lapjk51I6+BnWRulBkZg6k70YZP/6icOaR+Z60PS8kTqplELfsk4r41nsGlo7iQPHONd5jOa4vhRdmAws7Fan2o5x6wfCJyn1nljNTysLktSm9y8PzJFUVq/kscXac5Q7Rfl4F8JIqbVvmUT740/tJv1zTB4YLfgYJI5cnwVbFuTzTXeDOR/KPCk=",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://pixeldrain.com/api/file/u5WRzlSt",
|
"https://pixeldrain.com/api/file/thkU0RHP",
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_linux_x86_64.AppImage"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_linux_x86_64.AppImage"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"centos7": {
|
"centos7": {
|
||||||
"1.0.6": {
|
"1.0.7": {
|
||||||
"sha256": "39f0a8e78ee78d6237a3c884666f6d87551fae13bbb43928f8f6f96386d5ed41",
|
"sha256": "dac898185beb12bd6e0eaf0164f2cdcd517223981678ee18e8ec99983921ecbf",
|
||||||
"sig": "AcrywSjZ+OHQTTJL+nbmtIcov2+5VhXUNFC1iNPsdlk19u7MRazE6OVgwa4GsEd8QsAnhrQocQeFr7Vc34lT7Z14Ypaf+rCtzcGxFJDdyq5KcPRS0svlO6KDkZ3u0IwRHIA4MGhET+jXLTKZvjC6VGXz6a7XFI9qHeD8W5QRCsfDIqOsgQFi2+gStoFuwRIi2nrhdEeqtH3jShciV+4bxwYISQ8V6xUuSYiymQTzYEOaPNgzO9nhvt6HWspQAlUs8Pmsw4jo15rob4vr8zNd7ZtfhLS4CtmCkgegVsbvxvZ+wo0MFHRXlBAB+N018APeGcN8flk9PusOOHsBzKdmgC38HDc2RL/+jEPr370GWGbzMlIEZLoVYRF1e0ivxLrlZz4l0cBJrc5JD+W3a8QulRp7y7oo9g13OFFsHw3dqRn/ei2rEwXU/+ux0P1TnZy2bWWGaPtDWghH83Dzk98lXnJZEmr2kw5klfzBHkSZKZEUHKYYXDezUJJIznphQQDbXX17uW51aKX8Su2HnD7IAFicjRoGFlxSXG1Qx9HyUzw4hVgrNocF5Mp1oHuX1xrP9Zlg6PF5vaVtcU+wB6ifdIXAQRhSvgLkp3aTHhA8H7xjFTMNKOGUTx8BJ1ze/yP4/ZAcl3FD708+cNLJCwthyFvTPyGH99j/jsam4d41io8SHXVN4+YfW7OLEI43jjKBVPBn9FMuAq9cgBJ9iTxmfZRT5uzb8lJnFrzXRPqiWU2ZWrviOIEhduzIr2UEWpkC8SndAVuMHePvvc0oRd7jWXHTWM7aV6gWrNyRDMMxcmAm2gZOtrjyI+mUgHNZ/k/MBpKNfWQvKDr26E1wEABwcG0/7ktWdDWSjHT+tXn8Xt7ZLwDE2yHJsrPdgIoAQQ+mrUc38gaazyyleqx/T+dW9P0GZU+oO1h17zj7GpEOllmWv2IVDekq17zTnQR5E5hku1xj8cP1RE6S1qYWT0bdzGBnaBg6hrgQ3zYW1SBuQDYBMTANHq8/JLsLXWU/Pf/ELbECaLeV7IPBLO2XC3PKjWttIF4ZkoX7YM7bo7Qgldocp2E/hjHq/5M1OEDbxOiohUWrYlSeHoIzyii+hIq60vA5ixMm7Ex9ZBtBFP16AGvJSr4sGELxMcMu0uPNIGYC6UQvZfXkQPBWD3C4QChNybQyn3VEiNo/b37HIoJIRYfLHwNpnUpT8viwGFfeQecGpnzooAQ1PevtmJwbPTWgKcUZEAk5TKgqZe3PcHsekuZ6gsT4hrKytxAAQTVqDGq9Up+eTuKRcUAoAt2ZyBTUtFsmatb5ODeA1ZeHak7LmwfarVZwIBC8RRfcRjuajmmfyr/PDWvyRyLCL2CMyrd0wg0=",
|
"sig": "A/jHXV4OFVc4jjczUlB+CzHZbmaCWIygzshHVS3wjpPYBuQjZRbqn0Lj7yIV7PBoaT3xBAykI0Nd6BAxFHdWwwt10d/Snz8jbW94U7LpQMYjhbmy/7FxlbVOcLJSGs1AeoZUIMsYZpyu74IFD0eHn7x37z5Sg62HBE03uggiwVdwKi5g5qfvgzpBkQnzlSAYRQFOb3wELjLu5GRupJQiKdYsUaSkh8xLeloxhsb3UD8VKB427lfyDG7Da+ZMUFROJN9e+1afkGshlJmLu+/6G+Wiyik7gnjVvNEIQyZOoUMfZNZfhO2oL+5YH1a5Sc7vXcPo1CqHxC9ZT9d5L2QLi/9isAk72FemdiRYhPcMHMJ52Zkp4s5WP/2HxCGunAMLx+qC+Zp4NIihkC99fGJcsJfJ4MX7W9ENdxtBA9al4E+Au2CftrxFWXuARhyCy3X6+b1JlQ1jeMWBqixEqthcsAHvWgVTJUOJKCcEJb4BzpQQt2iEIAqNg2nxIKcSeal86GSvz27Z7Cf7CaNXCxrc0CAJ8XeIm8ZzB17Fg/GnKfEDRzaxweL3yyMIrzpIZnGECc8xHBVa1cLpOpuL3s5DxsLRB4XvcNEQ9ywcyuK0ZiEDRHJMW7lWeKEHgvxhMZNTKFnBp72Fgla9Sb7r+ZGXkwJjSn2chwPkKyFr4HlQgMLU386C2fieL8aqaScbb9VpZnPC9gfXDE/ZaFnLug1ORQYwE45DFXoUSnLNVrFUAMne3ISDaXJ946dMQm/6lrAQm1PglS7WKk+1V+GYmrszx9YeHi+Mqz8Dmlww7PCOPbCYsDFHqeruxxcfisq7SoFoHEOzmlq1FNqT3h0hNatpGIKJ2/FM4tQnEuDIGb6gQZMUZrLrLiVYW4ZmeNBe/GoqOt6c8REbtbt4Hpo9UgueKhZtCZOppZZBXu6i59eJXOIgBtNqX+6Kg8R9iM8vhTNbpec5hC0Q9yyELdkoRZkbUDmKWObKZQSr6h82LlsDSggHFYKRtZ4mOqJNxR7U8T8XEr7xqSaC0jmCl9bbxNND1Ir1x6PREfOuSNABxCYHRvZBAqp3PI+T41OsN/2Gcbz5FKc1ShfRcEZKH6npg/mPeYB6KNtuTtgpTJefAAgEra6t3mrV84sjEPig0IfQhfp8VeZItB09OXV02aOOXHKOBU2VilXWF7+Lapjk51I6+BnWRulBkZg6k70YZP/6icOaR+Z60PS8kTqplELfsk4r41nsGlo7iQPHONd5jOa4vhRdmAws7Fan2o5x6wfCJyn1nljNTysLktSm9y8PzJFUVq/kscXac5Q7Rfl4F8JIqbVvmUT740/tJv1zTB4YLfgYJI5cnwVbFuTzTXeDOR/KPCk=",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://pixeldrain.com/api/file/u5WRzlSt",
|
"https://pixeldrain.com/api/file/thkU0RHP",
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_linux_x86_64.AppImage"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_linux_x86_64.AppImage"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"darwin": {
|
"darwin": {
|
||||||
"1.0.6": {
|
"1.0.7": {
|
||||||
"sha256": "9b27c8564dce9202a395d680135d29532ed6b6f0cd1d9875952a78bb05e68195",
|
"sha256": "e4f5cf9765224d4c25472310089e0996f59772573dc59c1baa065810a16c19ba",
|
||||||
"sig": "CV5EhAk41EyqXjYCfocdQ2g7tBgA2WXNQpSonqQhKfbWqvQRrSrX4QTioxmCQ6WP/fuRZ83lJkorlSufnv5WyBuYKi6rLfTAyLMIh1j6Bbb9qqpI57DNNl69GIayrzNYyWNME0Y9hZn04YKllH2o9W25yQRfG1BVrC9Xt8qtfa1vJ3msHgf30mvIcUUYU7HibUZgHQDLRHjkCL82BozK+JO32js43hD4X80eE9A4u/ugWxZfq/ES+ajAugroggsI51nlJi7T9Qe7aoF7RV8Mxx6OR9woakPxgCp6F855zpXgj1AHMq269IRDxN987OSpb1GIBWgRft3O2AJED8DmlTkZYDMNEFC4FTtv7KUFR/VND81gmlBRysBVHXlwQg2apTRBf1ON9FWbztNNSKXt4gzRQsk/WoqTpPFLiBfgDofUdq7EHIJzxOm/MKfZ7TNyvAKTnLlBbyMJYqKV7wnt7GGMkUHLJTNOdq7eCtLipeGgHWScG5pBswW83Ib8+dRlLcfnTkT4l15tfjGwZMErb4I07dwWrkcq2zCVDXxnwITYWzVoHsjfDwu05OpntkD1VFSH/yqGJUC1rQ5z9nSSmojbT4AYzCajy2j6qITzYmLG9KL0cBwAqD1YceyCqsL9U1y9M7s4Aerq8EJ5B7ddENEESYz5M74u5LWR5webwdAFhwoBEQHrGkfkPR5kovNLV+CSA8IAlaDzrKnuieJbaXsA0Y41Tr9VK0MADCTlCCaREj8GLDfAu+pNRC/woenUPUMlXYRBzmbASaoTbYYNChQGT5vxBERRpubPX3ZkYQ4Ck/u12wuZZsOP7zqqQy7w5QbKnDXiRo91MqjHmvTLxzbz5gDgh60RGcN2CKfwJ9yJJfJ8aegVBdfzerm4BRg+JA4sAMpAxJ/4VuKVDYFsSJdCLXC5Q3D2WSsie4Flj4FyqLEN8fidnxTx0xgCQTCMOM0EjxjX4dgn3gLiuEZ6gWh8ua1RpLfI+GHOglAA9q7CJaoHZ3uukHz6MwXzpNcEyh/QXUzAGPbx1reFeCeXl19S5nDQMhdRNdnpJgxxrcSnO8/8D4DhHs7Bjjd27zH3fXMEFyagvLEN006OphrntRTeKnoBn3saWxr0+7qxNo+TdRH7j8OWuNFt5+LaL692uF9Px1bL26xGlF5j2+n6KW4hiMoa5Kp9z4bCtmzrToNuWV0Zqe4pjrHFUdxEEJhOXBEtLXxjuxNSg26ryuHtSuFiNEZkPR9IK7hxblCGPCwq+I8zR2pAWvpAadbeiHDhz1K0xnUhQfWv46tbX+6CJl80G6gq9qUt/PxmAUAcL0kh7+JwjfHTqr2YfNK3608FrxAueaJC6YxrMVLAB2u39PA=",
|
"sig": "A11yvEkveuPo2yyJaDhw9xt/+/xw7/4T3D2Kd/Px1LwCREio25gCr5BWPSIef5yALCS1nDHIzG8CIaDS+OHc4w87YAqIqVOcQaDi2E2t1El7B1noW8yXs+Ew/Ro3AwqN0lnJrtr8fZWVFKqxUTvxLLOJmh5jiud9vdrFzlaI2MNEvC0dY62T0hS1o4uij5/NIXHrZJuz43sa8WftL1RSD/z0lQELF43MaFYCfcDeyCZn2N/htyyvlOEi0bVbjZg1N2cyWAhKbAZu47t5Z5uyoV+VYcIPJT0IsGK2Vr/Js6ziSr3IqdpWl44ztXRLGp4Es17MMnjne30AbhOt+qIOPIcwyRQ7ENEu6MEgT3nA35y5fd1YK7Nz3IkJMxMe1XwyjLE82MgXg9tywb46zKeEJ9zzWk4No71Z6CPwo7kGEl7kzKLw61GYL+1AY+o2dmiDrO+l+DmTzHqGJ3GqBuCnG+5yKM+6klEKU+zmtuaQsPHamY5YLa302G59ecnH90+XIP9veB8jj0ipID8UoGZqJNZgUvkNN3CFoV3TMqA01M5VH7xqWTGPib+aoxCwFsaYiaKTbZBYjw9PQ/ECGXakfX3YpkR1YniNq+Y6UHpfnQNznqZBC+lrud67R2SmRN5JO6wIKiqaKwUT5B5k1ze3Ltdfb1i8bkhk1yNJZBmnr3MA4n5w7wvS/Fw4Uq1zkeUb+No4lP3nH1TcAwU+shesB44MUaLiTlnWUii1AGivEsTtqNp1YoSKVdX1c5GOia0F3iJBqyO1T++bgRpm433AkwaFLqvOr66CirCRtelhZaZtZPStBXATzSBlXEn1J2NbEA6rS185Twco4Cp92+otMFfACm59Ew94E0I8/NSXWEtGkaF7OadMdjS9WPf/5jHWoMnqA8dpYZZXXnZN3xU1eUaVxlu7bdoQxwjllkVMElLp30nOE7Gg2sHuV9xTZ5L2zaueDhZToiItZqce1mlG7zqN0fPlJ8SY0V5nGkm91L90rVi7/9YLKa3jE63Kkv6rMd/o1MAqaFIu1KOgcEbVzexIh1f3ikphIfgxT0PdEuhYa5OGhXwHI/7oaNT8I9XebFRVXCIRHoaYz+zxqCIDQVqDWnW62aTKBwdmGBAp0b9RsCNekCheR2SHfiJi2qAvMWbQR1c3MZpC9A5xAIJZ+FJpTqpagR5U09RIkMjfewpCrfXQYdIWXDJ7CDm2pYGxVn2IIrxvc5kpbsh7VpvNh8bA/TaHyxEKqRWFbua9JZcGP17jliBx3R2ZLt45BYET63Z7z6C8A/Js4bfEspXDd8KfF+rmu83crc1txaJx4WRpbVx8KTLlU/b9o+B5PaoV+BTt/CV3Jgf6uLLXKLB/EXU=",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://pixeldrain.com/api/file/_Qk344Yy",
|
"https://pixeldrain.com/api/file/gBW5TSR0",
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_mac.dmg"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_mac.dmg"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"debian9": {
|
"debian9": {
|
||||||
"1.0.6": {
|
"1.0.7": {
|
||||||
"sha256": "39f0a8e78ee78d6237a3c884666f6d87551fae13bbb43928f8f6f96386d5ed41",
|
"sha256": "dac898185beb12bd6e0eaf0164f2cdcd517223981678ee18e8ec99983921ecbf",
|
||||||
"sig": "AcrywSjZ+OHQTTJL+nbmtIcov2+5VhXUNFC1iNPsdlk19u7MRazE6OVgwa4GsEd8QsAnhrQocQeFr7Vc34lT7Z14Ypaf+rCtzcGxFJDdyq5KcPRS0svlO6KDkZ3u0IwRHIA4MGhET+jXLTKZvjC6VGXz6a7XFI9qHeD8W5QRCsfDIqOsgQFi2+gStoFuwRIi2nrhdEeqtH3jShciV+4bxwYISQ8V6xUuSYiymQTzYEOaPNgzO9nhvt6HWspQAlUs8Pmsw4jo15rob4vr8zNd7ZtfhLS4CtmCkgegVsbvxvZ+wo0MFHRXlBAB+N018APeGcN8flk9PusOOHsBzKdmgC38HDc2RL/+jEPr370GWGbzMlIEZLoVYRF1e0ivxLrlZz4l0cBJrc5JD+W3a8QulRp7y7oo9g13OFFsHw3dqRn/ei2rEwXU/+ux0P1TnZy2bWWGaPtDWghH83Dzk98lXnJZEmr2kw5klfzBHkSZKZEUHKYYXDezUJJIznphQQDbXX17uW51aKX8Su2HnD7IAFicjRoGFlxSXG1Qx9HyUzw4hVgrNocF5Mp1oHuX1xrP9Zlg6PF5vaVtcU+wB6ifdIXAQRhSvgLkp3aTHhA8H7xjFTMNKOGUTx8BJ1ze/yP4/ZAcl3FD708+cNLJCwthyFvTPyGH99j/jsam4d41io8SHXVN4+YfW7OLEI43jjKBVPBn9FMuAq9cgBJ9iTxmfZRT5uzb8lJnFrzXRPqiWU2ZWrviOIEhduzIr2UEWpkC8SndAVuMHePvvc0oRd7jWXHTWM7aV6gWrNyRDMMxcmAm2gZOtrjyI+mUgHNZ/k/MBpKNfWQvKDr26E1wEABwcG0/7ktWdDWSjHT+tXn8Xt7ZLwDE2yHJsrPdgIoAQQ+mrUc38gaazyyleqx/T+dW9P0GZU+oO1h17zj7GpEOllmWv2IVDekq17zTnQR5E5hku1xj8cP1RE6S1qYWT0bdzGBnaBg6hrgQ3zYW1SBuQDYBMTANHq8/JLsLXWU/Pf/ELbECaLeV7IPBLO2XC3PKjWttIF4ZkoX7YM7bo7Qgldocp2E/hjHq/5M1OEDbxOiohUWrYlSeHoIzyii+hIq60vA5ixMm7Ex9ZBtBFP16AGvJSr4sGELxMcMu0uPNIGYC6UQvZfXkQPBWD3C4QChNybQyn3VEiNo/b37HIoJIRYfLHwNpnUpT8viwGFfeQecGpnzooAQ1PevtmJwbPTWgKcUZEAk5TKgqZe3PcHsekuZ6gsT4hrKytxAAQTVqDGq9Up+eTuKRcUAoAt2ZyBTUtFsmatb5ODeA1ZeHak7LmwfarVZwIBC8RRfcRjuajmmfyr/PDWvyRyLCL2CMyrd0wg0=",
|
"sig": "A/jHXV4OFVc4jjczUlB+CzHZbmaCWIygzshHVS3wjpPYBuQjZRbqn0Lj7yIV7PBoaT3xBAykI0Nd6BAxFHdWwwt10d/Snz8jbW94U7LpQMYjhbmy/7FxlbVOcLJSGs1AeoZUIMsYZpyu74IFD0eHn7x37z5Sg62HBE03uggiwVdwKi5g5qfvgzpBkQnzlSAYRQFOb3wELjLu5GRupJQiKdYsUaSkh8xLeloxhsb3UD8VKB427lfyDG7Da+ZMUFROJN9e+1afkGshlJmLu+/6G+Wiyik7gnjVvNEIQyZOoUMfZNZfhO2oL+5YH1a5Sc7vXcPo1CqHxC9ZT9d5L2QLi/9isAk72FemdiRYhPcMHMJ52Zkp4s5WP/2HxCGunAMLx+qC+Zp4NIihkC99fGJcsJfJ4MX7W9ENdxtBA9al4E+Au2CftrxFWXuARhyCy3X6+b1JlQ1jeMWBqixEqthcsAHvWgVTJUOJKCcEJb4BzpQQt2iEIAqNg2nxIKcSeal86GSvz27Z7Cf7CaNXCxrc0CAJ8XeIm8ZzB17Fg/GnKfEDRzaxweL3yyMIrzpIZnGECc8xHBVa1cLpOpuL3s5DxsLRB4XvcNEQ9ywcyuK0ZiEDRHJMW7lWeKEHgvxhMZNTKFnBp72Fgla9Sb7r+ZGXkwJjSn2chwPkKyFr4HlQgMLU386C2fieL8aqaScbb9VpZnPC9gfXDE/ZaFnLug1ORQYwE45DFXoUSnLNVrFUAMne3ISDaXJ946dMQm/6lrAQm1PglS7WKk+1V+GYmrszx9YeHi+Mqz8Dmlww7PCOPbCYsDFHqeruxxcfisq7SoFoHEOzmlq1FNqT3h0hNatpGIKJ2/FM4tQnEuDIGb6gQZMUZrLrLiVYW4ZmeNBe/GoqOt6c8REbtbt4Hpo9UgueKhZtCZOppZZBXu6i59eJXOIgBtNqX+6Kg8R9iM8vhTNbpec5hC0Q9yyELdkoRZkbUDmKWObKZQSr6h82LlsDSggHFYKRtZ4mOqJNxR7U8T8XEr7xqSaC0jmCl9bbxNND1Ir1x6PREfOuSNABxCYHRvZBAqp3PI+T41OsN/2Gcbz5FKc1ShfRcEZKH6npg/mPeYB6KNtuTtgpTJefAAgEra6t3mrV84sjEPig0IfQhfp8VeZItB09OXV02aOOXHKOBU2VilXWF7+Lapjk51I6+BnWRulBkZg6k70YZP/6icOaR+Z60PS8kTqplELfsk4r41nsGlo7iQPHONd5jOa4vhRdmAws7Fan2o5x6wfCJyn1nljNTysLktSm9y8PzJFUVq/kscXac5Q7Rfl4F8JIqbVvmUT740/tJv1zTB4YLfgYJI5cnwVbFuTzTXeDOR/KPCk=",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://pixeldrain.com/api/file/u5WRzlSt",
|
"https://pixeldrain.com/api/file/thkU0RHP",
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_linux_x86_64.AppImage"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_linux_x86_64.AppImage"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"debian10": {
|
"debian10": {
|
||||||
"1.0.6": {
|
"1.0.7": {
|
||||||
"sha256": "39f0a8e78ee78d6237a3c884666f6d87551fae13bbb43928f8f6f96386d5ed41",
|
"sha256": "dac898185beb12bd6e0eaf0164f2cdcd517223981678ee18e8ec99983921ecbf",
|
||||||
"sig": "AcrywSjZ+OHQTTJL+nbmtIcov2+5VhXUNFC1iNPsdlk19u7MRazE6OVgwa4GsEd8QsAnhrQocQeFr7Vc34lT7Z14Ypaf+rCtzcGxFJDdyq5KcPRS0svlO6KDkZ3u0IwRHIA4MGhET+jXLTKZvjC6VGXz6a7XFI9qHeD8W5QRCsfDIqOsgQFi2+gStoFuwRIi2nrhdEeqtH3jShciV+4bxwYISQ8V6xUuSYiymQTzYEOaPNgzO9nhvt6HWspQAlUs8Pmsw4jo15rob4vr8zNd7ZtfhLS4CtmCkgegVsbvxvZ+wo0MFHRXlBAB+N018APeGcN8flk9PusOOHsBzKdmgC38HDc2RL/+jEPr370GWGbzMlIEZLoVYRF1e0ivxLrlZz4l0cBJrc5JD+W3a8QulRp7y7oo9g13OFFsHw3dqRn/ei2rEwXU/+ux0P1TnZy2bWWGaPtDWghH83Dzk98lXnJZEmr2kw5klfzBHkSZKZEUHKYYXDezUJJIznphQQDbXX17uW51aKX8Su2HnD7IAFicjRoGFlxSXG1Qx9HyUzw4hVgrNocF5Mp1oHuX1xrP9Zlg6PF5vaVtcU+wB6ifdIXAQRhSvgLkp3aTHhA8H7xjFTMNKOGUTx8BJ1ze/yP4/ZAcl3FD708+cNLJCwthyFvTPyGH99j/jsam4d41io8SHXVN4+YfW7OLEI43jjKBVPBn9FMuAq9cgBJ9iTxmfZRT5uzb8lJnFrzXRPqiWU2ZWrviOIEhduzIr2UEWpkC8SndAVuMHePvvc0oRd7jWXHTWM7aV6gWrNyRDMMxcmAm2gZOtrjyI+mUgHNZ/k/MBpKNfWQvKDr26E1wEABwcG0/7ktWdDWSjHT+tXn8Xt7ZLwDE2yHJsrPdgIoAQQ+mrUc38gaazyyleqx/T+dW9P0GZU+oO1h17zj7GpEOllmWv2IVDekq17zTnQR5E5hku1xj8cP1RE6S1qYWT0bdzGBnaBg6hrgQ3zYW1SBuQDYBMTANHq8/JLsLXWU/Pf/ELbECaLeV7IPBLO2XC3PKjWttIF4ZkoX7YM7bo7Qgldocp2E/hjHq/5M1OEDbxOiohUWrYlSeHoIzyii+hIq60vA5ixMm7Ex9ZBtBFP16AGvJSr4sGELxMcMu0uPNIGYC6UQvZfXkQPBWD3C4QChNybQyn3VEiNo/b37HIoJIRYfLHwNpnUpT8viwGFfeQecGpnzooAQ1PevtmJwbPTWgKcUZEAk5TKgqZe3PcHsekuZ6gsT4hrKytxAAQTVqDGq9Up+eTuKRcUAoAt2ZyBTUtFsmatb5ODeA1ZeHak7LmwfarVZwIBC8RRfcRjuajmmfyr/PDWvyRyLCL2CMyrd0wg0=",
|
"sig": "A/jHXV4OFVc4jjczUlB+CzHZbmaCWIygzshHVS3wjpPYBuQjZRbqn0Lj7yIV7PBoaT3xBAykI0Nd6BAxFHdWwwt10d/Snz8jbW94U7LpQMYjhbmy/7FxlbVOcLJSGs1AeoZUIMsYZpyu74IFD0eHn7x37z5Sg62HBE03uggiwVdwKi5g5qfvgzpBkQnzlSAYRQFOb3wELjLu5GRupJQiKdYsUaSkh8xLeloxhsb3UD8VKB427lfyDG7Da+ZMUFROJN9e+1afkGshlJmLu+/6G+Wiyik7gnjVvNEIQyZOoUMfZNZfhO2oL+5YH1a5Sc7vXcPo1CqHxC9ZT9d5L2QLi/9isAk72FemdiRYhPcMHMJ52Zkp4s5WP/2HxCGunAMLx+qC+Zp4NIihkC99fGJcsJfJ4MX7W9ENdxtBA9al4E+Au2CftrxFWXuARhyCy3X6+b1JlQ1jeMWBqixEqthcsAHvWgVTJUOJKCcEJb4BzpQQt2iEIAqNg2nxIKcSeal86GSvz27Z7Cf7CaNXCxrc0CAJ8XeIm8ZzB17Fg/GnKfEDRzaxweL3yyMIrzpIZnGECc8xHBVa1cLpOpuL3s5DxsLRB4XvcNEQ9ywcyuK0ZiEDRHJMW7lWeKEHgvxhMZNTKFnBp72Fgla9Sb7r+ZGXkwJjSn2chwPkKyFr4HlQgMLU386C2fieL8aqaScbb9VpZnPC9gfXDE/ZaFnLug1ORQYwE45DFXoUSnLNVrFUAMne3ISDaXJ946dMQm/6lrAQm1PglS7WKk+1V+GYmrszx9YeHi+Mqz8Dmlww7PCOPbCYsDFHqeruxxcfisq7SoFoHEOzmlq1FNqT3h0hNatpGIKJ2/FM4tQnEuDIGb6gQZMUZrLrLiVYW4ZmeNBe/GoqOt6c8REbtbt4Hpo9UgueKhZtCZOppZZBXu6i59eJXOIgBtNqX+6Kg8R9iM8vhTNbpec5hC0Q9yyELdkoRZkbUDmKWObKZQSr6h82LlsDSggHFYKRtZ4mOqJNxR7U8T8XEr7xqSaC0jmCl9bbxNND1Ir1x6PREfOuSNABxCYHRvZBAqp3PI+T41OsN/2Gcbz5FKc1ShfRcEZKH6npg/mPeYB6KNtuTtgpTJefAAgEra6t3mrV84sjEPig0IfQhfp8VeZItB09OXV02aOOXHKOBU2VilXWF7+Lapjk51I6+BnWRulBkZg6k70YZP/6icOaR+Z60PS8kTqplELfsk4r41nsGlo7iQPHONd5jOa4vhRdmAws7Fan2o5x6wfCJyn1nljNTysLktSm9y8PzJFUVq/kscXac5Q7Rfl4F8JIqbVvmUT740/tJv1zTB4YLfgYJI5cnwVbFuTzTXeDOR/KPCk=",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://pixeldrain.com/api/file/u5WRzlSt",
|
"https://pixeldrain.com/api/file/thkU0RHP",
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_linux_x86_64.AppImage"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_linux_x86_64.AppImage"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"fedora28": {
|
"fedora28": {
|
||||||
"1.0.6": {
|
"1.0.7": {
|
||||||
"sha256": "39f0a8e78ee78d6237a3c884666f6d87551fae13bbb43928f8f6f96386d5ed41",
|
"sha256": "dac898185beb12bd6e0eaf0164f2cdcd517223981678ee18e8ec99983921ecbf",
|
||||||
"sig": "AcrywSjZ+OHQTTJL+nbmtIcov2+5VhXUNFC1iNPsdlk19u7MRazE6OVgwa4GsEd8QsAnhrQocQeFr7Vc34lT7Z14Ypaf+rCtzcGxFJDdyq5KcPRS0svlO6KDkZ3u0IwRHIA4MGhET+jXLTKZvjC6VGXz6a7XFI9qHeD8W5QRCsfDIqOsgQFi2+gStoFuwRIi2nrhdEeqtH3jShciV+4bxwYISQ8V6xUuSYiymQTzYEOaPNgzO9nhvt6HWspQAlUs8Pmsw4jo15rob4vr8zNd7ZtfhLS4CtmCkgegVsbvxvZ+wo0MFHRXlBAB+N018APeGcN8flk9PusOOHsBzKdmgC38HDc2RL/+jEPr370GWGbzMlIEZLoVYRF1e0ivxLrlZz4l0cBJrc5JD+W3a8QulRp7y7oo9g13OFFsHw3dqRn/ei2rEwXU/+ux0P1TnZy2bWWGaPtDWghH83Dzk98lXnJZEmr2kw5klfzBHkSZKZEUHKYYXDezUJJIznphQQDbXX17uW51aKX8Su2HnD7IAFicjRoGFlxSXG1Qx9HyUzw4hVgrNocF5Mp1oHuX1xrP9Zlg6PF5vaVtcU+wB6ifdIXAQRhSvgLkp3aTHhA8H7xjFTMNKOGUTx8BJ1ze/yP4/ZAcl3FD708+cNLJCwthyFvTPyGH99j/jsam4d41io8SHXVN4+YfW7OLEI43jjKBVPBn9FMuAq9cgBJ9iTxmfZRT5uzb8lJnFrzXRPqiWU2ZWrviOIEhduzIr2UEWpkC8SndAVuMHePvvc0oRd7jWXHTWM7aV6gWrNyRDMMxcmAm2gZOtrjyI+mUgHNZ/k/MBpKNfWQvKDr26E1wEABwcG0/7ktWdDWSjHT+tXn8Xt7ZLwDE2yHJsrPdgIoAQQ+mrUc38gaazyyleqx/T+dW9P0GZU+oO1h17zj7GpEOllmWv2IVDekq17zTnQR5E5hku1xj8cP1RE6S1qYWT0bdzGBnaBg6hrgQ3zYW1SBuQDYBMTANHq8/JLsLXWU/Pf/ELbECaLeV7IPBLO2XC3PKjWttIF4ZkoX7YM7bo7Qgldocp2E/hjHq/5M1OEDbxOiohUWrYlSeHoIzyii+hIq60vA5ixMm7Ex9ZBtBFP16AGvJSr4sGELxMcMu0uPNIGYC6UQvZfXkQPBWD3C4QChNybQyn3VEiNo/b37HIoJIRYfLHwNpnUpT8viwGFfeQecGpnzooAQ1PevtmJwbPTWgKcUZEAk5TKgqZe3PcHsekuZ6gsT4hrKytxAAQTVqDGq9Up+eTuKRcUAoAt2ZyBTUtFsmatb5ODeA1ZeHak7LmwfarVZwIBC8RRfcRjuajmmfyr/PDWvyRyLCL2CMyrd0wg0=",
|
"sig": "A/jHXV4OFVc4jjczUlB+CzHZbmaCWIygzshHVS3wjpPYBuQjZRbqn0Lj7yIV7PBoaT3xBAykI0Nd6BAxFHdWwwt10d/Snz8jbW94U7LpQMYjhbmy/7FxlbVOcLJSGs1AeoZUIMsYZpyu74IFD0eHn7x37z5Sg62HBE03uggiwVdwKi5g5qfvgzpBkQnzlSAYRQFOb3wELjLu5GRupJQiKdYsUaSkh8xLeloxhsb3UD8VKB427lfyDG7Da+ZMUFROJN9e+1afkGshlJmLu+/6G+Wiyik7gnjVvNEIQyZOoUMfZNZfhO2oL+5YH1a5Sc7vXcPo1CqHxC9ZT9d5L2QLi/9isAk72FemdiRYhPcMHMJ52Zkp4s5WP/2HxCGunAMLx+qC+Zp4NIihkC99fGJcsJfJ4MX7W9ENdxtBA9al4E+Au2CftrxFWXuARhyCy3X6+b1JlQ1jeMWBqixEqthcsAHvWgVTJUOJKCcEJb4BzpQQt2iEIAqNg2nxIKcSeal86GSvz27Z7Cf7CaNXCxrc0CAJ8XeIm8ZzB17Fg/GnKfEDRzaxweL3yyMIrzpIZnGECc8xHBVa1cLpOpuL3s5DxsLRB4XvcNEQ9ywcyuK0ZiEDRHJMW7lWeKEHgvxhMZNTKFnBp72Fgla9Sb7r+ZGXkwJjSn2chwPkKyFr4HlQgMLU386C2fieL8aqaScbb9VpZnPC9gfXDE/ZaFnLug1ORQYwE45DFXoUSnLNVrFUAMne3ISDaXJ946dMQm/6lrAQm1PglS7WKk+1V+GYmrszx9YeHi+Mqz8Dmlww7PCOPbCYsDFHqeruxxcfisq7SoFoHEOzmlq1FNqT3h0hNatpGIKJ2/FM4tQnEuDIGb6gQZMUZrLrLiVYW4ZmeNBe/GoqOt6c8REbtbt4Hpo9UgueKhZtCZOppZZBXu6i59eJXOIgBtNqX+6Kg8R9iM8vhTNbpec5hC0Q9yyELdkoRZkbUDmKWObKZQSr6h82LlsDSggHFYKRtZ4mOqJNxR7U8T8XEr7xqSaC0jmCl9bbxNND1Ir1x6PREfOuSNABxCYHRvZBAqp3PI+T41OsN/2Gcbz5FKc1ShfRcEZKH6npg/mPeYB6KNtuTtgpTJefAAgEra6t3mrV84sjEPig0IfQhfp8VeZItB09OXV02aOOXHKOBU2VilXWF7+Lapjk51I6+BnWRulBkZg6k70YZP/6icOaR+Z60PS8kTqplELfsk4r41nsGlo7iQPHONd5jOa4vhRdmAws7Fan2o5x6wfCJyn1nljNTysLktSm9y8PzJFUVq/kscXac5Q7Rfl4F8JIqbVvmUT740/tJv1zTB4YLfgYJI5cnwVbFuTzTXeDOR/KPCk=",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://pixeldrain.com/api/file/u5WRzlSt",
|
"https://pixeldrain.com/api/file/thkU0RHP",
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_linux_x86_64.AppImage"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_linux_x86_64.AppImage"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"fedora29": {
|
"fedora29": {
|
||||||
"1.0.6": {
|
"1.0.7": {
|
||||||
"sha256": "39f0a8e78ee78d6237a3c884666f6d87551fae13bbb43928f8f6f96386d5ed41",
|
"sha256": "dac898185beb12bd6e0eaf0164f2cdcd517223981678ee18e8ec99983921ecbf",
|
||||||
"sig": "AcrywSjZ+OHQTTJL+nbmtIcov2+5VhXUNFC1iNPsdlk19u7MRazE6OVgwa4GsEd8QsAnhrQocQeFr7Vc34lT7Z14Ypaf+rCtzcGxFJDdyq5KcPRS0svlO6KDkZ3u0IwRHIA4MGhET+jXLTKZvjC6VGXz6a7XFI9qHeD8W5QRCsfDIqOsgQFi2+gStoFuwRIi2nrhdEeqtH3jShciV+4bxwYISQ8V6xUuSYiymQTzYEOaPNgzO9nhvt6HWspQAlUs8Pmsw4jo15rob4vr8zNd7ZtfhLS4CtmCkgegVsbvxvZ+wo0MFHRXlBAB+N018APeGcN8flk9PusOOHsBzKdmgC38HDc2RL/+jEPr370GWGbzMlIEZLoVYRF1e0ivxLrlZz4l0cBJrc5JD+W3a8QulRp7y7oo9g13OFFsHw3dqRn/ei2rEwXU/+ux0P1TnZy2bWWGaPtDWghH83Dzk98lXnJZEmr2kw5klfzBHkSZKZEUHKYYXDezUJJIznphQQDbXX17uW51aKX8Su2HnD7IAFicjRoGFlxSXG1Qx9HyUzw4hVgrNocF5Mp1oHuX1xrP9Zlg6PF5vaVtcU+wB6ifdIXAQRhSvgLkp3aTHhA8H7xjFTMNKOGUTx8BJ1ze/yP4/ZAcl3FD708+cNLJCwthyFvTPyGH99j/jsam4d41io8SHXVN4+YfW7OLEI43jjKBVPBn9FMuAq9cgBJ9iTxmfZRT5uzb8lJnFrzXRPqiWU2ZWrviOIEhduzIr2UEWpkC8SndAVuMHePvvc0oRd7jWXHTWM7aV6gWrNyRDMMxcmAm2gZOtrjyI+mUgHNZ/k/MBpKNfWQvKDr26E1wEABwcG0/7ktWdDWSjHT+tXn8Xt7ZLwDE2yHJsrPdgIoAQQ+mrUc38gaazyyleqx/T+dW9P0GZU+oO1h17zj7GpEOllmWv2IVDekq17zTnQR5E5hku1xj8cP1RE6S1qYWT0bdzGBnaBg6hrgQ3zYW1SBuQDYBMTANHq8/JLsLXWU/Pf/ELbECaLeV7IPBLO2XC3PKjWttIF4ZkoX7YM7bo7Qgldocp2E/hjHq/5M1OEDbxOiohUWrYlSeHoIzyii+hIq60vA5ixMm7Ex9ZBtBFP16AGvJSr4sGELxMcMu0uPNIGYC6UQvZfXkQPBWD3C4QChNybQyn3VEiNo/b37HIoJIRYfLHwNpnUpT8viwGFfeQecGpnzooAQ1PevtmJwbPTWgKcUZEAk5TKgqZe3PcHsekuZ6gsT4hrKytxAAQTVqDGq9Up+eTuKRcUAoAt2ZyBTUtFsmatb5ODeA1ZeHak7LmwfarVZwIBC8RRfcRjuajmmfyr/PDWvyRyLCL2CMyrd0wg0=",
|
"sig": "A/jHXV4OFVc4jjczUlB+CzHZbmaCWIygzshHVS3wjpPYBuQjZRbqn0Lj7yIV7PBoaT3xBAykI0Nd6BAxFHdWwwt10d/Snz8jbW94U7LpQMYjhbmy/7FxlbVOcLJSGs1AeoZUIMsYZpyu74IFD0eHn7x37z5Sg62HBE03uggiwVdwKi5g5qfvgzpBkQnzlSAYRQFOb3wELjLu5GRupJQiKdYsUaSkh8xLeloxhsb3UD8VKB427lfyDG7Da+ZMUFROJN9e+1afkGshlJmLu+/6G+Wiyik7gnjVvNEIQyZOoUMfZNZfhO2oL+5YH1a5Sc7vXcPo1CqHxC9ZT9d5L2QLi/9isAk72FemdiRYhPcMHMJ52Zkp4s5WP/2HxCGunAMLx+qC+Zp4NIihkC99fGJcsJfJ4MX7W9ENdxtBA9al4E+Au2CftrxFWXuARhyCy3X6+b1JlQ1jeMWBqixEqthcsAHvWgVTJUOJKCcEJb4BzpQQt2iEIAqNg2nxIKcSeal86GSvz27Z7Cf7CaNXCxrc0CAJ8XeIm8ZzB17Fg/GnKfEDRzaxweL3yyMIrzpIZnGECc8xHBVa1cLpOpuL3s5DxsLRB4XvcNEQ9ywcyuK0ZiEDRHJMW7lWeKEHgvxhMZNTKFnBp72Fgla9Sb7r+ZGXkwJjSn2chwPkKyFr4HlQgMLU386C2fieL8aqaScbb9VpZnPC9gfXDE/ZaFnLug1ORQYwE45DFXoUSnLNVrFUAMne3ISDaXJ946dMQm/6lrAQm1PglS7WKk+1V+GYmrszx9YeHi+Mqz8Dmlww7PCOPbCYsDFHqeruxxcfisq7SoFoHEOzmlq1FNqT3h0hNatpGIKJ2/FM4tQnEuDIGb6gQZMUZrLrLiVYW4ZmeNBe/GoqOt6c8REbtbt4Hpo9UgueKhZtCZOppZZBXu6i59eJXOIgBtNqX+6Kg8R9iM8vhTNbpec5hC0Q9yyELdkoRZkbUDmKWObKZQSr6h82LlsDSggHFYKRtZ4mOqJNxR7U8T8XEr7xqSaC0jmCl9bbxNND1Ir1x6PREfOuSNABxCYHRvZBAqp3PI+T41OsN/2Gcbz5FKc1ShfRcEZKH6npg/mPeYB6KNtuTtgpTJefAAgEra6t3mrV84sjEPig0IfQhfp8VeZItB09OXV02aOOXHKOBU2VilXWF7+Lapjk51I6+BnWRulBkZg6k70YZP/6icOaR+Z60PS8kTqplELfsk4r41nsGlo7iQPHONd5jOa4vhRdmAws7Fan2o5x6wfCJyn1nljNTysLktSm9y8PzJFUVq/kscXac5Q7Rfl4F8JIqbVvmUT740/tJv1zTB4YLfgYJI5cnwVbFuTzTXeDOR/KPCk=",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://pixeldrain.com/api/file/u5WRzlSt",
|
"https://pixeldrain.com/api/file/thkU0RHP",
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_linux_x86_64.AppImage"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_linux_x86_64.AppImage"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"fedora30": {
|
"fedora30": {
|
||||||
"1.0.6": {
|
"1.0.7": {
|
||||||
"sha256": "39f0a8e78ee78d6237a3c884666f6d87551fae13bbb43928f8f6f96386d5ed41",
|
"sha256": "dac898185beb12bd6e0eaf0164f2cdcd517223981678ee18e8ec99983921ecbf",
|
||||||
"sig": "AcrywSjZ+OHQTTJL+nbmtIcov2+5VhXUNFC1iNPsdlk19u7MRazE6OVgwa4GsEd8QsAnhrQocQeFr7Vc34lT7Z14Ypaf+rCtzcGxFJDdyq5KcPRS0svlO6KDkZ3u0IwRHIA4MGhET+jXLTKZvjC6VGXz6a7XFI9qHeD8W5QRCsfDIqOsgQFi2+gStoFuwRIi2nrhdEeqtH3jShciV+4bxwYISQ8V6xUuSYiymQTzYEOaPNgzO9nhvt6HWspQAlUs8Pmsw4jo15rob4vr8zNd7ZtfhLS4CtmCkgegVsbvxvZ+wo0MFHRXlBAB+N018APeGcN8flk9PusOOHsBzKdmgC38HDc2RL/+jEPr370GWGbzMlIEZLoVYRF1e0ivxLrlZz4l0cBJrc5JD+W3a8QulRp7y7oo9g13OFFsHw3dqRn/ei2rEwXU/+ux0P1TnZy2bWWGaPtDWghH83Dzk98lXnJZEmr2kw5klfzBHkSZKZEUHKYYXDezUJJIznphQQDbXX17uW51aKX8Su2HnD7IAFicjRoGFlxSXG1Qx9HyUzw4hVgrNocF5Mp1oHuX1xrP9Zlg6PF5vaVtcU+wB6ifdIXAQRhSvgLkp3aTHhA8H7xjFTMNKOGUTx8BJ1ze/yP4/ZAcl3FD708+cNLJCwthyFvTPyGH99j/jsam4d41io8SHXVN4+YfW7OLEI43jjKBVPBn9FMuAq9cgBJ9iTxmfZRT5uzb8lJnFrzXRPqiWU2ZWrviOIEhduzIr2UEWpkC8SndAVuMHePvvc0oRd7jWXHTWM7aV6gWrNyRDMMxcmAm2gZOtrjyI+mUgHNZ/k/MBpKNfWQvKDr26E1wEABwcG0/7ktWdDWSjHT+tXn8Xt7ZLwDE2yHJsrPdgIoAQQ+mrUc38gaazyyleqx/T+dW9P0GZU+oO1h17zj7GpEOllmWv2IVDekq17zTnQR5E5hku1xj8cP1RE6S1qYWT0bdzGBnaBg6hrgQ3zYW1SBuQDYBMTANHq8/JLsLXWU/Pf/ELbECaLeV7IPBLO2XC3PKjWttIF4ZkoX7YM7bo7Qgldocp2E/hjHq/5M1OEDbxOiohUWrYlSeHoIzyii+hIq60vA5ixMm7Ex9ZBtBFP16AGvJSr4sGELxMcMu0uPNIGYC6UQvZfXkQPBWD3C4QChNybQyn3VEiNo/b37HIoJIRYfLHwNpnUpT8viwGFfeQecGpnzooAQ1PevtmJwbPTWgKcUZEAk5TKgqZe3PcHsekuZ6gsT4hrKytxAAQTVqDGq9Up+eTuKRcUAoAt2ZyBTUtFsmatb5ODeA1ZeHak7LmwfarVZwIBC8RRfcRjuajmmfyr/PDWvyRyLCL2CMyrd0wg0=",
|
"sig": "A/jHXV4OFVc4jjczUlB+CzHZbmaCWIygzshHVS3wjpPYBuQjZRbqn0Lj7yIV7PBoaT3xBAykI0Nd6BAxFHdWwwt10d/Snz8jbW94U7LpQMYjhbmy/7FxlbVOcLJSGs1AeoZUIMsYZpyu74IFD0eHn7x37z5Sg62HBE03uggiwVdwKi5g5qfvgzpBkQnzlSAYRQFOb3wELjLu5GRupJQiKdYsUaSkh8xLeloxhsb3UD8VKB427lfyDG7Da+ZMUFROJN9e+1afkGshlJmLu+/6G+Wiyik7gnjVvNEIQyZOoUMfZNZfhO2oL+5YH1a5Sc7vXcPo1CqHxC9ZT9d5L2QLi/9isAk72FemdiRYhPcMHMJ52Zkp4s5WP/2HxCGunAMLx+qC+Zp4NIihkC99fGJcsJfJ4MX7W9ENdxtBA9al4E+Au2CftrxFWXuARhyCy3X6+b1JlQ1jeMWBqixEqthcsAHvWgVTJUOJKCcEJb4BzpQQt2iEIAqNg2nxIKcSeal86GSvz27Z7Cf7CaNXCxrc0CAJ8XeIm8ZzB17Fg/GnKfEDRzaxweL3yyMIrzpIZnGECc8xHBVa1cLpOpuL3s5DxsLRB4XvcNEQ9ywcyuK0ZiEDRHJMW7lWeKEHgvxhMZNTKFnBp72Fgla9Sb7r+ZGXkwJjSn2chwPkKyFr4HlQgMLU386C2fieL8aqaScbb9VpZnPC9gfXDE/ZaFnLug1ORQYwE45DFXoUSnLNVrFUAMne3ISDaXJ946dMQm/6lrAQm1PglS7WKk+1V+GYmrszx9YeHi+Mqz8Dmlww7PCOPbCYsDFHqeruxxcfisq7SoFoHEOzmlq1FNqT3h0hNatpGIKJ2/FM4tQnEuDIGb6gQZMUZrLrLiVYW4ZmeNBe/GoqOt6c8REbtbt4Hpo9UgueKhZtCZOppZZBXu6i59eJXOIgBtNqX+6Kg8R9iM8vhTNbpec5hC0Q9yyELdkoRZkbUDmKWObKZQSr6h82LlsDSggHFYKRtZ4mOqJNxR7U8T8XEr7xqSaC0jmCl9bbxNND1Ir1x6PREfOuSNABxCYHRvZBAqp3PI+T41OsN/2Gcbz5FKc1ShfRcEZKH6npg/mPeYB6KNtuTtgpTJefAAgEra6t3mrV84sjEPig0IfQhfp8VeZItB09OXV02aOOXHKOBU2VilXWF7+Lapjk51I6+BnWRulBkZg6k70YZP/6icOaR+Z60PS8kTqplELfsk4r41nsGlo7iQPHONd5jOa4vhRdmAws7Fan2o5x6wfCJyn1nljNTysLktSm9y8PzJFUVq/kscXac5Q7Rfl4F8JIqbVvmUT740/tJv1zTB4YLfgYJI5cnwVbFuTzTXeDOR/KPCk=",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://pixeldrain.com/api/file/u5WRzlSt",
|
"https://pixeldrain.com/api/file/thkU0RHP",
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_linux_x86_64.AppImage"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_linux_x86_64.AppImage"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"opensuse15": {
|
"opensuse15": {
|
||||||
"1.0.6": {
|
"1.0.7": {
|
||||||
"sha256": "39f0a8e78ee78d6237a3c884666f6d87551fae13bbb43928f8f6f96386d5ed41",
|
"sha256": "dac898185beb12bd6e0eaf0164f2cdcd517223981678ee18e8ec99983921ecbf",
|
||||||
"sig": "AcrywSjZ+OHQTTJL+nbmtIcov2+5VhXUNFC1iNPsdlk19u7MRazE6OVgwa4GsEd8QsAnhrQocQeFr7Vc34lT7Z14Ypaf+rCtzcGxFJDdyq5KcPRS0svlO6KDkZ3u0IwRHIA4MGhET+jXLTKZvjC6VGXz6a7XFI9qHeD8W5QRCsfDIqOsgQFi2+gStoFuwRIi2nrhdEeqtH3jShciV+4bxwYISQ8V6xUuSYiymQTzYEOaPNgzO9nhvt6HWspQAlUs8Pmsw4jo15rob4vr8zNd7ZtfhLS4CtmCkgegVsbvxvZ+wo0MFHRXlBAB+N018APeGcN8flk9PusOOHsBzKdmgC38HDc2RL/+jEPr370GWGbzMlIEZLoVYRF1e0ivxLrlZz4l0cBJrc5JD+W3a8QulRp7y7oo9g13OFFsHw3dqRn/ei2rEwXU/+ux0P1TnZy2bWWGaPtDWghH83Dzk98lXnJZEmr2kw5klfzBHkSZKZEUHKYYXDezUJJIznphQQDbXX17uW51aKX8Su2HnD7IAFicjRoGFlxSXG1Qx9HyUzw4hVgrNocF5Mp1oHuX1xrP9Zlg6PF5vaVtcU+wB6ifdIXAQRhSvgLkp3aTHhA8H7xjFTMNKOGUTx8BJ1ze/yP4/ZAcl3FD708+cNLJCwthyFvTPyGH99j/jsam4d41io8SHXVN4+YfW7OLEI43jjKBVPBn9FMuAq9cgBJ9iTxmfZRT5uzb8lJnFrzXRPqiWU2ZWrviOIEhduzIr2UEWpkC8SndAVuMHePvvc0oRd7jWXHTWM7aV6gWrNyRDMMxcmAm2gZOtrjyI+mUgHNZ/k/MBpKNfWQvKDr26E1wEABwcG0/7ktWdDWSjHT+tXn8Xt7ZLwDE2yHJsrPdgIoAQQ+mrUc38gaazyyleqx/T+dW9P0GZU+oO1h17zj7GpEOllmWv2IVDekq17zTnQR5E5hku1xj8cP1RE6S1qYWT0bdzGBnaBg6hrgQ3zYW1SBuQDYBMTANHq8/JLsLXWU/Pf/ELbECaLeV7IPBLO2XC3PKjWttIF4ZkoX7YM7bo7Qgldocp2E/hjHq/5M1OEDbxOiohUWrYlSeHoIzyii+hIq60vA5ixMm7Ex9ZBtBFP16AGvJSr4sGELxMcMu0uPNIGYC6UQvZfXkQPBWD3C4QChNybQyn3VEiNo/b37HIoJIRYfLHwNpnUpT8viwGFfeQecGpnzooAQ1PevtmJwbPTWgKcUZEAk5TKgqZe3PcHsekuZ6gsT4hrKytxAAQTVqDGq9Up+eTuKRcUAoAt2ZyBTUtFsmatb5ODeA1ZeHak7LmwfarVZwIBC8RRfcRjuajmmfyr/PDWvyRyLCL2CMyrd0wg0=",
|
"sig": "A/jHXV4OFVc4jjczUlB+CzHZbmaCWIygzshHVS3wjpPYBuQjZRbqn0Lj7yIV7PBoaT3xBAykI0Nd6BAxFHdWwwt10d/Snz8jbW94U7LpQMYjhbmy/7FxlbVOcLJSGs1AeoZUIMsYZpyu74IFD0eHn7x37z5Sg62HBE03uggiwVdwKi5g5qfvgzpBkQnzlSAYRQFOb3wELjLu5GRupJQiKdYsUaSkh8xLeloxhsb3UD8VKB427lfyDG7Da+ZMUFROJN9e+1afkGshlJmLu+/6G+Wiyik7gnjVvNEIQyZOoUMfZNZfhO2oL+5YH1a5Sc7vXcPo1CqHxC9ZT9d5L2QLi/9isAk72FemdiRYhPcMHMJ52Zkp4s5WP/2HxCGunAMLx+qC+Zp4NIihkC99fGJcsJfJ4MX7W9ENdxtBA9al4E+Au2CftrxFWXuARhyCy3X6+b1JlQ1jeMWBqixEqthcsAHvWgVTJUOJKCcEJb4BzpQQt2iEIAqNg2nxIKcSeal86GSvz27Z7Cf7CaNXCxrc0CAJ8XeIm8ZzB17Fg/GnKfEDRzaxweL3yyMIrzpIZnGECc8xHBVa1cLpOpuL3s5DxsLRB4XvcNEQ9ywcyuK0ZiEDRHJMW7lWeKEHgvxhMZNTKFnBp72Fgla9Sb7r+ZGXkwJjSn2chwPkKyFr4HlQgMLU386C2fieL8aqaScbb9VpZnPC9gfXDE/ZaFnLug1ORQYwE45DFXoUSnLNVrFUAMne3ISDaXJ946dMQm/6lrAQm1PglS7WKk+1V+GYmrszx9YeHi+Mqz8Dmlww7PCOPbCYsDFHqeruxxcfisq7SoFoHEOzmlq1FNqT3h0hNatpGIKJ2/FM4tQnEuDIGb6gQZMUZrLrLiVYW4ZmeNBe/GoqOt6c8REbtbt4Hpo9UgueKhZtCZOppZZBXu6i59eJXOIgBtNqX+6Kg8R9iM8vhTNbpec5hC0Q9yyELdkoRZkbUDmKWObKZQSr6h82LlsDSggHFYKRtZ4mOqJNxR7U8T8XEr7xqSaC0jmCl9bbxNND1Ir1x6PREfOuSNABxCYHRvZBAqp3PI+T41OsN/2Gcbz5FKc1ShfRcEZKH6npg/mPeYB6KNtuTtgpTJefAAgEra6t3mrV84sjEPig0IfQhfp8VeZItB09OXV02aOOXHKOBU2VilXWF7+Lapjk51I6+BnWRulBkZg6k70YZP/6icOaR+Z60PS8kTqplELfsk4r41nsGlo7iQPHONd5jOa4vhRdmAws7Fan2o5x6wfCJyn1nljNTysLktSm9y8PzJFUVq/kscXac5Q7Rfl4F8JIqbVvmUT740/tJv1zTB4YLfgYJI5cnwVbFuTzTXeDOR/KPCk=",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://pixeldrain.com/api/file/u5WRzlSt",
|
"https://pixeldrain.com/api/file/thkU0RHP",
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_linux_x86_64.AppImage"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_linux_x86_64.AppImage"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"opensuse15.1": {
|
"opensuse15.1": {
|
||||||
"1.0.6": {
|
"1.0.7": {
|
||||||
"sha256": "39f0a8e78ee78d6237a3c884666f6d87551fae13bbb43928f8f6f96386d5ed41",
|
"sha256": "dac898185beb12bd6e0eaf0164f2cdcd517223981678ee18e8ec99983921ecbf",
|
||||||
"sig": "AcrywSjZ+OHQTTJL+nbmtIcov2+5VhXUNFC1iNPsdlk19u7MRazE6OVgwa4GsEd8QsAnhrQocQeFr7Vc34lT7Z14Ypaf+rCtzcGxFJDdyq5KcPRS0svlO6KDkZ3u0IwRHIA4MGhET+jXLTKZvjC6VGXz6a7XFI9qHeD8W5QRCsfDIqOsgQFi2+gStoFuwRIi2nrhdEeqtH3jShciV+4bxwYISQ8V6xUuSYiymQTzYEOaPNgzO9nhvt6HWspQAlUs8Pmsw4jo15rob4vr8zNd7ZtfhLS4CtmCkgegVsbvxvZ+wo0MFHRXlBAB+N018APeGcN8flk9PusOOHsBzKdmgC38HDc2RL/+jEPr370GWGbzMlIEZLoVYRF1e0ivxLrlZz4l0cBJrc5JD+W3a8QulRp7y7oo9g13OFFsHw3dqRn/ei2rEwXU/+ux0P1TnZy2bWWGaPtDWghH83Dzk98lXnJZEmr2kw5klfzBHkSZKZEUHKYYXDezUJJIznphQQDbXX17uW51aKX8Su2HnD7IAFicjRoGFlxSXG1Qx9HyUzw4hVgrNocF5Mp1oHuX1xrP9Zlg6PF5vaVtcU+wB6ifdIXAQRhSvgLkp3aTHhA8H7xjFTMNKOGUTx8BJ1ze/yP4/ZAcl3FD708+cNLJCwthyFvTPyGH99j/jsam4d41io8SHXVN4+YfW7OLEI43jjKBVPBn9FMuAq9cgBJ9iTxmfZRT5uzb8lJnFrzXRPqiWU2ZWrviOIEhduzIr2UEWpkC8SndAVuMHePvvc0oRd7jWXHTWM7aV6gWrNyRDMMxcmAm2gZOtrjyI+mUgHNZ/k/MBpKNfWQvKDr26E1wEABwcG0/7ktWdDWSjHT+tXn8Xt7ZLwDE2yHJsrPdgIoAQQ+mrUc38gaazyyleqx/T+dW9P0GZU+oO1h17zj7GpEOllmWv2IVDekq17zTnQR5E5hku1xj8cP1RE6S1qYWT0bdzGBnaBg6hrgQ3zYW1SBuQDYBMTANHq8/JLsLXWU/Pf/ELbECaLeV7IPBLO2XC3PKjWttIF4ZkoX7YM7bo7Qgldocp2E/hjHq/5M1OEDbxOiohUWrYlSeHoIzyii+hIq60vA5ixMm7Ex9ZBtBFP16AGvJSr4sGELxMcMu0uPNIGYC6UQvZfXkQPBWD3C4QChNybQyn3VEiNo/b37HIoJIRYfLHwNpnUpT8viwGFfeQecGpnzooAQ1PevtmJwbPTWgKcUZEAk5TKgqZe3PcHsekuZ6gsT4hrKytxAAQTVqDGq9Up+eTuKRcUAoAt2ZyBTUtFsmatb5ODeA1ZeHak7LmwfarVZwIBC8RRfcRjuajmmfyr/PDWvyRyLCL2CMyrd0wg0=",
|
"sig": "A/jHXV4OFVc4jjczUlB+CzHZbmaCWIygzshHVS3wjpPYBuQjZRbqn0Lj7yIV7PBoaT3xBAykI0Nd6BAxFHdWwwt10d/Snz8jbW94U7LpQMYjhbmy/7FxlbVOcLJSGs1AeoZUIMsYZpyu74IFD0eHn7x37z5Sg62HBE03uggiwVdwKi5g5qfvgzpBkQnzlSAYRQFOb3wELjLu5GRupJQiKdYsUaSkh8xLeloxhsb3UD8VKB427lfyDG7Da+ZMUFROJN9e+1afkGshlJmLu+/6G+Wiyik7gnjVvNEIQyZOoUMfZNZfhO2oL+5YH1a5Sc7vXcPo1CqHxC9ZT9d5L2QLi/9isAk72FemdiRYhPcMHMJ52Zkp4s5WP/2HxCGunAMLx+qC+Zp4NIihkC99fGJcsJfJ4MX7W9ENdxtBA9al4E+Au2CftrxFWXuARhyCy3X6+b1JlQ1jeMWBqixEqthcsAHvWgVTJUOJKCcEJb4BzpQQt2iEIAqNg2nxIKcSeal86GSvz27Z7Cf7CaNXCxrc0CAJ8XeIm8ZzB17Fg/GnKfEDRzaxweL3yyMIrzpIZnGECc8xHBVa1cLpOpuL3s5DxsLRB4XvcNEQ9ywcyuK0ZiEDRHJMW7lWeKEHgvxhMZNTKFnBp72Fgla9Sb7r+ZGXkwJjSn2chwPkKyFr4HlQgMLU386C2fieL8aqaScbb9VpZnPC9gfXDE/ZaFnLug1ORQYwE45DFXoUSnLNVrFUAMne3ISDaXJ946dMQm/6lrAQm1PglS7WKk+1V+GYmrszx9YeHi+Mqz8Dmlww7PCOPbCYsDFHqeruxxcfisq7SoFoHEOzmlq1FNqT3h0hNatpGIKJ2/FM4tQnEuDIGb6gQZMUZrLrLiVYW4ZmeNBe/GoqOt6c8REbtbt4Hpo9UgueKhZtCZOppZZBXu6i59eJXOIgBtNqX+6Kg8R9iM8vhTNbpec5hC0Q9yyELdkoRZkbUDmKWObKZQSr6h82LlsDSggHFYKRtZ4mOqJNxR7U8T8XEr7xqSaC0jmCl9bbxNND1Ir1x6PREfOuSNABxCYHRvZBAqp3PI+T41OsN/2Gcbz5FKc1ShfRcEZKH6npg/mPeYB6KNtuTtgpTJefAAgEra6t3mrV84sjEPig0IfQhfp8VeZItB09OXV02aOOXHKOBU2VilXWF7+Lapjk51I6+BnWRulBkZg6k70YZP/6icOaR+Z60PS8kTqplELfsk4r41nsGlo7iQPHONd5jOa4vhRdmAws7Fan2o5x6wfCJyn1nljNTysLktSm9y8PzJFUVq/kscXac5Q7Rfl4F8JIqbVvmUT740/tJv1zTB4YLfgYJI5cnwVbFuTzTXeDOR/KPCk=",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://pixeldrain.com/api/file/u5WRzlSt",
|
"https://pixeldrain.com/api/file/thkU0RHP",
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_linux_x86_64.AppImage"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_linux_x86_64.AppImage"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"solus": {
|
"solus": {
|
||||||
"1.0.6": {
|
"1.0.7": {
|
||||||
"sha256": "39f0a8e78ee78d6237a3c884666f6d87551fae13bbb43928f8f6f96386d5ed41",
|
"sha256": "dac898185beb12bd6e0eaf0164f2cdcd517223981678ee18e8ec99983921ecbf",
|
||||||
"sig": "AcrywSjZ+OHQTTJL+nbmtIcov2+5VhXUNFC1iNPsdlk19u7MRazE6OVgwa4GsEd8QsAnhrQocQeFr7Vc34lT7Z14Ypaf+rCtzcGxFJDdyq5KcPRS0svlO6KDkZ3u0IwRHIA4MGhET+jXLTKZvjC6VGXz6a7XFI9qHeD8W5QRCsfDIqOsgQFi2+gStoFuwRIi2nrhdEeqtH3jShciV+4bxwYISQ8V6xUuSYiymQTzYEOaPNgzO9nhvt6HWspQAlUs8Pmsw4jo15rob4vr8zNd7ZtfhLS4CtmCkgegVsbvxvZ+wo0MFHRXlBAB+N018APeGcN8flk9PusOOHsBzKdmgC38HDc2RL/+jEPr370GWGbzMlIEZLoVYRF1e0ivxLrlZz4l0cBJrc5JD+W3a8QulRp7y7oo9g13OFFsHw3dqRn/ei2rEwXU/+ux0P1TnZy2bWWGaPtDWghH83Dzk98lXnJZEmr2kw5klfzBHkSZKZEUHKYYXDezUJJIznphQQDbXX17uW51aKX8Su2HnD7IAFicjRoGFlxSXG1Qx9HyUzw4hVgrNocF5Mp1oHuX1xrP9Zlg6PF5vaVtcU+wB6ifdIXAQRhSvgLkp3aTHhA8H7xjFTMNKOGUTx8BJ1ze/yP4/ZAcl3FD708+cNLJCwthyFvTPyGH99j/jsam4d41io8SHXVN4+YfW7OLEI43jjKBVPBn9FMuAq9cgBJ9iTxmfZRT5uzb8lJnFrzXRPqiWU2ZWrviOIEhduzIr2UEWpkC8SndAVuMHePvvc0oRd7jWXHTWM7aV6gWrNyRDMMxcmAm2gZOtrjyI+mUgHNZ/k/MBpKNfWQvKDr26E1wEABwcG0/7ktWdDWSjHT+tXn8Xt7ZLwDE2yHJsrPdgIoAQQ+mrUc38gaazyyleqx/T+dW9P0GZU+oO1h17zj7GpEOllmWv2IVDekq17zTnQR5E5hku1xj8cP1RE6S1qYWT0bdzGBnaBg6hrgQ3zYW1SBuQDYBMTANHq8/JLsLXWU/Pf/ELbECaLeV7IPBLO2XC3PKjWttIF4ZkoX7YM7bo7Qgldocp2E/hjHq/5M1OEDbxOiohUWrYlSeHoIzyii+hIq60vA5ixMm7Ex9ZBtBFP16AGvJSr4sGELxMcMu0uPNIGYC6UQvZfXkQPBWD3C4QChNybQyn3VEiNo/b37HIoJIRYfLHwNpnUpT8viwGFfeQecGpnzooAQ1PevtmJwbPTWgKcUZEAk5TKgqZe3PcHsekuZ6gsT4hrKytxAAQTVqDGq9Up+eTuKRcUAoAt2ZyBTUtFsmatb5ODeA1ZeHak7LmwfarVZwIBC8RRfcRjuajmmfyr/PDWvyRyLCL2CMyrd0wg0=",
|
"sig": "A/jHXV4OFVc4jjczUlB+CzHZbmaCWIygzshHVS3wjpPYBuQjZRbqn0Lj7yIV7PBoaT3xBAykI0Nd6BAxFHdWwwt10d/Snz8jbW94U7LpQMYjhbmy/7FxlbVOcLJSGs1AeoZUIMsYZpyu74IFD0eHn7x37z5Sg62HBE03uggiwVdwKi5g5qfvgzpBkQnzlSAYRQFOb3wELjLu5GRupJQiKdYsUaSkh8xLeloxhsb3UD8VKB427lfyDG7Da+ZMUFROJN9e+1afkGshlJmLu+/6G+Wiyik7gnjVvNEIQyZOoUMfZNZfhO2oL+5YH1a5Sc7vXcPo1CqHxC9ZT9d5L2QLi/9isAk72FemdiRYhPcMHMJ52Zkp4s5WP/2HxCGunAMLx+qC+Zp4NIihkC99fGJcsJfJ4MX7W9ENdxtBA9al4E+Au2CftrxFWXuARhyCy3X6+b1JlQ1jeMWBqixEqthcsAHvWgVTJUOJKCcEJb4BzpQQt2iEIAqNg2nxIKcSeal86GSvz27Z7Cf7CaNXCxrc0CAJ8XeIm8ZzB17Fg/GnKfEDRzaxweL3yyMIrzpIZnGECc8xHBVa1cLpOpuL3s5DxsLRB4XvcNEQ9ywcyuK0ZiEDRHJMW7lWeKEHgvxhMZNTKFnBp72Fgla9Sb7r+ZGXkwJjSn2chwPkKyFr4HlQgMLU386C2fieL8aqaScbb9VpZnPC9gfXDE/ZaFnLug1ORQYwE45DFXoUSnLNVrFUAMne3ISDaXJ946dMQm/6lrAQm1PglS7WKk+1V+GYmrszx9YeHi+Mqz8Dmlww7PCOPbCYsDFHqeruxxcfisq7SoFoHEOzmlq1FNqT3h0hNatpGIKJ2/FM4tQnEuDIGb6gQZMUZrLrLiVYW4ZmeNBe/GoqOt6c8REbtbt4Hpo9UgueKhZtCZOppZZBXu6i59eJXOIgBtNqX+6Kg8R9iM8vhTNbpec5hC0Q9yyELdkoRZkbUDmKWObKZQSr6h82LlsDSggHFYKRtZ4mOqJNxR7U8T8XEr7xqSaC0jmCl9bbxNND1Ir1x6PREfOuSNABxCYHRvZBAqp3PI+T41OsN/2Gcbz5FKc1ShfRcEZKH6npg/mPeYB6KNtuTtgpTJefAAgEra6t3mrV84sjEPig0IfQhfp8VeZItB09OXV02aOOXHKOBU2VilXWF7+Lapjk51I6+BnWRulBkZg6k70YZP/6icOaR+Z60PS8kTqplELfsk4r41nsGlo7iQPHONd5jOa4vhRdmAws7Fan2o5x6wfCJyn1nljNTysLktSm9y8PzJFUVq/kscXac5Q7Rfl4F8JIqbVvmUT740/tJv1zTB4YLfgYJI5cnwVbFuTzTXeDOR/KPCk=",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://pixeldrain.com/api/file/u5WRzlSt",
|
"https://pixeldrain.com/api/file/thkU0RHP",
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_linux_x86_64.AppImage"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_linux_x86_64.AppImage"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tumbleweed": {
|
"tumbleweed": {
|
||||||
"1.0.6": {
|
"1.0.7": {
|
||||||
"sha256": "39f0a8e78ee78d6237a3c884666f6d87551fae13bbb43928f8f6f96386d5ed41",
|
"sha256": "dac898185beb12bd6e0eaf0164f2cdcd517223981678ee18e8ec99983921ecbf",
|
||||||
"sig": "AcrywSjZ+OHQTTJL+nbmtIcov2+5VhXUNFC1iNPsdlk19u7MRazE6OVgwa4GsEd8QsAnhrQocQeFr7Vc34lT7Z14Ypaf+rCtzcGxFJDdyq5KcPRS0svlO6KDkZ3u0IwRHIA4MGhET+jXLTKZvjC6VGXz6a7XFI9qHeD8W5QRCsfDIqOsgQFi2+gStoFuwRIi2nrhdEeqtH3jShciV+4bxwYISQ8V6xUuSYiymQTzYEOaPNgzO9nhvt6HWspQAlUs8Pmsw4jo15rob4vr8zNd7ZtfhLS4CtmCkgegVsbvxvZ+wo0MFHRXlBAB+N018APeGcN8flk9PusOOHsBzKdmgC38HDc2RL/+jEPr370GWGbzMlIEZLoVYRF1e0ivxLrlZz4l0cBJrc5JD+W3a8QulRp7y7oo9g13OFFsHw3dqRn/ei2rEwXU/+ux0P1TnZy2bWWGaPtDWghH83Dzk98lXnJZEmr2kw5klfzBHkSZKZEUHKYYXDezUJJIznphQQDbXX17uW51aKX8Su2HnD7IAFicjRoGFlxSXG1Qx9HyUzw4hVgrNocF5Mp1oHuX1xrP9Zlg6PF5vaVtcU+wB6ifdIXAQRhSvgLkp3aTHhA8H7xjFTMNKOGUTx8BJ1ze/yP4/ZAcl3FD708+cNLJCwthyFvTPyGH99j/jsam4d41io8SHXVN4+YfW7OLEI43jjKBVPBn9FMuAq9cgBJ9iTxmfZRT5uzb8lJnFrzXRPqiWU2ZWrviOIEhduzIr2UEWpkC8SndAVuMHePvvc0oRd7jWXHTWM7aV6gWrNyRDMMxcmAm2gZOtrjyI+mUgHNZ/k/MBpKNfWQvKDr26E1wEABwcG0/7ktWdDWSjHT+tXn8Xt7ZLwDE2yHJsrPdgIoAQQ+mrUc38gaazyyleqx/T+dW9P0GZU+oO1h17zj7GpEOllmWv2IVDekq17zTnQR5E5hku1xj8cP1RE6S1qYWT0bdzGBnaBg6hrgQ3zYW1SBuQDYBMTANHq8/JLsLXWU/Pf/ELbECaLeV7IPBLO2XC3PKjWttIF4ZkoX7YM7bo7Qgldocp2E/hjHq/5M1OEDbxOiohUWrYlSeHoIzyii+hIq60vA5ixMm7Ex9ZBtBFP16AGvJSr4sGELxMcMu0uPNIGYC6UQvZfXkQPBWD3C4QChNybQyn3VEiNo/b37HIoJIRYfLHwNpnUpT8viwGFfeQecGpnzooAQ1PevtmJwbPTWgKcUZEAk5TKgqZe3PcHsekuZ6gsT4hrKytxAAQTVqDGq9Up+eTuKRcUAoAt2ZyBTUtFsmatb5ODeA1ZeHak7LmwfarVZwIBC8RRfcRjuajmmfyr/PDWvyRyLCL2CMyrd0wg0=",
|
"sig": "A/jHXV4OFVc4jjczUlB+CzHZbmaCWIygzshHVS3wjpPYBuQjZRbqn0Lj7yIV7PBoaT3xBAykI0Nd6BAxFHdWwwt10d/Snz8jbW94U7LpQMYjhbmy/7FxlbVOcLJSGs1AeoZUIMsYZpyu74IFD0eHn7x37z5Sg62HBE03uggiwVdwKi5g5qfvgzpBkQnzlSAYRQFOb3wELjLu5GRupJQiKdYsUaSkh8xLeloxhsb3UD8VKB427lfyDG7Da+ZMUFROJN9e+1afkGshlJmLu+/6G+Wiyik7gnjVvNEIQyZOoUMfZNZfhO2oL+5YH1a5Sc7vXcPo1CqHxC9ZT9d5L2QLi/9isAk72FemdiRYhPcMHMJ52Zkp4s5WP/2HxCGunAMLx+qC+Zp4NIihkC99fGJcsJfJ4MX7W9ENdxtBA9al4E+Au2CftrxFWXuARhyCy3X6+b1JlQ1jeMWBqixEqthcsAHvWgVTJUOJKCcEJb4BzpQQt2iEIAqNg2nxIKcSeal86GSvz27Z7Cf7CaNXCxrc0CAJ8XeIm8ZzB17Fg/GnKfEDRzaxweL3yyMIrzpIZnGECc8xHBVa1cLpOpuL3s5DxsLRB4XvcNEQ9ywcyuK0ZiEDRHJMW7lWeKEHgvxhMZNTKFnBp72Fgla9Sb7r+ZGXkwJjSn2chwPkKyFr4HlQgMLU386C2fieL8aqaScbb9VpZnPC9gfXDE/ZaFnLug1ORQYwE45DFXoUSnLNVrFUAMne3ISDaXJ946dMQm/6lrAQm1PglS7WKk+1V+GYmrszx9YeHi+Mqz8Dmlww7PCOPbCYsDFHqeruxxcfisq7SoFoHEOzmlq1FNqT3h0hNatpGIKJ2/FM4tQnEuDIGb6gQZMUZrLrLiVYW4ZmeNBe/GoqOt6c8REbtbt4Hpo9UgueKhZtCZOppZZBXu6i59eJXOIgBtNqX+6Kg8R9iM8vhTNbpec5hC0Q9yyELdkoRZkbUDmKWObKZQSr6h82LlsDSggHFYKRtZ4mOqJNxR7U8T8XEr7xqSaC0jmCl9bbxNND1Ir1x6PREfOuSNABxCYHRvZBAqp3PI+T41OsN/2Gcbz5FKc1ShfRcEZKH6npg/mPeYB6KNtuTtgpTJefAAgEra6t3mrV84sjEPig0IfQhfp8VeZItB09OXV02aOOXHKOBU2VilXWF7+Lapjk51I6+BnWRulBkZg6k70YZP/6icOaR+Z60PS8kTqplELfsk4r41nsGlo7iQPHONd5jOa4vhRdmAws7Fan2o5x6wfCJyn1nljNTysLktSm9y8PzJFUVq/kscXac5Q7Rfl4F8JIqbVvmUT740/tJv1zTB4YLfgYJI5cnwVbFuTzTXeDOR/KPCk=",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://pixeldrain.com/api/file/u5WRzlSt",
|
"https://pixeldrain.com/api/file/thkU0RHP",
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_linux_x86_64.AppImage"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_linux_x86_64.AppImage"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"ubuntu18.04": {
|
"ubuntu18.04": {
|
||||||
"1.0.6": {
|
"1.0.7": {
|
||||||
"sha256": "39f0a8e78ee78d6237a3c884666f6d87551fae13bbb43928f8f6f96386d5ed41",
|
"sha256": "dac898185beb12bd6e0eaf0164f2cdcd517223981678ee18e8ec99983921ecbf",
|
||||||
"sig": "AcrywSjZ+OHQTTJL+nbmtIcov2+5VhXUNFC1iNPsdlk19u7MRazE6OVgwa4GsEd8QsAnhrQocQeFr7Vc34lT7Z14Ypaf+rCtzcGxFJDdyq5KcPRS0svlO6KDkZ3u0IwRHIA4MGhET+jXLTKZvjC6VGXz6a7XFI9qHeD8W5QRCsfDIqOsgQFi2+gStoFuwRIi2nrhdEeqtH3jShciV+4bxwYISQ8V6xUuSYiymQTzYEOaPNgzO9nhvt6HWspQAlUs8Pmsw4jo15rob4vr8zNd7ZtfhLS4CtmCkgegVsbvxvZ+wo0MFHRXlBAB+N018APeGcN8flk9PusOOHsBzKdmgC38HDc2RL/+jEPr370GWGbzMlIEZLoVYRF1e0ivxLrlZz4l0cBJrc5JD+W3a8QulRp7y7oo9g13OFFsHw3dqRn/ei2rEwXU/+ux0P1TnZy2bWWGaPtDWghH83Dzk98lXnJZEmr2kw5klfzBHkSZKZEUHKYYXDezUJJIznphQQDbXX17uW51aKX8Su2HnD7IAFicjRoGFlxSXG1Qx9HyUzw4hVgrNocF5Mp1oHuX1xrP9Zlg6PF5vaVtcU+wB6ifdIXAQRhSvgLkp3aTHhA8H7xjFTMNKOGUTx8BJ1ze/yP4/ZAcl3FD708+cNLJCwthyFvTPyGH99j/jsam4d41io8SHXVN4+YfW7OLEI43jjKBVPBn9FMuAq9cgBJ9iTxmfZRT5uzb8lJnFrzXRPqiWU2ZWrviOIEhduzIr2UEWpkC8SndAVuMHePvvc0oRd7jWXHTWM7aV6gWrNyRDMMxcmAm2gZOtrjyI+mUgHNZ/k/MBpKNfWQvKDr26E1wEABwcG0/7ktWdDWSjHT+tXn8Xt7ZLwDE2yHJsrPdgIoAQQ+mrUc38gaazyyleqx/T+dW9P0GZU+oO1h17zj7GpEOllmWv2IVDekq17zTnQR5E5hku1xj8cP1RE6S1qYWT0bdzGBnaBg6hrgQ3zYW1SBuQDYBMTANHq8/JLsLXWU/Pf/ELbECaLeV7IPBLO2XC3PKjWttIF4ZkoX7YM7bo7Qgldocp2E/hjHq/5M1OEDbxOiohUWrYlSeHoIzyii+hIq60vA5ixMm7Ex9ZBtBFP16AGvJSr4sGELxMcMu0uPNIGYC6UQvZfXkQPBWD3C4QChNybQyn3VEiNo/b37HIoJIRYfLHwNpnUpT8viwGFfeQecGpnzooAQ1PevtmJwbPTWgKcUZEAk5TKgqZe3PcHsekuZ6gsT4hrKytxAAQTVqDGq9Up+eTuKRcUAoAt2ZyBTUtFsmatb5ODeA1ZeHak7LmwfarVZwIBC8RRfcRjuajmmfyr/PDWvyRyLCL2CMyrd0wg0=",
|
"sig": "A/jHXV4OFVc4jjczUlB+CzHZbmaCWIygzshHVS3wjpPYBuQjZRbqn0Lj7yIV7PBoaT3xBAykI0Nd6BAxFHdWwwt10d/Snz8jbW94U7LpQMYjhbmy/7FxlbVOcLJSGs1AeoZUIMsYZpyu74IFD0eHn7x37z5Sg62HBE03uggiwVdwKi5g5qfvgzpBkQnzlSAYRQFOb3wELjLu5GRupJQiKdYsUaSkh8xLeloxhsb3UD8VKB427lfyDG7Da+ZMUFROJN9e+1afkGshlJmLu+/6G+Wiyik7gnjVvNEIQyZOoUMfZNZfhO2oL+5YH1a5Sc7vXcPo1CqHxC9ZT9d5L2QLi/9isAk72FemdiRYhPcMHMJ52Zkp4s5WP/2HxCGunAMLx+qC+Zp4NIihkC99fGJcsJfJ4MX7W9ENdxtBA9al4E+Au2CftrxFWXuARhyCy3X6+b1JlQ1jeMWBqixEqthcsAHvWgVTJUOJKCcEJb4BzpQQt2iEIAqNg2nxIKcSeal86GSvz27Z7Cf7CaNXCxrc0CAJ8XeIm8ZzB17Fg/GnKfEDRzaxweL3yyMIrzpIZnGECc8xHBVa1cLpOpuL3s5DxsLRB4XvcNEQ9ywcyuK0ZiEDRHJMW7lWeKEHgvxhMZNTKFnBp72Fgla9Sb7r+ZGXkwJjSn2chwPkKyFr4HlQgMLU386C2fieL8aqaScbb9VpZnPC9gfXDE/ZaFnLug1ORQYwE45DFXoUSnLNVrFUAMne3ISDaXJ946dMQm/6lrAQm1PglS7WKk+1V+GYmrszx9YeHi+Mqz8Dmlww7PCOPbCYsDFHqeruxxcfisq7SoFoHEOzmlq1FNqT3h0hNatpGIKJ2/FM4tQnEuDIGb6gQZMUZrLrLiVYW4ZmeNBe/GoqOt6c8REbtbt4Hpo9UgueKhZtCZOppZZBXu6i59eJXOIgBtNqX+6Kg8R9iM8vhTNbpec5hC0Q9yyELdkoRZkbUDmKWObKZQSr6h82LlsDSggHFYKRtZ4mOqJNxR7U8T8XEr7xqSaC0jmCl9bbxNND1Ir1x6PREfOuSNABxCYHRvZBAqp3PI+T41OsN/2Gcbz5FKc1ShfRcEZKH6npg/mPeYB6KNtuTtgpTJefAAgEra6t3mrV84sjEPig0IfQhfp8VeZItB09OXV02aOOXHKOBU2VilXWF7+Lapjk51I6+BnWRulBkZg6k70YZP/6icOaR+Z60PS8kTqplELfsk4r41nsGlo7iQPHONd5jOa4vhRdmAws7Fan2o5x6wfCJyn1nljNTysLktSm9y8PzJFUVq/kscXac5Q7Rfl4F8JIqbVvmUT740/tJv1zTB4YLfgYJI5cnwVbFuTzTXeDOR/KPCk=",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://pixeldrain.com/api/file/u5WRzlSt",
|
"https://pixeldrain.com/api/file/thkU0RHP",
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_linux_x86_64.AppImage"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_linux_x86_64.AppImage"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"ubuntu18.10": {
|
"ubuntu18.10": {
|
||||||
"1.0.6": {
|
"1.0.7": {
|
||||||
"sha256": "39f0a8e78ee78d6237a3c884666f6d87551fae13bbb43928f8f6f96386d5ed41",
|
"sha256": "dac898185beb12bd6e0eaf0164f2cdcd517223981678ee18e8ec99983921ecbf",
|
||||||
"sig": "AcrywSjZ+OHQTTJL+nbmtIcov2+5VhXUNFC1iNPsdlk19u7MRazE6OVgwa4GsEd8QsAnhrQocQeFr7Vc34lT7Z14Ypaf+rCtzcGxFJDdyq5KcPRS0svlO6KDkZ3u0IwRHIA4MGhET+jXLTKZvjC6VGXz6a7XFI9qHeD8W5QRCsfDIqOsgQFi2+gStoFuwRIi2nrhdEeqtH3jShciV+4bxwYISQ8V6xUuSYiymQTzYEOaPNgzO9nhvt6HWspQAlUs8Pmsw4jo15rob4vr8zNd7ZtfhLS4CtmCkgegVsbvxvZ+wo0MFHRXlBAB+N018APeGcN8flk9PusOOHsBzKdmgC38HDc2RL/+jEPr370GWGbzMlIEZLoVYRF1e0ivxLrlZz4l0cBJrc5JD+W3a8QulRp7y7oo9g13OFFsHw3dqRn/ei2rEwXU/+ux0P1TnZy2bWWGaPtDWghH83Dzk98lXnJZEmr2kw5klfzBHkSZKZEUHKYYXDezUJJIznphQQDbXX17uW51aKX8Su2HnD7IAFicjRoGFlxSXG1Qx9HyUzw4hVgrNocF5Mp1oHuX1xrP9Zlg6PF5vaVtcU+wB6ifdIXAQRhSvgLkp3aTHhA8H7xjFTMNKOGUTx8BJ1ze/yP4/ZAcl3FD708+cNLJCwthyFvTPyGH99j/jsam4d41io8SHXVN4+YfW7OLEI43jjKBVPBn9FMuAq9cgBJ9iTxmfZRT5uzb8lJnFrzXRPqiWU2ZWrviOIEhduzIr2UEWpkC8SndAVuMHePvvc0oRd7jWXHTWM7aV6gWrNyRDMMxcmAm2gZOtrjyI+mUgHNZ/k/MBpKNfWQvKDr26E1wEABwcG0/7ktWdDWSjHT+tXn8Xt7ZLwDE2yHJsrPdgIoAQQ+mrUc38gaazyyleqx/T+dW9P0GZU+oO1h17zj7GpEOllmWv2IVDekq17zTnQR5E5hku1xj8cP1RE6S1qYWT0bdzGBnaBg6hrgQ3zYW1SBuQDYBMTANHq8/JLsLXWU/Pf/ELbECaLeV7IPBLO2XC3PKjWttIF4ZkoX7YM7bo7Qgldocp2E/hjHq/5M1OEDbxOiohUWrYlSeHoIzyii+hIq60vA5ixMm7Ex9ZBtBFP16AGvJSr4sGELxMcMu0uPNIGYC6UQvZfXkQPBWD3C4QChNybQyn3VEiNo/b37HIoJIRYfLHwNpnUpT8viwGFfeQecGpnzooAQ1PevtmJwbPTWgKcUZEAk5TKgqZe3PcHsekuZ6gsT4hrKytxAAQTVqDGq9Up+eTuKRcUAoAt2ZyBTUtFsmatb5ODeA1ZeHak7LmwfarVZwIBC8RRfcRjuajmmfyr/PDWvyRyLCL2CMyrd0wg0=",
|
"sig": "A/jHXV4OFVc4jjczUlB+CzHZbmaCWIygzshHVS3wjpPYBuQjZRbqn0Lj7yIV7PBoaT3xBAykI0Nd6BAxFHdWwwt10d/Snz8jbW94U7LpQMYjhbmy/7FxlbVOcLJSGs1AeoZUIMsYZpyu74IFD0eHn7x37z5Sg62HBE03uggiwVdwKi5g5qfvgzpBkQnzlSAYRQFOb3wELjLu5GRupJQiKdYsUaSkh8xLeloxhsb3UD8VKB427lfyDG7Da+ZMUFROJN9e+1afkGshlJmLu+/6G+Wiyik7gnjVvNEIQyZOoUMfZNZfhO2oL+5YH1a5Sc7vXcPo1CqHxC9ZT9d5L2QLi/9isAk72FemdiRYhPcMHMJ52Zkp4s5WP/2HxCGunAMLx+qC+Zp4NIihkC99fGJcsJfJ4MX7W9ENdxtBA9al4E+Au2CftrxFWXuARhyCy3X6+b1JlQ1jeMWBqixEqthcsAHvWgVTJUOJKCcEJb4BzpQQt2iEIAqNg2nxIKcSeal86GSvz27Z7Cf7CaNXCxrc0CAJ8XeIm8ZzB17Fg/GnKfEDRzaxweL3yyMIrzpIZnGECc8xHBVa1cLpOpuL3s5DxsLRB4XvcNEQ9ywcyuK0ZiEDRHJMW7lWeKEHgvxhMZNTKFnBp72Fgla9Sb7r+ZGXkwJjSn2chwPkKyFr4HlQgMLU386C2fieL8aqaScbb9VpZnPC9gfXDE/ZaFnLug1ORQYwE45DFXoUSnLNVrFUAMne3ISDaXJ946dMQm/6lrAQm1PglS7WKk+1V+GYmrszx9YeHi+Mqz8Dmlww7PCOPbCYsDFHqeruxxcfisq7SoFoHEOzmlq1FNqT3h0hNatpGIKJ2/FM4tQnEuDIGb6gQZMUZrLrLiVYW4ZmeNBe/GoqOt6c8REbtbt4Hpo9UgueKhZtCZOppZZBXu6i59eJXOIgBtNqX+6Kg8R9iM8vhTNbpec5hC0Q9yyELdkoRZkbUDmKWObKZQSr6h82LlsDSggHFYKRtZ4mOqJNxR7U8T8XEr7xqSaC0jmCl9bbxNND1Ir1x6PREfOuSNABxCYHRvZBAqp3PI+T41OsN/2Gcbz5FKc1ShfRcEZKH6npg/mPeYB6KNtuTtgpTJefAAgEra6t3mrV84sjEPig0IfQhfp8VeZItB09OXV02aOOXHKOBU2VilXWF7+Lapjk51I6+BnWRulBkZg6k70YZP/6icOaR+Z60PS8kTqplELfsk4r41nsGlo7iQPHONd5jOa4vhRdmAws7Fan2o5x6wfCJyn1nljNTysLktSm9y8PzJFUVq/kscXac5Q7Rfl4F8JIqbVvmUT740/tJv1zTB4YLfgYJI5cnwVbFuTzTXeDOR/KPCk=",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://pixeldrain.com/api/file/u5WRzlSt",
|
"https://pixeldrain.com/api/file/thkU0RHP",
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_linux_x86_64.AppImage"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_linux_x86_64.AppImage"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"ubuntu19.04": {
|
"ubuntu19.04": {
|
||||||
"1.0.6": {
|
"1.0.7": {
|
||||||
"sha256": "39f0a8e78ee78d6237a3c884666f6d87551fae13bbb43928f8f6f96386d5ed41",
|
"sha256": "dac898185beb12bd6e0eaf0164f2cdcd517223981678ee18e8ec99983921ecbf",
|
||||||
"sig": "AcrywSjZ+OHQTTJL+nbmtIcov2+5VhXUNFC1iNPsdlk19u7MRazE6OVgwa4GsEd8QsAnhrQocQeFr7Vc34lT7Z14Ypaf+rCtzcGxFJDdyq5KcPRS0svlO6KDkZ3u0IwRHIA4MGhET+jXLTKZvjC6VGXz6a7XFI9qHeD8W5QRCsfDIqOsgQFi2+gStoFuwRIi2nrhdEeqtH3jShciV+4bxwYISQ8V6xUuSYiymQTzYEOaPNgzO9nhvt6HWspQAlUs8Pmsw4jo15rob4vr8zNd7ZtfhLS4CtmCkgegVsbvxvZ+wo0MFHRXlBAB+N018APeGcN8flk9PusOOHsBzKdmgC38HDc2RL/+jEPr370GWGbzMlIEZLoVYRF1e0ivxLrlZz4l0cBJrc5JD+W3a8QulRp7y7oo9g13OFFsHw3dqRn/ei2rEwXU/+ux0P1TnZy2bWWGaPtDWghH83Dzk98lXnJZEmr2kw5klfzBHkSZKZEUHKYYXDezUJJIznphQQDbXX17uW51aKX8Su2HnD7IAFicjRoGFlxSXG1Qx9HyUzw4hVgrNocF5Mp1oHuX1xrP9Zlg6PF5vaVtcU+wB6ifdIXAQRhSvgLkp3aTHhA8H7xjFTMNKOGUTx8BJ1ze/yP4/ZAcl3FD708+cNLJCwthyFvTPyGH99j/jsam4d41io8SHXVN4+YfW7OLEI43jjKBVPBn9FMuAq9cgBJ9iTxmfZRT5uzb8lJnFrzXRPqiWU2ZWrviOIEhduzIr2UEWpkC8SndAVuMHePvvc0oRd7jWXHTWM7aV6gWrNyRDMMxcmAm2gZOtrjyI+mUgHNZ/k/MBpKNfWQvKDr26E1wEABwcG0/7ktWdDWSjHT+tXn8Xt7ZLwDE2yHJsrPdgIoAQQ+mrUc38gaazyyleqx/T+dW9P0GZU+oO1h17zj7GpEOllmWv2IVDekq17zTnQR5E5hku1xj8cP1RE6S1qYWT0bdzGBnaBg6hrgQ3zYW1SBuQDYBMTANHq8/JLsLXWU/Pf/ELbECaLeV7IPBLO2XC3PKjWttIF4ZkoX7YM7bo7Qgldocp2E/hjHq/5M1OEDbxOiohUWrYlSeHoIzyii+hIq60vA5ixMm7Ex9ZBtBFP16AGvJSr4sGELxMcMu0uPNIGYC6UQvZfXkQPBWD3C4QChNybQyn3VEiNo/b37HIoJIRYfLHwNpnUpT8viwGFfeQecGpnzooAQ1PevtmJwbPTWgKcUZEAk5TKgqZe3PcHsekuZ6gsT4hrKytxAAQTVqDGq9Up+eTuKRcUAoAt2ZyBTUtFsmatb5ODeA1ZeHak7LmwfarVZwIBC8RRfcRjuajmmfyr/PDWvyRyLCL2CMyrd0wg0=",
|
"sig": "A/jHXV4OFVc4jjczUlB+CzHZbmaCWIygzshHVS3wjpPYBuQjZRbqn0Lj7yIV7PBoaT3xBAykI0Nd6BAxFHdWwwt10d/Snz8jbW94U7LpQMYjhbmy/7FxlbVOcLJSGs1AeoZUIMsYZpyu74IFD0eHn7x37z5Sg62HBE03uggiwVdwKi5g5qfvgzpBkQnzlSAYRQFOb3wELjLu5GRupJQiKdYsUaSkh8xLeloxhsb3UD8VKB427lfyDG7Da+ZMUFROJN9e+1afkGshlJmLu+/6G+Wiyik7gnjVvNEIQyZOoUMfZNZfhO2oL+5YH1a5Sc7vXcPo1CqHxC9ZT9d5L2QLi/9isAk72FemdiRYhPcMHMJ52Zkp4s5WP/2HxCGunAMLx+qC+Zp4NIihkC99fGJcsJfJ4MX7W9ENdxtBA9al4E+Au2CftrxFWXuARhyCy3X6+b1JlQ1jeMWBqixEqthcsAHvWgVTJUOJKCcEJb4BzpQQt2iEIAqNg2nxIKcSeal86GSvz27Z7Cf7CaNXCxrc0CAJ8XeIm8ZzB17Fg/GnKfEDRzaxweL3yyMIrzpIZnGECc8xHBVa1cLpOpuL3s5DxsLRB4XvcNEQ9ywcyuK0ZiEDRHJMW7lWeKEHgvxhMZNTKFnBp72Fgla9Sb7r+ZGXkwJjSn2chwPkKyFr4HlQgMLU386C2fieL8aqaScbb9VpZnPC9gfXDE/ZaFnLug1ORQYwE45DFXoUSnLNVrFUAMne3ISDaXJ946dMQm/6lrAQm1PglS7WKk+1V+GYmrszx9YeHi+Mqz8Dmlww7PCOPbCYsDFHqeruxxcfisq7SoFoHEOzmlq1FNqT3h0hNatpGIKJ2/FM4tQnEuDIGb6gQZMUZrLrLiVYW4ZmeNBe/GoqOt6c8REbtbt4Hpo9UgueKhZtCZOppZZBXu6i59eJXOIgBtNqX+6Kg8R9iM8vhTNbpec5hC0Q9yyELdkoRZkbUDmKWObKZQSr6h82LlsDSggHFYKRtZ4mOqJNxR7U8T8XEr7xqSaC0jmCl9bbxNND1Ir1x6PREfOuSNABxCYHRvZBAqp3PI+T41OsN/2Gcbz5FKc1ShfRcEZKH6npg/mPeYB6KNtuTtgpTJefAAgEra6t3mrV84sjEPig0IfQhfp8VeZItB09OXV02aOOXHKOBU2VilXWF7+Lapjk51I6+BnWRulBkZg6k70YZP/6icOaR+Z60PS8kTqplELfsk4r41nsGlo7iQPHONd5jOa4vhRdmAws7Fan2o5x6wfCJyn1nljNTysLktSm9y8PzJFUVq/kscXac5Q7Rfl4F8JIqbVvmUT740/tJv1zTB4YLfgYJI5cnwVbFuTzTXeDOR/KPCk=",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://pixeldrain.com/api/file/u5WRzlSt",
|
"https://pixeldrain.com/api/file/thkU0RHP",
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_linux_x86_64.AppImage"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_linux_x86_64.AppImage"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"win32": {
|
"win32": {
|
||||||
"1.0.6": {
|
"1.0.7": {
|
||||||
"sha256": "600fee604de40fd8634213ccce9513edcd8defe881914e28b1445c2bf48dec10",
|
"sha256": "fbf7611bca712413bd6e6900bcbd49bd3a1545b4d4e70afb2ee9bd59f74b8f97",
|
||||||
"sig": "CBQXvnArlk/CCATwiP8dPeoSGAqc+2iBhUnr8wr8W8z05BpcpQKxl/OLBz9BaT3WHlyCPOLujqWZzVEyHLcxewByLQjgxvxYZyk9Qsz0zieciemc5dvXFDqyUy3hQoiDjD4VlUFoh2eiO1Oq8yzpw68qocVHNdyWHNMbShQBLiTa47uxjvimK2MgTLK+xsHgy8NUQldr9jHbrPYS0ZIi2Zvh17A66k97cVkjfMkEK4+3hOC6A2rZ6MGBnnaHV8gPC4juUIauZEuic62bIwNOc64qQZ7xp8daH4pLRNbdk5Ia84Ew71wX+Fx7C42wa+NPs721CgQHZoLOgbmo0tPghIrZe3K4xhhLVvB9aNUXoLM/KDb3CrTtNgm4+9UEiuqEJR1XE10gseOBdmE4oyqkirru5yQzNbTSrhMg4r+fBKK5b8AVUkBQHw6AMlgcKFc03HwiWnsRsc4lQsoev1X8WOE1X+wkogNrIUCNwJQS/46f/q9vAm+UFVH82tOSfQOQu6a51rV6yp5vRPyZK2Zuo3uzjT50pBoitAC5GzqRqD+nBtmbiu0h9y3BtD/cGouWT20ges6/W3kIEW720sFa5xNYPPrYiZQ5UUBwlDSxitrSQzssE58JC8nk6B/OKljxL4sQRHpYJinTPd7ZhzX295Rfi3bA9qbcdIhs31g2Kkg0CUBNDGE6k8/MefoYW6u/8k3UoJ7wihVURp6Y7zXHx/aeymkbnTYSjTy57axYyMWJTRghOIuParYvE/hXZPCA9cEn3FzFUOmiq8elNwYklpsuEikTZAtyxEU4zU6+pcRvtXdp6p4fKCebAKqfjfGY/17Oc8b9k7ZRfePQtBU9ZckzmVHdnNqQ9fUmqTz4tyM1NjMxopSYWAiVtizbq3A40zmgmIukIxOanfQQz6f0wGjpV+D84evaz1R4Vb/H8tS1CQ+Cz2Sln8v5DDKegLWLqfWOcPK6KAeFLIAuT+IkfFO1nt1PfsCVRxCPdDFytdlGnKC/5mYRqAVwGZTgwzbIG1u/LOWkbSSCa0XkHQP2rJCi1aKn5NaGXO1X4nILEbk9LeLBiLoyGp4jlwy1McnrjHcJRBRcrKTEG9O9zwSsEW29JOtLwgB5HA+EaQlcEdNGPzBLHS67cv7McTfyviClfK0QC34+VMZ0wPGEunAWaK31ztwsYVYftl5E6UIZY6woYd3jSk55ekGH8QmeIqpfmsjHs9TgpZYCfgA8u2blfxhLnNxxYBa9Z14DNST0oaPuF1dAE6p3oYj2Uf7BSUvjz+XOKGY2/PLR4Jd7JxN4d55559Lprrz410BTxAZEpkn+3B3JdFCMtHKucAlNLhsAURc6qtWNHwRVxahX43AoeQQ=",
|
"sig": "B3URP0wqwJcxuisX/qkoLg19Tm1tUu0rQbkBrCtpscaSa5PhUS/p+6ID/eApKMy91SWqCeqw0C071OvTVfTmWRoB/v+9Kkftqs9IISIMDBZgJEAcwf5h0CYqRp/cLyl5XfZLnZoMDR6x7cIVejBaDu1EWtWtACTxfDy3SvtbHkXTfo5ojKk5DScTSNAeDVSL1dY7BBsGuy5WDR0GYpB+519//V4uNCeLSxmHMekEQdyMmjpaO4iKDOkqccwYNSrw3LpL6TQ6YpTX8g2I1tD1ucTKob5Z44LANceL/PMjk7XYRCplufZBIiAnK6mBQFjFFMm4dDTSWqFQKn+pJboTE1E20Gvs/1MFwO1S30mwOIuYebZ4Xfa/D26rFjjxsA8a62Xrxw5YenKczRWs1iNRK+BZUUNw3pbm0KtEwvJZX/XhaVBBuHwT4CDTLIK0tvVsVF6cMNXLdgJEBmItkSw8LdDta81SwHVco0oMxwExqFbwhXqZf7hQBx4NaytBft0QeXNGF0T1B7GTi+D2qr9F5YcIALzYPh5b6RC8yTuTuVgIW+f3LSY8yPTvJaFS3idjTMbzebWAC2aR0BNW1dPyEEoLzsQEfBDbXqSN4m7j+Nt2l5HGfpy370uOaVeKhIFgASJTvhp6FJ0+3FdJfv5E6E0h6EXCXsGCXmh51kcz5kPpmeLXa3OaoF8G5277hICztyUfqskmgz6cu5udRglW57ZwVM8nWRYo9yO5oiLn9ygq4ALOhUfQhbaCpICsDO5nG1R3rAj0t4a2yzQg+CqN9GXzf0+xlbuO0wdg92s2Tgs1O2F5U8yPvgp7fJIil8/GYmmJHj9zqj+kWjFm+ZPdreXns5m+jr58/hepaVyu7KVV/I/o5Q2dse5Xf+jvt7B8u2TC+JWmitzBJkDGRM0Rml+3QIb2F1lKMfPSs34aI7HJHjrfvExAcFiXDVsFXudVZqayjKWreA4gsgZ07GUi1lZ6qX00K7trxWz0BmlZqtXGofrDUQGgsiZ5FoGW5tFSs9t7DqUnpQAZCiVfPki8bphbPMeRsPXBMXsHKTK6TzbU8nukq8urMJWURetWQP5N4/dSI5zrgByBVI7n1TQvdE2bzMQrJP/xTLWGZUCRXfi2J7FmW7fbUtcAStVC2TPWPuzEC9Lvb3ybg0wepgEbMn1kGfb7mohJ5jeLHqhGzY9mx9fO191cduH9zI+yV5wrnYqWd5wN9J4NY66ULxeGxt03rzjMd2hv2tRRVRsT+/4ACUZcIV8JwUZgK51s5DuUWUsl2e5DBPAND/RVpThXJVFyAtBo/vDqoY3lg/pc4RaQZ6gNMoFeHbXwD/yu6TDDTWq5u00ZwNCbR0PaBTwDabs=",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://pixeldrain.com/api/file/DpGbYmao",
|
"https://pixeldrain.com/api/file/AcsttDQ_",
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.6_win.exe"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.0.7_win.exe"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Versions": {
|
"Versions": {
|
||||||
"arch": [
|
"arch": [
|
||||||
"1.0.6"
|
"1.0.7"
|
||||||
],
|
],
|
||||||
"centos7": [
|
"centos7": [
|
||||||
"1.0.6"
|
"1.0.7"
|
||||||
],
|
],
|
||||||
"darwin": [
|
"darwin": [
|
||||||
"1.0.6"
|
"1.0.7"
|
||||||
],
|
],
|
||||||
"debian9": [
|
"debian9": [
|
||||||
"1.0.6"
|
"1.0.7"
|
||||||
],
|
],
|
||||||
"debian10": [
|
"debian10": [
|
||||||
"1.0.6"
|
"1.0.7"
|
||||||
],
|
],
|
||||||
"fedora28": [
|
"fedora28": [
|
||||||
"1.0.6"
|
"1.0.7"
|
||||||
],
|
],
|
||||||
"fedora29": [
|
"fedora29": [
|
||||||
"1.0.6"
|
"1.0.7"
|
||||||
],
|
],
|
||||||
"fedora30": [
|
"fedora30": [
|
||||||
"1.0.6"
|
"1.0.7"
|
||||||
],
|
],
|
||||||
"linux": [
|
"linux": [
|
||||||
"unavailable"
|
"unavailable"
|
||||||
],
|
],
|
||||||
"opensuse15": [
|
"opensuse15": [
|
||||||
"1.0.6"
|
"1.0.7"
|
||||||
],
|
],
|
||||||
"opensuse15.1": [
|
"opensuse15.1": [
|
||||||
"1.0.6"
|
"1.0.7"
|
||||||
],
|
],
|
||||||
"solus": [
|
"solus": [
|
||||||
"1.0.6"
|
"1.0.7"
|
||||||
],
|
],
|
||||||
"tumbleweed": [
|
"tumbleweed": [
|
||||||
"1.0.6"
|
"1.0.7"
|
||||||
],
|
],
|
||||||
"ubuntu18.04": [
|
"ubuntu18.04": [
|
||||||
"1.0.6"
|
"1.0.7"
|
||||||
],
|
],
|
||||||
"ubuntu18.10": [
|
"ubuntu18.10": [
|
||||||
"1.0.6"
|
"1.0.7"
|
||||||
],
|
],
|
||||||
"ubuntu19.04": [
|
"ubuntu19.04": [
|
||||||
"1.0.6"
|
"1.0.7"
|
||||||
],
|
],
|
||||||
"unknown": [
|
"unknown": [
|
||||||
"unavailable"
|
"unavailable"
|
||||||
],
|
],
|
||||||
"win32": [
|
"win32": [
|
||||||
"1.0.6"
|
"1.0.7"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
25
src/App.js
25
src/App.js
@@ -2,7 +2,6 @@ import React from 'react';
|
|||||||
import './App.css';
|
import './App.css';
|
||||||
import Box from './components/UI/Box/Box';
|
import Box from './components/UI/Box/Box';
|
||||||
import Configuration from './containers/Configuration/Configuration';
|
import Configuration from './containers/Configuration/Configuration';
|
||||||
import {checkVersionInstalled} from './redux/actions/install_actions';
|
|
||||||
import {connect} from 'react-redux';
|
import {connect} from 'react-redux';
|
||||||
import DependencyList from './components/DependencyList/DependencyList';
|
import DependencyList from './components/DependencyList/DependencyList';
|
||||||
import DownloadProgress from './components/DownloadProgress/DownloadProgress';
|
import DownloadProgress from './components/DownloadProgress/DownloadProgress';
|
||||||
@@ -13,6 +12,7 @@ import Loading from './components/UI/Loading/Loading';
|
|||||||
import Modal from './components/UI/Modal/Modal';
|
import Modal from './components/UI/Modal/Modal';
|
||||||
import MountItems from './containers/MountItems/MountItems';
|
import MountItems from './containers/MountItems/MountItems';
|
||||||
import {notifyError} from './redux/actions/error_actions';
|
import {notifyError} from './redux/actions/error_actions';
|
||||||
|
import Reboot from './components/Reboot/Reboot';
|
||||||
import ReleaseVersionDisplay from './components/ReleaseVersionDisplay/ReleaseVersionDisplay';
|
import ReleaseVersionDisplay from './components/ReleaseVersionDisplay/ReleaseVersionDisplay';
|
||||||
import {saveState} from './redux/actions/common_actions';
|
import {saveState} from './redux/actions/common_actions';
|
||||||
import Text from './components/UI/Text/Text';
|
import Text from './components/UI/Text/Text';
|
||||||
@@ -44,7 +44,6 @@ class App extends IPCContainer {
|
|||||||
(prevProps.ReleaseVersion !== this.props.ReleaseVersion) ||
|
(prevProps.ReleaseVersion !== this.props.ReleaseVersion) ||
|
||||||
(prevProps.VersionLookup !== this.props.VersionLookup)) {
|
(prevProps.VersionLookup !== this.props.VersionLookup)) {
|
||||||
this.props.saveState();
|
this.props.saveState();
|
||||||
this.props.checkVersionInstalled();
|
|
||||||
} else if (Object.keys(this.props.ProviderState).filter(k=> {
|
} else if (Object.keys(this.props.ProviderState).filter(k=> {
|
||||||
return this.props.ProviderState[k] !== prevProps.ProviderState[k];
|
return this.props.ProviderState[k] !== prevProps.ProviderState[k];
|
||||||
}).length > 0) {
|
}).length > 0) {
|
||||||
@@ -77,8 +76,11 @@ class App extends IPCContainer {
|
|||||||
(selectedVersion !== 'unavailable') &&
|
(selectedVersion !== 'unavailable') &&
|
||||||
(selectedVersion !== this.props.InstalledVersion);
|
(selectedVersion !== this.props.InstalledVersion);
|
||||||
|
|
||||||
const missingDependencies = (this.props.MissingDependencies.length > 0);
|
const missingDependencies = (this.props.MissingDependencies.length > 0) &&
|
||||||
const allowMount = this.props.InstalledVersion !== 'none' &&
|
this.props.AllowMount;
|
||||||
|
|
||||||
|
const allowMount = this.props.AllowMount &&
|
||||||
|
this.props.InstalledVersion !== 'none' &&
|
||||||
!missingDependencies &&
|
!missingDependencies &&
|
||||||
!this.props.InstallActive;
|
!this.props.InstallActive;
|
||||||
|
|
||||||
@@ -93,6 +95,7 @@ class App extends IPCContainer {
|
|||||||
|
|
||||||
const showConfig = !missingDependencies &&
|
const showConfig = !missingDependencies &&
|
||||||
this.props.DisplayConfiguration &&
|
this.props.DisplayConfiguration &&
|
||||||
|
!this.props.RebootRequired &&
|
||||||
allowConfig;
|
allowConfig;
|
||||||
|
|
||||||
const showUpgrade = this.props.UpgradeAvailable &&
|
const showUpgrade = this.props.UpgradeAvailable &&
|
||||||
@@ -100,12 +103,17 @@ class App extends IPCContainer {
|
|||||||
!showConfig &&
|
!showConfig &&
|
||||||
!this.props.DownloadActive &&
|
!this.props.DownloadActive &&
|
||||||
!this.props.UpgradeDismissed &&
|
!this.props.UpgradeDismissed &&
|
||||||
!this.props.InstallActive;
|
!this.props.InstallActive &&
|
||||||
|
!this.props.RebootRequired;
|
||||||
|
|
||||||
const showDependencies = !showUpgrade &&
|
const showDependencies = !showUpgrade &&
|
||||||
missingDependencies &&
|
missingDependencies &&
|
||||||
!this.props.DownloadActive;
|
!this.props.DownloadActive &&
|
||||||
|
!this.props.RebootRequired &&
|
||||||
|
!this.props.DismissDependencies &&
|
||||||
|
this.props.AllowMount;
|
||||||
|
|
||||||
|
const rebootDisplay = this.createModalConditionally(this.props.RebootRequired, <Reboot />);
|
||||||
const configDisplay = this.createModalConditionally(showConfig, <Configuration version={selectedVersion} />);
|
const configDisplay = this.createModalConditionally(showConfig, <Configuration version={selectedVersion} />);
|
||||||
const dependencyDisplay = this.createModalConditionally(showDependencies, <DependencyList/>);
|
const dependencyDisplay = this.createModalConditionally(showDependencies, <DependencyList/>);
|
||||||
const downloadDisplay = this.createModalConditionally(this.props.DownloadActive, <DownloadProgress/>);
|
const downloadDisplay = this.createModalConditionally(this.props.DownloadActive, <DownloadProgress/>);
|
||||||
@@ -143,6 +151,7 @@ class App extends IPCContainer {
|
|||||||
{upgradeDisplay}
|
{upgradeDisplay}
|
||||||
{downloadDisplay}
|
{downloadDisplay}
|
||||||
{configDisplay}
|
{configDisplay}
|
||||||
|
{rebootDisplay}
|
||||||
<div className={'AppContainer'}>
|
<div className={'AppContainer'}>
|
||||||
<div className={'AppHeader'}>
|
<div className={'AppHeader'}>
|
||||||
<Box>
|
<Box>
|
||||||
@@ -178,8 +187,10 @@ class App extends IPCContainer {
|
|||||||
const mapStateToProps = state => {
|
const mapStateToProps = state => {
|
||||||
return {
|
return {
|
||||||
AllowDownload: state.download.AllowDownload,
|
AllowDownload: state.download.AllowDownload,
|
||||||
|
AllowMount: state.common.AllowMount,
|
||||||
AppPlatform: state.common.AppPlatform,
|
AppPlatform: state.common.AppPlatform,
|
||||||
AppReady: state.common.AppReady,
|
AppReady: state.common.AppReady,
|
||||||
|
DismissDependencies: state.install.DismissDependencies,
|
||||||
DisplayConfiguration: state.mounts.DisplayConfiguration,
|
DisplayConfiguration: state.mounts.DisplayConfiguration,
|
||||||
DisplayError: state.error.DisplayError,
|
DisplayError: state.error.DisplayError,
|
||||||
DownloadActive: state.download.DownloadActive,
|
DownloadActive: state.download.DownloadActive,
|
||||||
@@ -189,6 +200,7 @@ const mapStateToProps = state => {
|
|||||||
MissingDependencies: state.install.MissingDependencies,
|
MissingDependencies: state.install.MissingDependencies,
|
||||||
MountsBusy: state.mounts.MountsBusy,
|
MountsBusy: state.mounts.MountsBusy,
|
||||||
ProviderState: state.mounts.ProviderState,
|
ProviderState: state.mounts.ProviderState,
|
||||||
|
RebootRequired: state.common.RebootRequired,
|
||||||
Release: state.relver.Release,
|
Release: state.relver.Release,
|
||||||
ReleaseVersion: state.relver.Version,
|
ReleaseVersion: state.relver.Version,
|
||||||
UpgradeAvailable: state.relver.UpgradeAvailable,
|
UpgradeAvailable: state.relver.UpgradeAvailable,
|
||||||
@@ -200,7 +212,6 @@ const mapStateToProps = state => {
|
|||||||
|
|
||||||
const mapDispatchToProps = dispatch => {
|
const mapDispatchToProps = dispatch => {
|
||||||
return {
|
return {
|
||||||
checkVersionInstalled: () => dispatch(checkVersionInstalled()),
|
|
||||||
loadReleases: ()=> dispatch(loadReleases()),
|
loadReleases: ()=> dispatch(loadReleases()),
|
||||||
notifyError: (msg, critical, callback) => dispatch(notifyError(msg, critical, callback)),
|
notifyError: (msg, critical, callback) => dispatch(notifyError(msg, critical, callback)),
|
||||||
saveState: () => dispatch(saveState()),
|
saveState: () => dispatch(saveState()),
|
||||||
|
|||||||
@@ -6,16 +6,19 @@ import Dependency from './Dependency/Dependency';
|
|||||||
import Box from '../UI/Box/Box';
|
import Box from '../UI/Box/Box';
|
||||||
import {downloadItem} from '../../redux/actions/download_actions';
|
import {downloadItem} from '../../redux/actions/download_actions';
|
||||||
import {extractFileNameFromURL} from '../../utils';
|
import {extractFileNameFromURL} from '../../utils';
|
||||||
|
import {setDismissDependencies} from '../../redux/actions/install_actions';
|
||||||
|
|
||||||
const mapStateToProps = state => {
|
const mapStateToProps = state => {
|
||||||
return {
|
return {
|
||||||
|
AllowDismissDependencies: state.relver.AllowDismissDependencies,
|
||||||
MissingDependencies: state.install.MissingDependencies,
|
MissingDependencies: state.install.MissingDependencies,
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
const mapDispatchToProps = (dispatch) => {
|
const mapDispatchToProps = (dispatch) => {
|
||||||
return {
|
return {
|
||||||
downloadItem: (name, type, url) => dispatch(downloadItem(name, type, url))
|
downloadItem: (name, type, url, isWinFSP) => dispatch(downloadItem(name, type, url, isWinFSP)),
|
||||||
|
setDismissDependencies: dismiss => dispatch(setDismissDependencies(dismiss)),
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -24,12 +27,23 @@ export default connect(mapStateToProps, mapDispatchToProps)(props => {
|
|||||||
return (
|
return (
|
||||||
<Dependency key={i}
|
<Dependency key={i}
|
||||||
name={k.display}
|
name={k.display}
|
||||||
onDownload={()=>props.downloadItem(extractFileNameFromURL(k.download), Constants.INSTALL_TYPES.Dependency, k.download)}/>
|
onDownload={()=>props.downloadItem(extractFileNameFromURL(k.download), Constants.INSTALL_TYPES.Dependency, k.download, k.is_winfsp)}/>
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
let dismissDisplay;
|
||||||
|
if (props.AllowDismissDependencies) {
|
||||||
|
dismissDisplay = (
|
||||||
|
<div style={{float: 'right', margin: 0, paddingRight: '4px', boxSizing: 'border-box', display: 'block'}}>
|
||||||
|
<b style={{cursor: 'pointer'}}
|
||||||
|
onClick={()=>props.setDismissDependencies(true)}>X
|
||||||
|
</b>
|
||||||
|
</div>);
|
||||||
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Box dxStyle={{width: '300px', height: 'auto', padding: '5px'}}>
|
<Box dxStyle={{width: '300px', height: 'auto', padding: '5px'}}>
|
||||||
|
{dismissDisplay}
|
||||||
<div style={{width: '100%', height: 'auto', paddingBottom: '5px', boxSizing: 'border-box'}}>
|
<div style={{width: '100%', height: 'auto', paddingBottom: '5px', boxSizing: 'border-box'}}>
|
||||||
<h1 style={{width: '100%', textAlign: 'center', color: 'var(--text_color_error)'}}>Missing Dependencies</h1>
|
<h1 style={{width: '100%', textAlign: 'center', color: 'var(--text_color_error)'}}>Missing Dependencies</h1>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
11
src/components/Reboot/Reboot.css
Normal file
11
src/components/Reboot/Reboot.css
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
.RebootHeading {
|
||||||
|
color: var(--text_color_error);
|
||||||
|
text-align: center;
|
||||||
|
margin-bottom: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.RebootContent {
|
||||||
|
max-height: 60vh;
|
||||||
|
overflow-y: auto;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
}
|
||||||
24
src/components/Reboot/Reboot.js
Normal file
24
src/components/Reboot/Reboot.js
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
import React from 'react';
|
||||||
|
import './Reboot.css';
|
||||||
|
import {connect} from 'react-redux';
|
||||||
|
import Box from '../UI/Box/Box';
|
||||||
|
import Button from '../UI/Button/Button';
|
||||||
|
import {rebootSystem} from '../../redux/actions/common_actions';
|
||||||
|
|
||||||
|
const mapDispatchToProps = dispatch => {
|
||||||
|
return {
|
||||||
|
rebootSystem: () => dispatch(rebootSystem()),
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
export default connect(null, mapDispatchToProps)(props => {
|
||||||
|
return (
|
||||||
|
<Box dxDark dxStyle={{padding: '8px'}}>
|
||||||
|
<h1 className={'RebootHeading'}>Reboot System</h1>
|
||||||
|
<div className={'RebootContent'}>
|
||||||
|
<p>Repertory requires a system reboot to continue.</p>
|
||||||
|
</div>
|
||||||
|
<Button clicked={()=>props.rebootSystem()}>Reboot Now</Button>
|
||||||
|
</Box>
|
||||||
|
);
|
||||||
|
});
|
||||||
@@ -7,12 +7,13 @@ import Grid from '../UI/Grid/Grid';
|
|||||||
import Text from '../UI/Text/Text';
|
import Text from '../UI/Text/Text';
|
||||||
import Button from '../UI/Button/Button';
|
import Button from '../UI/Button/Button';
|
||||||
import UpgradeIcon from '../UpgradeIcon/UpgradeIcon';
|
import UpgradeIcon from '../UpgradeIcon/UpgradeIcon';
|
||||||
import {setActiveRelease} from "../../redux/actions/release_version_actions";
|
import {setActiveRelease} from '../../redux/actions/release_version_actions';
|
||||||
import {downloadItem} from '../../redux/actions/download_actions';
|
import {downloadItem} from '../../redux/actions/download_actions';
|
||||||
|
|
||||||
const mapStateToProps = state => {
|
const mapStateToProps = state => {
|
||||||
return {
|
return {
|
||||||
AppPlatform: state.common.AppPlatform,
|
AppPlatform: state.common.AppPlatform,
|
||||||
|
DismissDependencies: state.install.DismissDependencies,
|
||||||
DownloadActive: state.download.DownloadActive,
|
DownloadActive: state.download.DownloadActive,
|
||||||
InstallActive: state.install.InstallActive,
|
InstallActive: state.install.InstallActive,
|
||||||
InstallType: state.install.InstallType,
|
InstallType: state.install.InstallType,
|
||||||
@@ -74,7 +75,7 @@ export default connect(mapStateToProps, mapDispatchToProps)(props => {
|
|||||||
text={text}
|
text={text}
|
||||||
textAlign={'left'}/>
|
textAlign={'left'}/>
|
||||||
));
|
));
|
||||||
} else if (props.downloadDisabled) {
|
} else if (props.downloadDisabled || props.DismissDependencies) {
|
||||||
optionsDisplay.push((
|
optionsDisplay.push((
|
||||||
<Text col={dimensions => (dimensions.columns / 3) * 2}
|
<Text col={dimensions => (dimensions.columns / 3) * 2}
|
||||||
colSpan={'remain'}
|
colSpan={'remain'}
|
||||||
@@ -100,7 +101,6 @@ export default connect(mapStateToProps, mapDispatchToProps)(props => {
|
|||||||
col={dimensions => (dimensions.columns / 3) * 2}
|
col={dimensions => (dimensions.columns / 3) * 2}
|
||||||
colSpan={20}
|
colSpan={20}
|
||||||
key={key++}
|
key={key++}
|
||||||
disabled={props.downloadDisabled}
|
|
||||||
row={5}
|
row={5}
|
||||||
rowSpan={7}>Install</Button>
|
rowSpan={7}>Install</Button>
|
||||||
));
|
));
|
||||||
|
|||||||
@@ -111,6 +111,8 @@ exports.IPC_Install_Upgrade_Reply = 'install_upgrade_reply';
|
|||||||
exports.IPC_Mount_Drive = 'mount_drive';
|
exports.IPC_Mount_Drive = 'mount_drive';
|
||||||
exports.IPC_Mount_Drive_Reply = 'mount_drive_reply';
|
exports.IPC_Mount_Drive_Reply = 'mount_drive_reply';
|
||||||
|
|
||||||
|
exports.IPC_Reboot_System = 'reboot_system';
|
||||||
|
|
||||||
exports.IPC_Save_State = 'save_state';
|
exports.IPC_Save_State = 'save_state';
|
||||||
|
|
||||||
exports.IPC_Show_Window = 'show_window';
|
exports.IPC_Show_Window = 'show_window';
|
||||||
|
|||||||
@@ -223,7 +223,10 @@ class MountItems extends IPCContainer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (location !== providerState.MountLocation) {
|
if (location !== providerState.MountLocation) {
|
||||||
this.handleMountLocationChanged(provider, location);
|
const value = (this.props.Platform === 'win32') ?
|
||||||
|
data.DriveLetters[provider].indexOf(location) :
|
||||||
|
location;
|
||||||
|
this.handleMountLocationChanged(provider, value);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!this.props.AutoMountProcessed &&
|
if (!this.props.AutoMountProcessed &&
|
||||||
|
|||||||
137
src/helpers.js
137
src/helpers.js
@@ -12,6 +12,55 @@ const _getDataDirectory = () => {
|
|||||||
return _resolvePath(Constants.DATA_LOCATIONS[os.platform()]);
|
return _resolvePath(Constants.DATA_LOCATIONS[os.platform()]);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const _executeProcess = (command, args=[]) => {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
const processOptions = {
|
||||||
|
detached: true,
|
||||||
|
shell: false,
|
||||||
|
};
|
||||||
|
|
||||||
|
const process = new spawn(command, args, processOptions);
|
||||||
|
const pid = process.pid;
|
||||||
|
|
||||||
|
process.on('error', (err) => {
|
||||||
|
reject(err, pid);
|
||||||
|
});
|
||||||
|
|
||||||
|
process.on('exit', (code) => {
|
||||||
|
resolve(code);
|
||||||
|
});
|
||||||
|
|
||||||
|
process.unref();
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
const _execProcessGetOutput = (cmd, args) => {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
const proc = spawn(cmd, args, {
|
||||||
|
env: process.env,
|
||||||
|
stdio: ['ignore', 'pipe', 'pipe']
|
||||||
|
});
|
||||||
|
|
||||||
|
let output;
|
||||||
|
proc.stdout.on('data', data => {
|
||||||
|
output += data.toString();
|
||||||
|
});
|
||||||
|
|
||||||
|
proc.on('error', (err) => {
|
||||||
|
reject(err);
|
||||||
|
});
|
||||||
|
|
||||||
|
proc.on('exit', () => {
|
||||||
|
const lines = output
|
||||||
|
.replace(/\r\n/g, '\n')
|
||||||
|
.split('\n');
|
||||||
|
resolve(lines);
|
||||||
|
});
|
||||||
|
|
||||||
|
proc.unref();
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
const _resolvePath = str => {
|
const _resolvePath = str => {
|
||||||
if (os.platform() === 'win32') {
|
if (os.platform() === 'win32') {
|
||||||
return str.replace(/%([^%]+)%/g, (_, n) => {
|
return str.replace(/%([^%]+)%/g, (_, n) => {
|
||||||
@@ -125,7 +174,7 @@ module.exports.downloadFile = (url, destination, progressCallback, completeCallb
|
|||||||
fs.unlinkSync(destination);
|
fs.unlinkSync(destination);
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
completeCallback(false, e);
|
completeCallback(e);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -133,9 +182,14 @@ module.exports.downloadFile = (url, destination, progressCallback, completeCallb
|
|||||||
.get(url, {
|
.get(url, {
|
||||||
responseType: 'stream',
|
responseType: 'stream',
|
||||||
})
|
})
|
||||||
.then((response) => {
|
.then(response => {
|
||||||
const stream = fs.createWriteStream(destination);
|
try {
|
||||||
const total = parseInt(response.headers['content-length'], 10);
|
const total = parseInt(response.headers['content-length'], 10);
|
||||||
|
if (total === 0) {
|
||||||
|
completeCallback(Error('No data available for download'));
|
||||||
|
} else {
|
||||||
|
const stream = fs.createWriteStream(destination);
|
||||||
|
|
||||||
let downloaded = 0;
|
let downloaded = 0;
|
||||||
response.data.on('data', (chunk) => {
|
response.data.on('data', (chunk) => {
|
||||||
stream.write(Buffer.from(chunk));
|
stream.write(Buffer.from(chunk));
|
||||||
@@ -147,18 +201,28 @@ module.exports.downloadFile = (url, destination, progressCallback, completeCallb
|
|||||||
|
|
||||||
response.data.on('end', () => {
|
response.data.on('end', () => {
|
||||||
stream.end(() => {
|
stream.end(() => {
|
||||||
|
if (downloaded === 0) {
|
||||||
|
completeCallback(Error('Received 0 bytes'));
|
||||||
|
} else if (downloaded !== total) {
|
||||||
|
completeCallback(Error('Received incorrect number of bytes'));
|
||||||
|
} else {
|
||||||
completeCallback();
|
completeCallback();
|
||||||
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
response.data.on('error', (e) => {
|
response.data.on('error', error => {
|
||||||
stream.end(() => {
|
stream.end(() => {
|
||||||
completeCallback(e);
|
completeCallback(error);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
completeCallback(error);
|
||||||
|
}
|
||||||
})
|
})
|
||||||
.catch((e)=> {
|
.catch(error => {
|
||||||
completeCallback(e);
|
completeCallback(error);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -484,6 +548,65 @@ module.exports.mkDirByPathSync = (targetDir, { isRelativeToScript = false } = {}
|
|||||||
}, initDir);
|
}, initDir);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
module.exports.performWindowsUninstall = names => {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
if (os.platform() !== 'win32') {
|
||||||
|
reject('Windows OS is not being used');
|
||||||
|
} else {
|
||||||
|
const cmd = path.join(process.env.windir, 'system32', 'reg.exe');
|
||||||
|
const args = ["QUERY", "HKLM\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall"];
|
||||||
|
_execProcessGetOutput(cmd, args)
|
||||||
|
.then(lines => {
|
||||||
|
const parseLine = index => {
|
||||||
|
if (index < lines.length) {
|
||||||
|
const line = lines[index];
|
||||||
|
if (line.startsWith('HKEY_LOCAL_MACHINE\\')) {
|
||||||
|
let args2 = JSON.parse(JSON.stringify(args));
|
||||||
|
args2[1] = 'HKLM\\' + line.substr(19);
|
||||||
|
args2.push('/v');
|
||||||
|
args2.push('DisplayName');
|
||||||
|
args2.push('/t');
|
||||||
|
args2.push('REG_SZ');
|
||||||
|
_execProcessGetOutput(cmd, args2)
|
||||||
|
.then(lines => {
|
||||||
|
const value = lines[2].trim().substr(args2[3].length).trim().substr(6).trim();
|
||||||
|
if (names.includes(value)) {
|
||||||
|
const items = line.split('\\');
|
||||||
|
const productCode = items[items.length - 1];
|
||||||
|
_executeProcess('msiexec.exe', ['/x', productCode, '/norestart'])
|
||||||
|
.then(code => {
|
||||||
|
if ((code === 0) || (code === 3010) || (code === 1641)) {
|
||||||
|
resolve(true);
|
||||||
|
} else {
|
||||||
|
reject('[' + value + '] uninstall failed: ' + code);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(err => {
|
||||||
|
reject(err);
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
parseLine(++index);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(err=> {
|
||||||
|
parseLine(++index);
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
parseLine(++index);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
resolve(false);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
parseLine(0);
|
||||||
|
})
|
||||||
|
.catch( err => {
|
||||||
|
reject(err);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
module.exports.removeDirectoryRecursively = (p) => {
|
module.exports.removeDirectoryRecursively = (p) => {
|
||||||
if (fs.existsSync(p)) {
|
if (fs.existsSync(p)) {
|
||||||
fs
|
fs
|
||||||
|
|||||||
@@ -4,7 +4,25 @@ import {getIPCRenderer} from '../../utils';
|
|||||||
|
|
||||||
const ipcRenderer = getIPCRenderer();
|
const ipcRenderer = getIPCRenderer();
|
||||||
|
|
||||||
|
export const notifyRebootRequired = createAction('common/notifyRebootRequired');
|
||||||
|
export const setAllowMount = createAction('common/setAllowMount');
|
||||||
|
|
||||||
|
export const rebootSystem = () => {
|
||||||
|
return dispatch => {
|
||||||
|
dispatch(setApplicationReady(false));
|
||||||
|
if (ipcRenderer) {
|
||||||
|
ipcRenderer.send(Constants.IPC_Reboot_System);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
export const setApplicationReady = createAction('common/setApplicationReady');
|
export const setApplicationReady = createAction('common/setApplicationReady');
|
||||||
|
export const setRebootRequired = () => {
|
||||||
|
return dispatch => {
|
||||||
|
dispatch(showWindow());
|
||||||
|
dispatch(notifyRebootRequired(true));
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
export const showWindow = () => {
|
export const showWindow = () => {
|
||||||
return dispatch => {
|
return dispatch => {
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ export const setDownloadBegin = (name, type, url) => {
|
|||||||
export const setDownloadEnd = createAction('download/setDownloadEnd');
|
export const setDownloadEnd = createAction('download/setDownloadEnd');
|
||||||
export const setDownloadProgress = createAction('download/setDownloadProgress');
|
export const setDownloadProgress = createAction('download/setDownloadProgress');
|
||||||
|
|
||||||
export const downloadItem = (name, type, urls) => {
|
export const downloadItem = (name, type, urls, isWinFSP) => {
|
||||||
return (dispatch, getState) => {
|
return (dispatch, getState) => {
|
||||||
if (!Array.isArray(urls)) {
|
if (!Array.isArray(urls)) {
|
||||||
urls = [urls];
|
urls = [urls];
|
||||||
@@ -35,7 +35,7 @@ export const downloadItem = (name, type, urls) => {
|
|||||||
if (result.Success) {
|
if (result.Success) {
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case Constants.INSTALL_TYPES.Dependency:
|
case Constants.INSTALL_TYPES.Dependency:
|
||||||
dispatch(installDependency(result.Destination, result.URL));
|
dispatch(installDependency(result.Destination, result.URL, isWinFSP));
|
||||||
break;
|
break;
|
||||||
case Constants.INSTALL_TYPES.Release:
|
case Constants.INSTALL_TYPES.Release:
|
||||||
dispatch(installRelease(result.Destination));
|
dispatch(installRelease(result.Destination));
|
||||||
|
|||||||
@@ -12,7 +12,9 @@ import {
|
|||||||
setReleaseUpgradeAvailable
|
setReleaseUpgradeAvailable
|
||||||
} from './release_version_actions';
|
} from './release_version_actions';
|
||||||
import {
|
import {
|
||||||
|
setAllowMount,
|
||||||
setApplicationReady,
|
setApplicationReady,
|
||||||
|
setRebootRequired,
|
||||||
showWindow,
|
showWindow,
|
||||||
shutdownApplication
|
shutdownApplication
|
||||||
} from './common_actions';
|
} from './common_actions';
|
||||||
@@ -42,6 +44,7 @@ export const checkInstalled = (dependencies, version) => {
|
|||||||
dispatch(setReleaseUpgradeAvailable(upgradeAvailable));
|
dispatch(setReleaseUpgradeAvailable(upgradeAvailable));
|
||||||
dispatch(setMissingDependencies(result.Dependencies));
|
dispatch(setMissingDependencies(result.Dependencies));
|
||||||
dispatch(setAllowDownload(true));
|
dispatch(setAllowDownload(true));
|
||||||
|
dispatch(setAllowMount(true));
|
||||||
if (result.Dependencies && (result.Dependencies.length > 0)) {
|
if (result.Dependencies && (result.Dependencies.length > 0)) {
|
||||||
dispatch(showWindow());
|
dispatch(showWindow());
|
||||||
}
|
}
|
||||||
@@ -81,7 +84,7 @@ export const checkVersionInstalled = () => {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
export const installDependency = (source, url) => {
|
export const installDependency = (source, url, isWinFSP) => {
|
||||||
return (dispatch, getState) => {
|
return (dispatch, getState) => {
|
||||||
if (ipcRenderer && !getState().install.InstallActive) {
|
if (ipcRenderer && !getState().install.InstallActive) {
|
||||||
dispatch(setInstallActive(Constants.INSTALL_TYPES.Dependency));
|
dispatch(setInstallActive(Constants.INSTALL_TYPES.Dependency));
|
||||||
@@ -89,11 +92,15 @@ export const installDependency = (source, url) => {
|
|||||||
const installDependencyComplete = (event, arg) => {
|
const installDependencyComplete = (event, arg) => {
|
||||||
const result = arg.data;
|
const result = arg.data;
|
||||||
const handleCompleted = ()=> {
|
const handleCompleted = ()=> {
|
||||||
|
if (result.RebootRequired) {
|
||||||
|
dispatch(setRebootRequired());
|
||||||
|
} else {
|
||||||
ipcRenderer.send(Constants.IPC_Delete_File, {
|
ipcRenderer.send(Constants.IPC_Delete_File, {
|
||||||
FilePath: source,
|
FilePath: source,
|
||||||
});
|
});
|
||||||
dispatch(setInstallComplete(result));
|
dispatch(setInstallComplete(result));
|
||||||
dispatch(checkVersionInstalled());
|
dispatch(checkVersionInstalled());
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
if (result.Success && source.toLowerCase().endsWith('.dmg')) {
|
if (result.Success && source.toLowerCase().endsWith('.dmg')) {
|
||||||
@@ -121,6 +128,7 @@ export const installDependency = (source, url) => {
|
|||||||
ipcRenderer.send(Constants.IPC_Install_Dependency, {
|
ipcRenderer.send(Constants.IPC_Install_Dependency, {
|
||||||
Source: source,
|
Source: source,
|
||||||
URL: url,
|
URL: url,
|
||||||
|
IsWinFSP: isWinFSP,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -183,6 +191,7 @@ export const installUpgrade = (source, sha256, signature, skipVerification) => {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export const setDismissDependencies = createAction('install/setDismissDependencies');
|
||||||
export const setInstallActive = createAction('install/setInstallActive');
|
export const setInstallActive = createAction('install/setInstallActive');
|
||||||
export const setInstallComplete = createAction('install/setInstallComplete');
|
export const setInstallComplete = createAction('install/setInstallComplete');
|
||||||
export const setMissingDependencies = createAction('install/setMissingDependencies');
|
export const setMissingDependencies = createAction('install/setMissingDependencies');
|
||||||
|
|||||||
@@ -4,9 +4,14 @@ import {createAction} from 'redux-starter-kit';
|
|||||||
import {notifyError} from './error_actions';
|
import {notifyError} from './error_actions';
|
||||||
import {
|
import {
|
||||||
saveState,
|
saveState,
|
||||||
|
setAllowMount,
|
||||||
setApplicationReady,
|
setApplicationReady,
|
||||||
showWindow
|
showWindow
|
||||||
} from './common_actions';
|
} from './common_actions';
|
||||||
|
import {
|
||||||
|
checkVersionInstalled,
|
||||||
|
setDismissDependencies
|
||||||
|
} from './install_actions';
|
||||||
import {unmountAll} from './mount_actions';
|
import {unmountAll} from './mount_actions';
|
||||||
|
|
||||||
export const CLEAR_UI_UPGRADE = 'relver/clearUIUpgrade';
|
export const CLEAR_UI_UPGRADE = 'relver/clearUIUpgrade';
|
||||||
@@ -38,9 +43,8 @@ export const detectUIUpgrade = () => {
|
|||||||
} else {
|
} else {
|
||||||
dispatch(clearUIUpgrade());
|
dispatch(clearUIUpgrade());
|
||||||
}
|
}
|
||||||
}).catch(error => {
|
}).catch(() => {
|
||||||
dispatch(clearUIUpgrade());
|
dispatch(clearUIUpgrade());
|
||||||
dispatch(notifyError(error));
|
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -61,16 +65,20 @@ export const loadReleases = () => {
|
|||||||
|
|
||||||
dispatch(setReleaseData(locationsLookup, versionLookup));
|
dispatch(setReleaseData(locationsLookup, versionLookup));
|
||||||
|
|
||||||
const dispatchActions = () => {
|
const dispatchActions = (processAllowDismiss = true) => {
|
||||||
dispatch(setReleaseUpgradeAvailable((version !== latestVersion)));
|
dispatch(setReleaseUpgradeAvailable((version !== latestVersion)));
|
||||||
dispatch(setApplicationReady(true));
|
dispatch(setApplicationReady(true));
|
||||||
dispatch(detectUIUpgrade());
|
dispatch(detectUIUpgrade());
|
||||||
|
if (processAllowDismiss) {
|
||||||
|
dispatch(setAllowDismissDependencies(versionLookup[Constants.RELEASE_TYPES[release]].length > 1));
|
||||||
|
}
|
||||||
|
dispatch(checkVersionInstalled());
|
||||||
};
|
};
|
||||||
|
|
||||||
if ((version !== state.Version) || (release !== state.Release)) {
|
if ((version !== state.Version) || (release !== state.Release)) {
|
||||||
dispatch(unmountAll(() => {
|
dispatch(unmountAll(() => {
|
||||||
dispatch(setActiveRelease(release, version));
|
dispatch(setActiveRelease(release, version));
|
||||||
dispatchActions();
|
dispatchActions(false);
|
||||||
dispatch(showWindow());
|
dispatch(showWindow());
|
||||||
dispatch(saveState());
|
dispatch(saveState());
|
||||||
}));
|
}));
|
||||||
@@ -113,17 +121,33 @@ export const loadReleases = () => {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
export const SET_ACTIVE_RELEASE = 'relver/setActiveRelease';
|
export const NOTIFY_ACTIVE_RELEASE = 'relver/notifyActiveRelease';
|
||||||
export const setActiveRelease = (release, version) => {
|
export const notifyActiveRelease = (release, version) => {
|
||||||
return {
|
return {
|
||||||
type: SET_ACTIVE_RELEASE,
|
type: NOTIFY_ACTIVE_RELEASE,
|
||||||
payload: {
|
payload: {
|
||||||
release,
|
release: release,
|
||||||
version
|
version: version
|
||||||
|
},
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
export const setActiveRelease = (release, version) => {
|
||||||
|
return (dispatch, getState) => {
|
||||||
|
dispatch(setAllowMount(false));
|
||||||
|
const relVer = getState().relver;
|
||||||
|
const common = getState().common;
|
||||||
|
const versions = relVer.VersionLookup[Constants.RELEASE_TYPES[release]];
|
||||||
|
dispatch(setAllowDismissDependencies(versions.length > 1));
|
||||||
|
dispatch(setDismissDependencies(false));
|
||||||
|
dispatch(notifyActiveRelease(release, version));
|
||||||
|
if (common.AppReady) {
|
||||||
|
dispatch(checkVersionInstalled());
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export const setAllowDismissDependencies = createAction('relver/setAllowDismissDependencies');
|
||||||
export const setDismissUIUpgrade = createAction('relver/setDismissUIUpgrade');
|
export const setDismissUIUpgrade = createAction('relver/setDismissUIUpgrade');
|
||||||
export const setInstalledVersion = createAction('relver/setInstalledVersion');
|
export const setInstalledVersion = createAction('relver/setInstalledVersion');
|
||||||
|
|
||||||
|
|||||||
@@ -1,18 +1,36 @@
|
|||||||
import {createReducer} from 'redux-starter-kit';
|
import {createReducer} from 'redux-starter-kit';
|
||||||
import {setApplicationReady} from '../actions/common_actions';
|
import {
|
||||||
|
notifyRebootRequired,
|
||||||
|
setAllowMount,
|
||||||
|
setApplicationReady,
|
||||||
|
} from '../actions/common_actions';
|
||||||
|
|
||||||
export const createCommonReducer = (platform, appPlatform, version) => {
|
export const createCommonReducer = (platform, appPlatform, version) => {
|
||||||
return createReducer({
|
return createReducer({
|
||||||
|
AllowMount: false,
|
||||||
AppPlatform: appPlatform,
|
AppPlatform: appPlatform,
|
||||||
AppReady: false,
|
AppReady: false,
|
||||||
Platform: platform,
|
Platform: platform,
|
||||||
|
RebootRequired: false,
|
||||||
Version: version,
|
Version: version,
|
||||||
}, {
|
}, {
|
||||||
|
[setAllowMount]: (state, action) => {
|
||||||
|
return {
|
||||||
|
...state,
|
||||||
|
AllowMount: action.payload,
|
||||||
|
}
|
||||||
|
},
|
||||||
[setApplicationReady]: (state, action) => {
|
[setApplicationReady]: (state, action) => {
|
||||||
return {
|
return {
|
||||||
...state,
|
...state,
|
||||||
AppReady: action.payload,
|
AppReady: action.payload,
|
||||||
};
|
};
|
||||||
}
|
},
|
||||||
|
[notifyRebootRequired]: (state, action) => {
|
||||||
|
return {
|
||||||
|
...state,
|
||||||
|
RebootRequired: action.payload,
|
||||||
|
};
|
||||||
|
},
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
@@ -1,16 +1,24 @@
|
|||||||
import {createReducer} from 'redux-starter-kit';
|
import {createReducer} from 'redux-starter-kit';
|
||||||
import {
|
import {
|
||||||
|
setDismissDependencies,
|
||||||
setInstallActive,
|
setInstallActive,
|
||||||
setInstallComplete,
|
setInstallComplete,
|
||||||
setMissingDependencies
|
setMissingDependencies
|
||||||
} from '../actions/install_actions';
|
} from '../actions/install_actions';
|
||||||
|
|
||||||
export const installReducer = createReducer({
|
export const installReducer = createReducer({
|
||||||
|
DismissDependencies: false,
|
||||||
InstallActive: false,
|
InstallActive: false,
|
||||||
InstallResult: null,
|
InstallResult: null,
|
||||||
InstallType: null,
|
InstallType: null,
|
||||||
MissingDependencies: [],
|
MissingDependencies: [],
|
||||||
}, {
|
}, {
|
||||||
|
[setDismissDependencies]: (state, action) => {
|
||||||
|
return {
|
||||||
|
...state,
|
||||||
|
DismissDependencies: action.payload,
|
||||||
|
}
|
||||||
|
},
|
||||||
[setInstallActive]: (state, action) => {
|
[setInstallActive]: (state, action) => {
|
||||||
return {
|
return {
|
||||||
...state,
|
...state,
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ const versionLookup = Constants.RELEASE_TYPES.map(k=> {
|
|||||||
});
|
});
|
||||||
|
|
||||||
export const releaseVersionReducer = createReducer({
|
export const releaseVersionReducer = createReducer({
|
||||||
|
AllowDismissDependencies: false,
|
||||||
InstalledVersion: 'none',
|
InstalledVersion: 'none',
|
||||||
LocationsLookup: {},
|
LocationsLookup: {},
|
||||||
Release: 0,
|
Release: 0,
|
||||||
@@ -35,13 +36,19 @@ export const releaseVersionReducer = createReducer({
|
|||||||
UpgradeVersion: null,
|
UpgradeVersion: null,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
[Actions.SET_ACTIVE_RELEASE]: (state, action) => {
|
[Actions.NOTIFY_ACTIVE_RELEASE]: (state, action) => {
|
||||||
return {
|
return {
|
||||||
...state,
|
...state,
|
||||||
Release: action.payload.release,
|
Release: action.payload.release,
|
||||||
Version: action.payload.version
|
Version: action.payload.version
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
[Actions.setAllowDismissDependencies]: (state, action) => {
|
||||||
|
return {
|
||||||
|
...state,
|
||||||
|
AllowDismissDependencies: action.payload,
|
||||||
|
};
|
||||||
|
},
|
||||||
[Actions.setDismissUIUpgrade]: (state, action) => {
|
[Actions.setDismissUIUpgrade]: (state, action) => {
|
||||||
return {
|
return {
|
||||||
...state,
|
...state,
|
||||||
|
|||||||
Reference in New Issue
Block a user