diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f1aef92..5c201a7 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,37 +1,39 @@ -name: Build/release - -on: push +name: Build +on: [push, pull_request] jobs: - release: - runs-on: ${{ matrix.os }} - - strategy: - matrix: - os: [macos-latest, ubuntu-latest, windows-latest] - + build_on_linux: + runs-on: ubuntu-latest steps: - - name: Check out Git repository - uses: actions/checkout@v1 + - uses: actions/checkout@v2 + - uses: actions/setup-node@master + with: + node-version: 14 + - name: install dependencies + run: npm install + - name: build + run: npm run make - - name: Install Node.js, NPM and Yarn - uses: actions/setup-node@v1 - with: - node-version: 16 + build_on_mac: + runs-on: macos-latest + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-node@master + with: + node-version: 14 + - name: install dependencies + run: npm install + - name: build + run: npm run make - - name: Build/release Electron app - uses: samuelmeuli/action-electron-builder@v1 - with: - # GitHub token, automatically provided to the action - # (No need to define this secret in the repo settings) - github_token: ${{ secrets.github_token }} - # skip npm run build as there's no script like that - skip_build: true - # If the commit is tagged with a version (e.g. "v1.0.0"), - # release the app after building - # release: ${{ startsWith(github.ref, 'refs/tags/v') }} disabled for now as it caused problems - - name: Archive production builds - uses: actions/upload-artifact@v2 - with: - name: dist folder - path: dist/** \ No newline at end of file + build_on_win: + runs-on: windows-latest + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-node@master + with: + node-version: 14 + - name: install dependencies + run: npm install + - name: build + run: npm run make diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..7a92324 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,52 @@ +name: Release +on: + release: + types: + - created + +jobs: + + publish_on_linux: + runs-on: ubuntu-latest + permissions: write-all + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-node@master + with: + node-version: 14 + - name: install dependencies + run: npm install + - name: publish + env: + GITHUB_TOKEN: ${{ secrets.LUV }} + run: npm run publish + + publish_on_mac: + runs-on: macos-latest + permissions: write-all + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-node@master + with: + node-version: 14 + - name: install dependencies + run: npm install + - name: publish + env: + GITHUB_TOKEN: ${{ secrets.LUV }} + run: npm run publish + + publish_on_win: + runs-on: windows-latest + permissions: write-all + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-node@master + with: + node-version: 14 + - name: install dependencies + run: npm install + - name: publish + env: + GITHUB_TOKEN: ${{ secrets.LUV }} + run: npm run publish diff --git a/.gitignore b/.gitignore index a1b234f..5695e9f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,2 @@ node_modules -out/ -dist \ No newline at end of file +out/ \ No newline at end of file diff --git a/LICENSE b/LICENSE index 95230e3..1b93163 100644 --- a/LICENSE +++ b/LICENSE @@ -1,172 +1,21 @@ -Open Software License ("OSL") v. 3.0 +MIT License -This Open Software License (the "License") applies to any original work of -authorship (the "Original Work") whose owner (the "Licensor") has placed the -following licensing notice adjacent to the copyright notice for the Original -Work: +Copyright (c) 2021 smartfridge -Licensed under the Open Software License version 3.0 +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: -1) Grant of Copyright License. Licensor grants You a worldwide, royalty-free, -non-exclusive, sublicensable license, for the duration of the copyright, to do -the following: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. - a) to reproduce the Original Work in copies, either alone or as part of a - collective work; - - b) to translate, adapt, alter, transform, modify, or arrange the Original - Work, thereby creating derivative works ("Derivative Works") based upon the - Original Work; - - c) to distribute or communicate copies of the Original Work and Derivative - Works to the public, with the proviso that copies of Original Work or - Derivative Works that You distribute or communicate shall be licensed under - this Open Software License; - - d) to perform the Original Work publicly; and - - e) to display the Original Work publicly. - -2) Grant of Patent License. Licensor grants You a worldwide, royalty-free, -non-exclusive, sublicensable license, under patent claims owned or controlled -by the Licensor that are embodied in the Original Work as furnished by the -Licensor, for the duration of the patents, to make, use, sell, offer for sale, -have made, and import the Original Work and Derivative Works. - -3) Grant of Source Code License. The term "Source Code" means the preferred -form of the Original Work for making modifications to it and all available -documentation describing how to modify the Original Work. Licensor agrees to -provide a machine-readable copy of the Source Code of the Original Work along -with each copy of the Original Work that Licensor distributes. Licensor -reserves the right to satisfy this obligation by placing a machine-readable -copy of the Source Code in an information repository reasonably calculated to -permit inexpensive and convenient access by You for as long as Licensor -continues to distribute the Original Work. - -4) Exclusions From License Grant. Neither the names of Licensor, nor the names -of any contributors to the Original Work, nor any of their trademarks or -service marks, may be used to endorse or promote products derived from this -Original Work without express prior permission of the Licensor. Except as -expressly stated herein, nothing in this License grants any license to -Licensor's trademarks, copyrights, patents, trade secrets or any other -intellectual property. No patent license is granted to make, use, sell, offer -for sale, have made, or import embodiments of any patent claims other than the -licensed claims defined in Section 2. No license is granted to the trademarks -of Licensor even if such marks are included in the Original Work. Nothing in -this License shall be interpreted to prohibit Licensor from licensing under -terms different from this License any Original Work that Licensor otherwise -would have a right to license. - -5) External Deployment. The term "External Deployment" means the use, -distribution, or communication of the Original Work or Derivative Works in any -way such that the Original Work or Derivative Works may be used by anyone -other than You, whether those works are distributed or communicated to those -persons or made available as an application intended for use over a network. -As an express condition for the grants of license hereunder, You must treat -any External Deployment by You of the Original Work or a Derivative Work as a -distribution under section 1(c). - -6) Attribution Rights. You must retain, in the Source Code of any Derivative -Works that You create, all copyright, patent, or trademark notices from the -Source Code of the Original Work, as well as any notices of licensing and any -descriptive text identified therein as an "Attribution Notice." You must cause -the Source Code for any Derivative Works that You create to carry a prominent -Attribution Notice reasonably calculated to inform recipients that You have -modified the Original Work. - -7) Warranty of Provenance and Disclaimer of Warranty. Licensor warrants that -the copyright in and to the Original Work and the patent rights granted herein -by Licensor are owned by the Licensor or are sublicensed to You under the -terms of this License with the permission of the contributor(s) of those -copyrights and patent rights. Except as expressly stated in the immediately -preceding sentence, the Original Work is provided under this License on an "AS -IS" BASIS and WITHOUT WARRANTY, either express or implied, including, without -limitation, the warranties of non-infringement, merchantability or fitness for -a particular purpose. THE ENTIRE RISK AS TO THE QUALITY OF THE ORIGINAL WORK -IS WITH YOU. This DISCLAIMER OF WARRANTY constitutes an essential part of this -License. No license to the Original Work is granted by this License except -under this disclaimer. - -8) Limitation of Liability. Under no circumstances and under no legal theory, -whether in tort (including negligence), contract, or otherwise, shall the -Licensor be liable to anyone for any indirect, special, incidental, or -consequential damages of any character arising as a result of this License or -the use of the Original Work including, without limitation, damages for loss -of goodwill, work stoppage, computer failure or malfunction, or any and all -other commercial damages or losses. This limitation of liability shall not -apply to the extent applicable law prohibits such limitation. - -9) Acceptance and Termination. If, at any time, You expressly assented to this -License, that assent indicates your clear and irrevocable acceptance of this -License and all of its terms and conditions. If You distribute or communicate -copies of the Original Work or a Derivative Work, You must make a reasonable -effort under the circumstances to obtain the express assent of recipients to -the terms of this License. This License conditions your rights to undertake -the activities listed in Section 1, including your right to create Derivative -Works based upon the Original Work, and doing so without honoring these terms -and conditions is prohibited by copyright law and international treaty. -Nothing in this License is intended to affect copyright exceptions and -limitations (including "fair use" or "fair dealing"). This License shall -terminate immediately and You may no longer exercise any of the rights granted -to You by this License upon your failure to honor the conditions in Section -1(c). - -10) Termination for Patent Action. This License shall terminate automatically -and You may no longer exercise any of the rights granted to You by this -License as of the date You commence an action, including a cross-claim or -counterclaim, against Licensor or any licensee alleging that the Original Work -infringes a patent. This termination provision shall not apply for an action -alleging patent infringement by combinations of the Original Work with other -software or hardware. - -11) Jurisdiction, Venue and Governing Law. Any action or suit relating to this -License may be brought only in the courts of a jurisdiction wherein the -Licensor resides or in which Licensor conducts its primary business, and under -the laws of that jurisdiction excluding its conflict-of-law provisions. The -application of the United Nations Convention on Contracts for the -International Sale of Goods is expressly excluded. Any use of the Original -Work outside the scope of this License or after its termination shall be -subject to the requirements and penalties of copyright or patent law in the -appropriate jurisdiction. This section shall survive the termination of this -License. - -12) Attorneys' Fees. In any action to enforce the terms of this License or -seeking damages relating thereto, the prevailing party shall be entitled to -recover its costs and expenses, including, without limitation, reasonable -attorneys' fees and costs incurred in connection with such action, including -any appeal of such action. This section shall survive the termination of this -License. - -13) Miscellaneous. If any provision of this License is held to be -unenforceable, such provision shall be reformed only to the extent necessary -to make it enforceable. - -14) Definition of "You" in This License. "You" throughout this License, -whether in upper or lower case, means an individual or a legal entity -exercising rights under, and complying with all of the terms of, this License. -For legal entities, "You" includes any entity that controls, is controlled by, -or is under common control with you. For purposes of this definition, -"control" means (i) the power, direct or indirect, to cause the direction or -management of such entity, whether by contract or otherwise, or (ii) ownership -of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial -ownership of such entity. - -15) Right to Use. You may use the Original Work in all ways not otherwise -restricted or conditioned by this License or by law, and Licensor promises not -to interfere with or be responsible for such uses by You. - -16) Modification of This License. This License is Copyright © 2005 Lawrence -Rosen. Permission is granted to copy, distribute, or communicate this License -without modification. Nothing in this License permits You to modify this -License as applied to the Original Work or to Derivative Works. However, You -may modify the text of this License and copy, distribute or communicate your -modified version (the "Modified License") and apply it to other original works -of authorship subject to the following conditions: (i) You may not indicate in -any way that your Modified License is the "Open Software License" or "OSL" and -you may not use those names in the name of your Modified License; (ii) You -must replace the notice specified in the first paragraph above with the notice -"Licensed under " or with a notice of your own -that is not confusingly similar to the notice in this License; and (iii) You -may not claim that your original works are open source software unless your -Modified License has been approved by Open Source Initiative (OSI) and You -comply with its license review and certification process. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index c92e96c..3e92809 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ Alternative (npm, nodejs required): # Credits [ArmCord UI Elements and few features](https://github.com/kckarnige) [GooseMod](https://github.com/GooseMod/GooseMod) -[GooseMod Extension](https://github.com/GooseMod/extension) +[GooseMod-Chrome](https://github.com/AAGaming00/GooseMod-chrome) [update.rocks](https://www.update.rocks) [electron-discord-webapp](https://github.com/SpacingBat3/electron-discord-webapp) [custom-electron-titlebar](https://github.com/AlexTorresSk/custom-electron-titlebar) diff --git a/build.sh b/build.sh old mode 100755 new mode 100644 index ec70316..feb23a5 --- a/build.sh +++ b/build.sh @@ -1,2 +1,2 @@ -npm run package -./dist/linux-unpacked/armcord +npm i +npm run make diff --git a/build/icon.ico b/build/icon.ico deleted file mode 100644 index 5585e1c..0000000 Binary files a/build/icon.ico and /dev/null differ diff --git a/build/icon.png b/build/icon.png deleted file mode 100644 index 2e0d334..0000000 Binary files a/build/icon.png and /dev/null differ diff --git a/goosemod/CSP.js b/goosemod/CSP.js new file mode 100644 index 0000000..03dea62 --- /dev/null +++ b/goosemod/CSP.js @@ -0,0 +1,10 @@ +chrome.webRequest.onHeadersReceived.addListener((h) => { + h.responseHeaders.forEach((e, i) => { + if (e.name.toLowerCase() === 'content-security-policy') { + e.value = '' + } + }) + return {responseHeaders: h.responseHeaders} +}, {urls: ["*://*.discord.com/*"]}, +['blocking', 'responseHeaders'] +) diff --git a/goosemod/LICENSE b/goosemod/LICENSE new file mode 100644 index 0000000..7d37c87 --- /dev/null +++ b/goosemod/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2020 AAGaming00 + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/goosemod/gm.js b/goosemod/gm.js new file mode 100644 index 0000000..6c2049e --- /dev/null +++ b/goosemod/gm.js @@ -0,0 +1,5 @@ +const scr = document.createElement('script'); + +scr.src = 'https://goosemod-api.netlify.app/untethered/untetheredInject.js'; + +document.head.appendChild(scr); \ No newline at end of file diff --git a/goosemod/manifest.json b/goosemod/manifest.json new file mode 100644 index 0000000..5d71e59 --- /dev/null +++ b/goosemod/manifest.json @@ -0,0 +1,22 @@ +{ + "name": "GooseMod", + "version": "1.0", + "description": "Loads GooseMod, a discord client modification", + "background": { + "scripts": [ + "CSP.js" + ] + }, + "content_scripts": [ + { + "matches": ["*://*.discord.com/*"], + "js": ["gm.js"] + } + ], + "permissions": [ + "webRequest", + "webRequestBlocking", + "*://*.discord.com/*" + ], + "manifest_version": 2 +} \ No newline at end of file diff --git a/index.html b/index.html index 1c95244..623f28a 100644 --- a/index.html +++ b/index.html @@ -3,22 +3,8 @@ + ArmCord -