Skip to content

input-output-hk/stakepool-management-tools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation

Stake Pool Management Tools

The purpose of these tools is to provide stake pool operators with an easy way to install, configure, test and deploy their stake pools. These applications are alpha instances of a prototype to understand user needs and are not supported per typical IOHK Testnet or Mainnet deployments (see section V. Technical Support).

SPM CLI

A command-line interface that returns read-only items to query transactions, rewards and fragments to insure reliable delegation for ADA holders.

Refer to cli-node/README.md for more details.

SPM Desktop

An Electron + React app that enables the ability to provide the same info as the CLI in a running desktop app that can be pointed to the localhost on a specific port for stake pool testing.

Refer to electron-app/README.md for more details.

System and Network Requirements

Hardware:

  • A minimum of 4 GB of RAM
  • Processor speed is not a significant factor

Network:

  • 1 GB/hour
  • A public ip4 address

Operating System:

  • Linux (2.6.18 or later)
  • BSD (NetBSD 8.x and FreeBSD 12.x)
  • macOS (10.7 Lion or later)
  • Windows 10
  • nodejs and npm need to be installed

Cardano:

  • Install RUST version called Jormungandr

License

https://github.com/input-output-hk/stakepool-management-tools is licensed under the Apache License 2.0 - a permissive license whose main conditions require preservation of copyright and license notices. Contributors provide an express grant of patent rights. Licensed works, modifications, and larger works may be distributed under different terms and without source code.

Installation

Once your Jormungandr node is running and synced up, download the right installer for your operating system. The latest releases can be found in https://github.com/input-output-hk/stakepool-management-tools/releases

Technical Support

The following are some common considerations to take into account when using the prototype applications:

You should have SUDO permissions. You should ensure that CURL, NODEJS and NPM are installed and up to date You may also need to add the packages libappindicator3-1 and libappindicator3-7 To install from the UI instead of via the Terminal, ensure the packages have the “Allow executing file as program” permission enabled (right-click, Permissions, check the box) DNS settings to download these packages must be correct. If you fail to download/update them successfully, this may be the cause.

All applications in this repository are currently working prototypes that have been created with the intent to capture user feedback. To provide input for product development, please contact the product owner.

Terms of Service Agreement

By downloading this software you agree to the terms and conditions of Input Output HK Limited here:

Terms of Service Agreement THIS TERMS OF SERVICE AGREEMENT ("Agreement") is made between Input Output HK Limited ("Company") and any person ("User") who completes the process to download, utilize, or operate any software or application created or offered by Company, including, but not limited to, the Daedalus Wallet application and the IOHK Incentivised Testnet ("Software"). Company and User are collectively referred to as the "parties."

General Terms - All Products 1.1 Effective Date.This Agreement is effective as of the date User clicks the acceptance button or accesses, uses or installs any part of the Software. User expressly agrees to be bound by all of the terms of this Agreement. If user does not agree to all of the terms of this Agreement, then User is not authorized to access, use or install any part of the Software. 1.2 User Representations. User represents and warrants to Company that: (a) User is over the age of eighteen (18) and has the power and authority to enter into and perform User's obligations under this Agreement; (b) all information provided by User to Company is truthful, accurate and complete; (c) User will comply with all laws and regulations of any applicable jurisdiction with regard to the User's access, use or installation of the Software; (d) User shall comply with all terms and conditions of this Agreement, including, without limitation, the provisions set forth at Section 1.7 (Prohibited Uses); and (e) User has provided and will provide accurate and complete information as required for access, use or installation of the Software. 1.3 Reservation of Rights. The Company retains all intellectual property rights, title, and interest in and to all of the Company's work, the Software, brands, logos, and trademarks, including but not limited to, Input Output HK Limited, IOHK, Daedalus, Daedalus Cryptocurrency Wallet, Daedalus Wallet, Daedalus App, and variations of the wording of the aforementioned brands, logos, and trademarks. User acknowledges and agrees that this Agreement conveys no title or ownership rights and User does not acquire any rights over the Company’s intellectual property law, express or implied, other than those expressly granted in this Agreement. All rights not expressly granted to User are reserved by the Company. 1.4 Grant of a License. The Software is licensed to User under the terms of the Apache License, Version 2.0 (the "License"). The Software may not be used except in compliance with the License. User may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0. User acknowledges and agrees that the Company shall not be responsible for any aspect of the information, content, or services contained in any third-party materials or on any third party sites accessible or linked to the Software and/or the Company. 1.5 Customer Obligations. User is solely responsible for providing, maintaining and ensuring compatibility with the Software, all hardware, software, electrical and other physical requirements for User's use of the Software, including, without limitation, telecommunications and internet access connections and links, web browsers or other equipment, programs and services required to access and use the Software; the security, confidentiality and integrity of all information and content that User receives, transmits through or stores on the Software; and
any authorized or unauthorized access to any account of User by any person. 1.6 Privacy. When reasonably practicable, Company will endeavor to respect User's privacy. Company will not monitor, edit, or disclose any personal information about User or User's account, including its contents or User's use of the Software, without User's prior consent unless Company has a good faith belief that such action is necessary to: (i) comply with legal process or other legal requirements of any governmental authority; (ii) protect and defend the rights or property of Company; (iii) enforce this Agreement; (iv) protect the interests of users of the Software other than User or any other person; or (v) operate or conduct maintenance and repair of Company's services or equipment, including the Software as authorized by law. User has no expectation of privacy with respect to the Internet generally. User acknowledges that IP addresses are transmitted and recorded with each message or other information User sends from the Software. 1.7 Prohibited Uses. User is solely responsible for any and all acts and omissions that occur under User's account, security information, keys or password, and User agrees not to engage in unacceptable use of the Software, which includes, without limitation, use of the Software to: (a) disseminate, store or transmit unsolicited messages, chain letters or unsolicited commercial email; (b) disseminate or transmit material that, to a reasonable person may be abusive, obscene, pornographic, defamatory, harassing, grossly offensive, vulgar, threatening or malicious; (c) disseminate, store or transmit files, graphics, software or other material that actually or potentially infringes the copyright, trademark, patent, trade secret or other intellectual property right of any person; (d) create a false identity or to otherwise attempt to mislead any person as to the identity or origin of any communication; (e) export, re-export or permit downloading of any message or content in violation of any export or import law, regulation or restriction of any applicable jurisdiction, or without all required approvals, licenses or exemptions; (f) interfere, disrupt or attempt to gain unauthorized access to other accounts on the Software or any other computer network; or (g) disseminate, store or transmit viruses, trojan horses or any other malicious code or program.
1.8 Warranties. While the Software has undergone beta testing and continues to be improved by feedback from the developers community, open-source contributors and beta-testers, the Company cannot guarantee there will not be bugs in the Software. Unless required by applicable law or agreed to in writing, the Software is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. User agrees that from time to time the Software may be inaccessible or inoperable for any reason, including, without limitation: (i) equipment malfunctions; (ii) periodic maintenance procedures or repairs which Company may undertake from time to time; or (iii) causes beyond the control of Company or which are not reasonably foreseeable by Company. User acknowledges that User's use of this Software is at User's risk and discretion.

1.9 Liability. IN NO EVENT WILL IOHK OR ITS SHAREHOLDERS, DIRECTORS, OFFICERS, EMPLOYEES, CONTRACTORS OR SERVICE PROVIDERS, BE LIABLE TO USER OR ANY THIRD PARTY FOR ANY USE, INTERRUPTION, DELAY OR INABILITY TO USE THE SOFTWARE, LOST REVENUE OR PROFITS, LOST REWARDS, DELAYS, INTERRUPTION OR LOSS OF SERVICE, BUSINESS OR GOODWILL, LOSS OR CORRUPTION OF DATA, LOSS OF CRYPTOCURRENCY LOSS RESULTING FROM SYSTEM OR SYSTEM SERVICE FAILURE, MALFUNCTION OR SHUTDOWN, FAILURE TO ACCURATELY TRANSFER, READ OR TRANSMIT INFORMATION, FAILURE TO UPDATE OR PROVIDE CORRECT INFORMATION, SYSTEM INCOMPATIBILITY OR PROVISION OF INCORRECT COMPATIBILITY INFORMATION OR BREACHES IN SYSTEM SECURITY, OR FOR ANY DIRECT, INDIRECT, CONSEQUENTIAL, INCIDENTAL, EXEMPLARY, SPECIAL OR PUNITIVE DAMAGES, WHETHER ARISING OUT OF OR IN CONNECTION WITH THIS AGREEMENT, BREACH OF CONTRACT, TORT (INCLUDING NEGLIGENCE) OR OTHERWISE, AND REGARDLESS OF WHETHER SUCH DAMAGES WERE FORESEEABLE AND WHETHER OR NOT COMPANY WAS ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. IN NO EVENT SHALL THE COMPANY OR ITS SHAREHOLDERS, DIRECTORS, OFFICERS, EMPLOYEES, AFFILIATES OR AGENTS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM OR IN ANY WAY RELATED TO USER'S ACCESS, USE OR INSTALLATION OF THE SOFTWARE. SOME JURISDICTIONS PROHIBIT THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, THUS THIS LIMITATION OF LIABILITY MAY NOT APPLY TO USER. IF USER IS DISSATISFIED WITH THE SOFTWARE, USER'S SOLE AND EXCLUSIVE REMEDY SHALL BE FOR USER TO DISCONTINUE USE OF THE SOFTWARE. 1.10 Indemnification. User agrees to indemnify, hold harmless and defend Company, its shareholders, directors, officers, employees, affiliates and agents ("Indemnified Parties") from and against any action, cause, claim, damage, debt, demand or liability, including reasonable costs and attorney's fees, asserted by any person, arising out of or relating to: (a) this Agreement; (b) User's access, use or installation of the Software, including any data or work transmitted or received by User; and (c) any unacceptable use of the Software by any person, including, without limitation, any statement, data or content made, transmitted or republished by User or any person which is prohibited as unacceptable under Section 1.7. THIS INDEMNIFICATION INCLUDES THE EXPRESS INDEMNIFICATION OF COMPANY AND ALL INDEMNIFIED PARTIES FOR ANY ALLEGED NEGLIGENCE, ALLEGED GROSS NEGLIGENCE, OR OTHER ALLEGED MISCONDUCT OF COMPANY OR ANY INDEMNIFIED PARTIES. 1.11 Taxes and Fees. All currency conversion charges, third party fees, sales, use, value-added, personal property or other tax, duty or levy of any kind, including interest and penalties thereon, whether imposed now or hereinafter by any governmental entity fees incurred by User by reason of User's access, use or installation of the Software shall be the sole responsibility of User. 1.12 Termination. This Agreement shall continue in full force so long as User engages in any access, use or installation of the Software. Company reserves the right, in its sole discretion and without notice, at any time and for any reason, to: (a) remove or disable access to all or any portion of the Software; (b) suspend User's access to or use of all or any portion of the Software; and (c) terminate this Agreement. 1.13 Amendment. Company shall have the right, at any time and without notice, to add to or modify the terms of this Agreement. Any changes to these Terms will be made available to User online. For clarity, once Company posts an updated Agreement online, the online version of such Agreement will supersede any prior versions provided to User. By continuing to access, test or use the Software, User agrees to be bound by the updated Agreement. 1.14 Severance. If any provision or part-provision of this Agreement is, or becomes invalid, illegal or unenforceable, it shall be deemed modified to the minimum extent necessary to make it valid, legal and enforceable. If such modification is not possible, the relevant provision or part-provision shall be deemed deleted. Any modification to or deletion of a provision or part-provision under this paragraph shall not affect the validity and enforceability of the rest of this Agreement. 1.15 Entire Agreement – Disclaimer of Reliance. This Agreement comprises of the General Terms which are applicable to all Users and Special Terms which are applicable to Users who download, utilize, or operate specific products or services created or offered by Company. This Agreement constitutes the entire agreement between the Parties with respect to the subject matter hereof and supersedes all prior agreements or understandings. Each Party expressly warrants and represents that it is not relying upon any statements, understandings, representations, expectations or agreements other than those expressly set forth in this Agreement. 1.16 Dispute Resolution. This Agreement is subject to binding arbitration. User agrees that any and all disputes or claims against any person arising out of or in any way related to this Agreement or the access, use or installation of the Software by User or any other person shall be subject to binding arbitration under the Rules of Arbitration of the International Chamber of Commerce by one or more arbitrators appointed in accordance with the said Rules. The location of the arbitration shall be Hong Kong. The language of the arbitration shall be English. 1.17 Language. This Agreement is made in the English language. In case of discrepancy between the English version and translations in other languages, the English version will prevail.

Special Terms - Daedalus Wallet 2.1 Product Specific Terms. The Daedalus Wallet Terms are incorporated by this reference into this Agreement. 2.2 Use. By using Daedalus, User acknowledges and agrees: (i) that the Company is not responsible for operation of the underlying protocols and that the Company makes no guarantee of their functionality, security, or availability; and (ii) that the underlying protocols are subject to sudden changes in operating rules ("forks"), and that such forks may materially affect the value, and/or function of the ada or any other cryptocurrency that User stores on Daedalus. In the event of a fork, User agrees that the Company may temporarily suspend Daedalus operations (with or without notice to User) and that the Company may, in its sole discretion, (a) configure or reconfigure its systems or (b) decide not to support (or cease supporting) the forked protocol entirely, provided, however, that User will have an opportunity to withdraw funds from Daedalus. User acknowledges and agrees that the Company assumes absolutely no responsibility whatsoever in respect of an unsupported branch of a forked protocol. 2.3 Customer Obligations. User is solely responsible for the confidentiality of User's security devices, information, keys, or passwords including safekeeping User's wallet recovery phrases, passwords, private keys, and any other codes User uses to access Daedalus or any information, ada, or other cryptocurrency unit. If User loses access to User's cryptocurrency wallet or private keys and has not separately stored a backup of User's wallet recovery phrase(s), User acknowledges and agrees that any ada or any other cryptocurrencies User has associated with that cryptocurrency wallet will become inaccessible. All transactions accepted by Cardano network are irreversible except transactions reversed by temporary forks in Cardano network. 2.4 User Wallet Recovery Phrases. User agrees that User should never share User's wallet recovery phrases (secret keys) with any natural or legal person, including the Company. Further, User acknowledges that sharing User's wallet recovery phrase may result in loss of User's ada or any other cryptocurrency, and User agrees that the Company shall not be responsible for such loss. 2.5 Liability. The Company and its shareholders, directors, officers, employees, affiliates and agents cannot guarantee transaction confirmation or the ability to retrieve User's cryptocurrency or wallet recovery phrases, private keys or passwords if User loses or forgets them. The Company shall not be responsible for such loss howsoever caused. User acknowledges and agrees that ada or any other cryptocurrency transactions facilitated by Daedalus and/or the Company may be delayed or rejected, and that the Company shall not be responsible for any associated loss arising from such delay.

Special Terms - Incentivised Testnet, Delegation and Staking 3.1 Incentivised Testnet. Company is testing and making available to Users a test rewards and incentivization mechanism which is intended to mimic the rewards and incentivization mechanism in the upcoming Shelley release (the "Incentivized Testnet"). Users may participate in the Incentivized Testnet by delegating their ada stake to their own stake pool or to a third party stake pool in exchange for a reward equivalent to a percentage of the proceeds generated by the stake pool (“Reward”). 3.2 Rewards. The amount of Rewards a User may earn from delegation depends on various factors including, but not limited to, user participation, stakepool profit margins and the volume of ada being delegated. It is possible that delegation generates no Reward for a User due to the above-mentioned factors. Rewards are earned as of the start of the 3rd epoch on the Cardano blockchain. When the Incentivized Testnet is discontinued, any Rewards earned can be transferred back to the User’s Daedalus or Yoroi wallet. 3.3 Delegation. Users may delegate their stake to one of the various stake pools of the Company or to a third party stake pool. User will have the sole right to determine the volume to be delegated to a stake pool and may increase or decrease its level of participation at any time. Any information Company shares regarding stakepools, including performance metrics and Rewards, will be for indicative purposes only and may not be accurate. Users may only delegate their stake to a stake pool if their ada is in an updated Daedalus or an updated Yoroi wallet at the time of the setup process. User does not acquire any automatic right to Rewards as a result of delegating its stake. 3.4 Company Stake-Pools. The Company will operate various stake pools which will be visible in Daedalus or the explorer tool. The cost and network and server requirements to reliably operate such stake pools shall be determined by the Company in its sole discretion. Company will communicate the percentage amount of Reward to be shared with Users through the User’s Testnet Daedalus wallet. Rewards will accrue at the end of each epoch and will automatically appear in the User’s Testnet Deadalus wallet. Company will provide a dashboard detailing the Company’s staking performance to User. 3.5 Redeeming Rewards. User acknowledges and agrees that by redeeming Rewards in the Incentivised Testnet, User redeems TEST-ADA only, and that in order to redeem actual ada, User must repeat the procedure in the mainnet, once released. User shall be responsible for payment of all applicable taxes, if any, to which the Rewards might be subject and any and all other taxes which may apply to User once Rewards are redeemed. 3.6 Tools. Company will provide Users and stake pool operators certain tools designed to estimate the amount of Rewards a User may earn on the Incentivized Testnet (“Rewards Calculator”). User understands that the Rewards Calculator is provided for illustrative purposes only and may not be accurate. Company does not promise that the Reward received will correspond to the amount indicated by the Rewards Calculator or by the stake pools. 3.7 Prohibited Use. User will not, and will not permit any other third party to use any device, software or routine to interfere with the proper function of the Incentivised Testnet. If there is a complaint or notice of violation, a User’s participation may be suspended without notice until resolved, and terminated if not resolved promptly. 3.8 Warranty. The Service are provided to User on an “as is” and “as available” basis and all warranties, express, implied, statutory or otherwise, with respect to the Service are hereby excluded. User acknowledges that the Incentivized Testnet may not operate properly and that it may contain errors, design flaws or other issues. User’s use of the Incentivized Testnet remains at User’s risk and discretion. IOHK reserves the right to restart the Incentivised Testnet and reverse all or some Rewards in the case of errors and/or malicious behaviour in the system. 3.9 Termination of the Incentivised Testnet. User understands and agrees that Company may change, withdraw, terminate access to and/or discontinue the Incentivized Testnet (or any portion thereof) at any time and in its sole discretion. User may end participation in the Incentivized Testnet at any time and any Rewards gained up to that time will still be transferred to User’s Daedalus or Yoroi mainet wallet once the Incentivized Testnet is discontinued. 3.10 Feedback. Users may provide suggestions, comments or ideas and report issues or problems related to their use of the Incentivized Testnet at any time by using any of the official feedback channels.