diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 37ece54..33c82de 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,4 +1,4 @@ -name: Loki Electron Wallet Build +name: Oxen Electron Wallet Build on: push: @@ -30,7 +30,7 @@ jobs: - name: Install dependencies run: npm install - - name: Download lokid binaries + - name: Download oxend binaries run: ./download-asset.sh env: OS: ${{ runner.os }} @@ -50,10 +50,10 @@ jobs: shell: bash working-directory: ./downloads - - name: Move lokid binaries + - name: Move oxend binaries run: | - find ./downloads -type f -name "lokid*" -exec cp '{}' ./bin \; - find ./downloads -type f -name "loki-wallet-rpc*" -exec cp '{}' ./bin \; + find ./downloads -type f -name "oxend*" -exec cp '{}' ./bin \; + find ./downloads -type f -name "oxen-wallet-rpc*" -exec cp '{}' ./bin \; shell: bash - name: Verify binaries diff --git a/.github/workflows/dev-bins-build.yml b/.github/workflows/dev-bins-build.yml index 2867316..5f019f8 100644 --- a/.github/workflows/dev-bins-build.yml +++ b/.github/workflows/dev-bins-build.yml @@ -1,4 +1,4 @@ -name: Loki Electron Wallet With Dev Binaries +name: Oxen Electron Wallet With Dev Binaries on: push: @@ -29,7 +29,7 @@ jobs: - name: Install dependencies run: npm install - - name: Download lokid binaries + - name: Download oxend binaries run: ./download-dev-bins.sh env: OS: ${{ runner.os }} @@ -48,10 +48,10 @@ jobs: shell: bash working-directory: ./downloads - - name: Move lokid binaries + - name: Move oxend binaries run: | - find ./downloads -type f -name "lokid*" -exec cp '{}' ./bin \; - find ./downloads -type f -name "loki-wallet-rpc*" -exec cp '{}' ./bin \; + find ./downloads -type f -name "oxend*" -exec cp '{}' ./bin \; + find ./downloads -type f -name "oxen-wallet-rpc*" -exec cp '{}' ./bin \; shell: bash - name: Verify binaries diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 0a37431..04e2c78 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,4 +1,4 @@ -name: Loki Electron Wallet Release +name: Oxen Electron Wallet Release on: push: @@ -29,7 +29,7 @@ jobs: - name: Install dependencies run: npm install - - name: Download lokid binaries + - name: Download oxend binaries run: ./download-asset.sh env: OS: ${{ runner.os }} @@ -49,10 +49,10 @@ jobs: shell: bash working-directory: ./downloads - - name: Move lokid binaries + - name: Move oxend binaries run: | - find ./downloads -type f -name "lokid*" -exec cp '{}' ./bin \; - find ./downloads -type f -name "loki-wallet-rpc*" -exec cp '{}' ./bin \; + find ./downloads -type f -name "oxend*" -exec cp '{}' ./bin \; + find ./downloads -type f -name "oxen-wallet-rpc*" -exec cp '{}' ./bin \; shell: bash - name: Verify binaries diff --git a/BUILDING.md b/BUILDING.md index e1ecbc5..6cbf76f 100644 --- a/BUILDING.md +++ b/BUILDING.md @@ -1,6 +1,6 @@ # Building -Building loki electron wallet binaries is done using github actions. Windows and linux binaries will build right out of the box but there are some extra steps needed for Mac OS +Building oxen electron wallet binaries is done using github actions. Windows and linux binaries will build right out of the box but there are some extra steps needed for Mac OS ## Mac OS diff --git a/README.md b/README.md index c926627..a75ca14 100644 --- a/README.md +++ b/README.md @@ -1,34 +1,34 @@ -# Loki Electron GUI Wallet +# Oxen Electron GUI Wallet ### Introduction -Loki is a private cryptocurrency based on Monero. Loki aims to provide a private data transmission layer using a second layer of Service Nodes. -More information on the project can be found on the [website](https://loki.network) and in the [whitepaper](https://loki.network/whitepaper). Loki is an open source project, and we encourage contributions from anyone with something to offer. +Oxen (formerly Loki) is a private cryptocurrency based on Monero. Oxen aims to provide a private data transmission layer using a second layer of Service Nodes. +More information on the project can be found on the [website](https://oxen.io) and in the [whitepaper](https://oxen.io/whitepaper). Oxen is an open source project, and we encourage contributions from anyone with something to offer.
- +
### About this project -This is the new electron GUI for Loki. It is open source and completely free to use without restrictions, anyone may create an alternative implementation of the Loki Electron GUI that uses the protocol and network in a compatible manner. +This is the new electron GUI for Oxen. It is open source and completely free to use without restrictions, anyone may create an alternative implementation of the Oxen Electron GUI that uses the protocol and network in a compatible manner. Please submit any changes as pull requests to the development branch, all changes are assessed in the development branch before being merged to master, release tags are considered stable builds for the GUI. #### Pre-requisites -- Download latest [Lokid](https://github.com/loki-project/loki/releases/latest) -- Extract the lokid binaries to a folder +- Download latest [oxend](https://github.com/oxen-project/oxen/releases/latest) +- Extract the oxend binaries to a folder #### Commands ``` nvm use 14.11.0 npm install -g @quasar/cli -git clone https://github.com/loki-project/loki-electron-gui-wallet -cd loki-electron-gui-wallet -cp path_to_lokid_binaries/lokid bin/ -cp path_to_lokid_binaries/loki-wallet-rpc bin/ +git clone https://github.com/oxen-project/oxen-electron-gui-wallet +cd oxen-electron-gui-wallet +cp path_to_oxend_binaries/oxend bin/ +cp path_to_oxend_binaries/oxen-wallet-rpc bin/ npm install ``` diff --git a/build/notarize.js b/build/notarize.js index 8323043..3aa2d67 100644 --- a/build/notarize.js +++ b/build/notarize.js @@ -22,15 +22,21 @@ exports.default = async function notarizing(context) { log("Notarizing mac application"); const appName = context.packager.appInfo.productFilename; - const { SIGNING_APPLE_ID, SIGNING_APP_PASSWORD, SIGNING_TEAM_ID } = process.env; + const { + SIGNING_APPLE_ID, + SIGNING_APP_PASSWORD, + SIGNING_TEAM_ID + } = process.env; if (isEmpty(SIGNING_APPLE_ID) || isEmpty(SIGNING_APP_PASSWORD)) { - log("SIGNING_APPLE_ID or SIGNING_APP_PASSWORD not set.\nTerminating noratization."); + log( + "SIGNING_APPLE_ID or SIGNING_APP_PASSWORD not set.\nTerminating noratization." + ); return; } const options = { - appBundleId: "com.loki-project.electron-wallet", + appBundleId: "com.oxen.electron-wallet", appPath: `${appOutDir}/${appName}.app`, appleId: SIGNING_APPLE_ID, appleIdPassword: SIGNING_APP_PASSWORD diff --git a/downloads/download-dev-bins.sh b/downloads/download-dev-bins.sh index 71e4110..828c6a9 100755 --- a/downloads/download-dev-bins.sh +++ b/downloads/download-dev-bins.sh @@ -29,4 +29,4 @@ curl -sL --fail \ -o "${RENAME}" \ "$ASSET_URL" -echo "Loki binaries downloaded" \ No newline at end of file +echo "Oxen binaries downloaded" \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 89cf488..7632445 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "loki-electron-wallet", - "version": "1.5.0", + "version": "1.5.4", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index ddb77dd..7e3486e 100644 --- a/package.json +++ b/package.json @@ -1,16 +1,16 @@ { - "name": "loki-electron-wallet", - "version": "1.5.4", - "description": "Modern GUI interface for Loki Currency", - "productName": "Loki Electron Wallet", + "name": "oxen-electron-wallet", + "version": "1.5.5", + "description": "Modern GUI interface for Oxen Currency", + "productName": "Oxen Electron Wallet", "repository": { "type": "git", "url": "https://github.com/loki-project/loki-electron-gui-wallet.git" }, - "cordovaId": "com.lokinetwork.wallet", + "cordovaId": "com.oxen.wallet", "author": { - "name": "Loki Project", - "email": "team@loki.network" + "name": "Oxen", + "email": "oxen@oxen.io" }, "private": true, "scripts": { diff --git a/public/icon.png b/public/icon.png new file mode 100644 index 0000000..43c08c4 Binary files /dev/null and b/public/icon.png differ diff --git a/public/loki.svg b/public/loki.svg deleted file mode 100644 index 423f326..0000000 --- a/public/loki.svg +++ /dev/null @@ -1,66 +0,0 @@ - - - diff --git a/public/oxen-logo.svg b/public/oxen-logo.svg new file mode 100644 index 0000000..81fb5f6 --- /dev/null +++ b/public/oxen-logo.svg @@ -0,0 +1,2885 @@ + + + + + + + + + + +]> + diff --git a/public/oxen-white.svg b/public/oxen-white.svg new file mode 100644 index 0000000..5d8ed53 --- /dev/null +++ b/public/oxen-white.svg @@ -0,0 +1,30 @@ + + + diff --git a/public/oxen.svg b/public/oxen.svg new file mode 100644 index 0000000..a6c1682 --- /dev/null +++ b/public/oxen.svg @@ -0,0 +1,2928 @@ + + + + + + + + + + +]> + diff --git a/quasar.conf.js b/quasar.conf.js index 5c0b89f..b5df5c7 100644 --- a/quasar.conf.js +++ b/quasar.conf.js @@ -156,17 +156,16 @@ module.exports = function() { builder: { // https://www.electron.build/configuration/configuration - appId: "com.loki-project.electron-wallet", - productName: "Loki Electron Wallet", - copyright: - "Copyright © 2018-2020 Loki Project, 2018 Ryo Currency Project", + appId: "com.oxen.electron-wallet", + productName: "Oxen Electron Wallet", + copyright: "Copyright © 2018-2021 Oxen, 2018 Ryo Currency Project", afterSign: "build/notarize.js", - artifactName: "loki-electron-wallet-${version}-${os}.${ext}", + artifactName: "oxen-electron-wallet-${version}-${os}.${ext}", publish: "github", linux: { target: ["AppImage", "deb"], - icon: "src-electron/icons/icon_512x512.png", + icon: "src-electron/icon.png", category: "Finance" }, @@ -184,7 +183,7 @@ module.exports = function() { }, dmg: { - background: "src-electron/build/loki-dmg.tiff", + background: "src-electron/build/oxen-dmg.tiff", sign: false }, diff --git a/src-electron/main-process/auto-updater.js b/src-electron/main-process/auto-updater.js index b6dbc34..2fb0681 100644 --- a/src-electron/main-process/auto-updater.js +++ b/src-electron/main-process/auto-updater.js @@ -21,7 +21,10 @@ async function canAutoUpdate() { // Taken from: https://github.com/electron-userland/electron-builder/blob/d4feb6d3c8b008f8b455c761d654c8088f90d8fa/packages/electron-updater/src/ElectronAppAdapter.ts#L25 const updateFile = isPackaged ? "app-update.yml" : "dev-app-update.yml"; - const basePath = isPackaged && process.resourcesPath ? process.resourcesPath : app.getAppPath(); + const basePath = + isPackaged && process.resourcesPath + ? process.resourcesPath + : app.getAppPath(); const appUpdateConfigPath = path.join(basePath, updateFile); return new Promise(resolve => { @@ -96,8 +99,8 @@ async function showUpdateDialog(mainWindow) { const options = { type: "info", buttons: ["Restart Wallet", "Later"], - title: "Loki Electron Wallet update available", - message: "There is a new version of Loki Electron Wallet available.", + title: "Oxen Electron Wallet update available", + message: "There is a new version of Oxen Electron Wallet available.", detail: "Press Restart Wallet to apply the update", defaultId: LATER_BUTTON, cancelId: RESTART_BUTTON @@ -115,7 +118,7 @@ async function showCannotUpdateDialog(mainWindow) { buttons: ["Ok"], title: "Cannot update", message: - "Loki Electron Wallet failed to update but there is a new version available. Please go to https://loki.network/ and install the new version manually." + "Oxen Electron Wallet failed to update but there is a new version available. Please go to https://oxen.io/ and install the new version manually." }; return new Promise(resolve => { diff --git a/src-electron/main-process/electron-main.js b/src-electron/main-process/electron-main.js index fbcc8ca..50762e5 100644 --- a/src-electron/main-process/electron-main.js +++ b/src-electron/main-process/electron-main.js @@ -57,7 +57,7 @@ function createWindow() { height: mainWindowState.height, minWidth: 640, minHeight: 480, - icon: require("path").join(__statics, "icon_512x512.png"), + icon: require("path").join(__statics, "icon.png"), title, webPreferences: { nodeIntegration: true, @@ -137,7 +137,7 @@ function createWindow() { mainWindow, { title: "Startup error", - message: `Loki Wallet is already open, or port ${config.port} is in use`, + message: `Oxen Wallet is already open, or port ${config.port} is in use`, type: "error", buttons: ["ok"] }, diff --git a/src-electron/main-process/menu.js b/src-electron/main-process/menu.js index 4f55ce4..f53ed11 100644 --- a/src-electron/main-process/menu.js +++ b/src-electron/main-process/menu.js @@ -33,7 +33,7 @@ let template = [ { label: "Learn More", click() { - require("electron").shell.openExternal("https://loki.network/"); + require("electron").shell.openExternal("https://oxen.io/"); } } ] @@ -42,7 +42,7 @@ let template = [ if (process.platform === "darwin") { template.unshift({ - label: "Loki Electron Wallet", + label: "Oxen Electron Wallet", submenu: [ { role: "about" }, { type: "separator" }, diff --git a/src-electron/main-process/modules/backend.js b/src-electron/main-process/modules/backend.js index 6825621..2828d05 100644 --- a/src-electron/main-process/modules/backend.js +++ b/src-electron/main-process/modules/backend.js @@ -34,16 +34,27 @@ export class Backend { } init(config) { + let configDir; + let legacyLokiConfigDir; if (os.platform() === "win32") { - this.config_dir = "C:\\ProgramData\\loki"; - this.wallet_dir = `${os.homedir()}\\Documents\\Loki`; + configDir = "C:\\ProgramData\\oxen"; + legacyLokiConfigDir = "C:\\ProgramData\\loki\\"; + this.wallet_dir = `${os.homedir()}\\Documents\\Oxen`; } else { - this.config_dir = path.join(os.homedir(), ".loki"); - this.wallet_dir = path.join(os.homedir(), "Loki"); + configDir = path.join(os.homedir(), ".oxen"); + legacyLokiConfigDir = path.join(os.homedir(), ".loki/"); + this.wallet_dir = path.join(os.homedir(), "Oxen"); } - if (!fs.existsSync(this.config_dir)) { - fs.mkdirpSync(this.config_dir); + // if the user has used loki before, just keep the same stuff + if (fs.existsSync(legacyLokiConfigDir)) { + this.config_dir = legacyLokiConfigDir; + } else { + // create the new, Oxen location + this.config_dir = configDir; + if (!fs.existsSync(configDir)) { + fs.mkdirpSync(configDir); + } } if (!fs.existsSync(path.join(this.config_dir, "gui"))) { diff --git a/src-electron/main-process/modules/daemon.js b/src-electron/main-process/modules/daemon.js index 601cd07..e09f8f4 100644 --- a/src-electron/main-process/modules/daemon.js +++ b/src-electron/main-process/modules/daemon.js @@ -29,25 +29,25 @@ export class Daemon { checkVersion() { return new Promise(resolve => { if (process.platform === "win32") { - let lokid_path = path.join(__ryo_bin, "lokid.exe"); - let lokid_version_cmd = `"${lokid_path}" --version`; - if (!fs.existsSync(lokid_path)) { + let oxend_path = path.join(__ryo_bin, "oxend.exe"); + let oxend_version_cmd = `"${oxend_path}" --version`; + if (!fs.existsSync(oxend_path)) { resolve(false); } - child_process.exec(lokid_version_cmd, (error, stdout) => { + child_process.exec(oxend_version_cmd, (error, stdout) => { if (error) { resolve(false); } resolve(stdout); }); } else { - let lokid_path = path.join(__ryo_bin, "lokid"); - let lokid_version_cmd = `"${lokid_path}" --version`; - if (!fs.existsSync(lokid_path)) { + let oxend_path = path.join(__ryo_bin, "oxend"); + let oxend_version_cmd = `"${oxend_path}" --version`; + if (!fs.existsSync(oxend_path)) { resolve(false); } child_process.exec( - lokid_version_cmd, + oxend_version_cmd, { detached: true }, (error, stdout) => { if (error) { @@ -148,7 +148,7 @@ export class Daemon { args.push("--stagenet"); } - args.push("--log-file", path.join(dirs[net_type], "logs", "lokid.log")); + args.push("--log-file", path.join(dirs[net_type], "logs", "oxend.log")); if (daemon.rpc_bind_ip !== "127.0.0.1") { args.push("--confirm-external-bind"); } @@ -173,12 +173,12 @@ export class Daemon { if (status === "closed") { if (process.platform === "win32") { this.daemonProcess = child_process.spawn( - path.join(__ryo_bin, "lokid.exe"), + path.join(__ryo_bin, "oxend.exe"), args ); } else { this.daemonProcess = child_process.spawn( - path.join(__ryo_bin, "lokid"), + path.join(__ryo_bin, "oxend"), args, { detached: true diff --git a/src-electron/main-process/modules/wallet-rpc.js b/src-electron/main-process/modules/wallet-rpc.js index 7f762a8..80ac3a9 100644 --- a/src-electron/main-process/modules/wallet-rpc.js +++ b/src-electron/main-process/modules/wallet-rpc.js @@ -137,8 +137,8 @@ export class WalletRPC { const rpcExecutable = process.platform === "win32" - ? "loki-wallet-rpc.exe" - : "loki-wallet-rpc"; + ? "oxen-wallet-rpc.exe" + : "oxen-wallet-rpc"; // eslint-disable-next-line no-undef const rpcPath = path.join(__ryo_bin, rpcExecutable); @@ -146,7 +146,7 @@ export class WalletRPC { if (!fs.existsSync(rpcPath)) { reject( new Error( - "Failed to find Loki Wallet RPC. Please make sure you anti-virus has not removed it." + "Failed to find Oxen Wallet RPC. Please make sure you anti-virus has not removed it." ) ); return; @@ -286,7 +286,7 @@ export class WalletRPC { break; case "restore_view_wallet": - // TODO: Decide if we want this for loki + // TODO: Decide if we want this for Oxen this.restoreViewWallet( params.name, params.password, diff --git a/src/components/address_book_details.vue b/src/components/address_book_details.vue index f4befeb..eb7bd55 100644 --- a/src/components/address_book_details.vue +++ b/src/components/address_book_details.vue @@ -2,7 +2,7 @@