From a72bd37cff92dd73623b104b623e78c0aac2885a Mon Sep 17 00:00:00 2001 From: randall reichenbach Date: Fri, 12 Jun 2026 13:31:38 -0700 Subject: [PATCH 01/10] Migrate to APGL3+ license --- CHANGELOG.md | 5 + LICENSE | 583 +++++++++++++-------------- README.md | 4 + blend/__init__.py | 8 +- blend/easing.py | 8 +- blend/input_controller.py | 8 +- blend/manager.py | 8 +- blend/parameter_setter.py | 8 +- blend/snapshot.py | 8 +- blend/stop.py | 8 +- blend/types.py | 8 +- common/parameter.py | 8 +- common/token.py | 8 +- common/util.py | 8 +- emulator/bootstrap.py | 8 +- emulator/controls.py | 8 +- emulator/gfxhat_adapters.py | 8 +- emulator/hardware_base.py | 8 +- emulator/hardware_v1.py | 8 +- emulator/hardware_v2.py | 8 +- emulator/hardware_v3.py | 8 +- emulator/lcd_lcdgfx.py | 8 +- emulator/lcd_pygame.py | 8 +- emulator/mod.py | 8 +- emulator/modhandler.py | 8 +- emulator/stubs.py | 8 +- emulator/window.py | 8 +- modalapi/mod.py | 8 +- modalapi/modhandler.py | 8 +- modalapi/pedalboard.py | 8 +- modalapi/pedalboard_monitor.py | 8 +- modalapi/plugin.py | 8 +- modalapi/websocket_bridge.py | 8 +- modalapi/wifi/__init__.py | 8 +- modalapi/wifi/commands.py | 8 +- modalapi/wifi/manager.py | 8 +- modalapi/wifi/nmcli.py | 8 +- modalapi/wifi/ops.py | 8 +- modalapi/wifi/types.py | 8 +- modalapi/ws_protocol.py | 8 +- modalapistomp.py | 8 +- pistomp/analogVU.py | 8 +- pistomp/analogcontrol.py | 8 +- pistomp/analogmidicontrol.py | 8 +- pistomp/analogswitch.py | 8 +- pistomp/audiocard.py | 8 +- pistomp/audiocardfactory.py | 8 +- pistomp/audioinjector.py | 8 +- pistomp/category.py | 8 +- pistomp/config.py | 8 +- pistomp/controller.py | 8 +- pistomp/encoder.py | 8 +- pistomp/encodermidicontrol.py | 8 +- pistomp/footswitch.py | 8 +- pistomp/generichost.py | 8 +- pistomp/gpioswitch.py | 8 +- pistomp/handler.py | 8 +- pistomp/handlerfactory.py | 8 +- pistomp/hardware.py | 8 +- pistomp/hardwarefactory.py | 8 +- pistomp/hifiberry.py | 8 +- pistomp/iqaudiocodec.py | 8 +- pistomp/lcd.py | 8 +- pistomp/lcd128x64.py | 8 +- pistomp/lcd135x240.py | 8 +- pistomp/lcd320x240.py | 8 +- pistomp/lcdbase.py | 8 +- pistomp/lcdcolor.py | 8 +- pistomp/lcdgfx.py | 8 +- pistomp/lcdili9341.py | 8 +- pistomp/lcdsy7789.py | 8 +- pistomp/ledstrip.py | 8 +- pistomp/pistomp.py | 8 +- pistomp/pistompcore.py | 8 +- pistomp/pistomptre.py | 8 +- pistomp/relay.py | 8 +- pistomp/settings.py | 8 +- pistomp/switchstate.py | 8 +- pistomp/taptempo.py | 8 +- pistomp/testhost.py | 8 +- pistomp/tool.py | 8 +- setup.sh | 8 +- setup/audio/audiocard-setup.sh | 8 +- setup/mod-tweaks/mod-tweaks.sh | 8 +- setup/mod/install.sh | 8 +- setup/pedalboards/get_pedalboards.sh | 8 +- setup/pkgs/gfxhat_install.sh | 8 +- setup/pkgs/lilv_install.sh | 8 +- setup/pkgs/mod-ttymidi_install.sh | 8 +- setup/pkgs/simple_install.sh | 8 +- setup/plugins/build_extra_plugins.sh | 8 +- setup/plugins/get_plugins.sh | 8 +- setup/services/create_services.sh | 8 +- setup/services/stop_services.sh | 8 +- setup/services/wifi_check.sh | 8 +- setup/sys/config_tweaks.sh | 8 +- setup/sys/rtkernel.sh | 8 +- ui/wifi_menu.py | 8 +- uilib/__init__.py | 8 +- uilib/box.py | 8 +- uilib/builder.py | 8 +- uilib/config.py | 8 +- uilib/container.py | 8 +- uilib/dialog.py | 8 +- uilib/font_with_glyphs.py | 8 +- uilib/footswitch.py | 8 +- uilib/icon.py | 8 +- uilib/image.py | 8 +- uilib/lcd_ili9341.py | 8 +- uilib/menu.py | 8 +- uilib/misc.py | 8 +- uilib/panel.py | 8 +- uilib/parameterdialog.py | 8 +- uilib/text.py | 8 +- uilib/widget.py | 8 +- util/modify_version.sh | 8 +- util/monitor_din_midi.py | 8 +- util/pi5_eeprom_update.sh | 8 +- util/relay_toggle.py | 8 +- util/tuner_analyze.py | 8 +- 120 files changed, 864 insertions(+), 664 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5285a46fc..b9c4d5620 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,11 @@ Notable user visible changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). +## [v3.0.5] - 2026-06-12 +No functional changes relative to v3.0.4 +Prior releases did not correctly declare AGPL-3.0 licensing in accordance with included components. +This release corrects that. We have superseded prior releases accordingly. + ## [v3.0.4] - 2026-04-09 ### Added - Add GUIDE.md for developer documentation diff --git a/LICENSE b/LICENSE index f288702d2..a436e6c8e 100644 --- a/LICENSE +++ b/LICENSE @@ -1,190 +1,178 @@ - GNU GENERAL PUBLIC LICENSE - Version 3, 29 June 2007 +GNU AFFERO GENERAL PUBLIC LICENSE + Version 3, 19 November 2007 - Copyright (C) 2007 Free Software Foundation, Inc. + Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. - Preamble + Preamble - The GNU General Public License is a free, copyleft license for -software and other kinds of works. + The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. - The licenses for most software and other practical works are designed -to take away your freedom to share and change the works. By contrast, -the GNU General Public License is intended to guarantee your freedom to + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free -software for all its users. We, the Free Software Foundation, use the -GNU General Public License for most of our software; it applies also to -any other work released this way by its authors. You can apply it to -your programs, too. +software for all its users. - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. - To protect your rights, we need to prevent others from denying you -these rights or asking you to surrender the rights. Therefore, you have -certain responsibilities if you distribute copies of the software, or if -you modify it: responsibilities to respect the freedom of others. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must pass on to the recipients the same -freedoms that you received. You must make sure that they, too, receive -or can get the source code. And you must show them these terms so they -know their rights. - - Developers that use the GNU GPL protect your rights with two steps: -(1) assert copyright on the software, and (2) offer you this License -giving you legal permission to copy, distribute and/or modify it. - - For the developers' and authors' protection, the GPL clearly explains -that there is no warranty for this free software. For both users' and -authors' sake, the GPL requires that modified versions be marked as -changed, so that their problems will not be attributed erroneously to -authors of previous versions. - - Some devices are designed to deny users access to install or run -modified versions of the software inside them, although the manufacturer -can do so. This is fundamentally incompatible with the aim of -protecting users' freedom to change the software. The systematic -pattern of such abuse occurs in the area of products for individuals to -use, which is precisely where it is most unacceptable. Therefore, we -have designed this version of the GPL to prohibit the practice for those -products. If such problems arise substantially in other domains, we -stand ready to extend this provision to those domains in future versions -of the GPL, as needed to protect the freedom of users. - - Finally, every program is threatened constantly by software patents. -States should not allow patents to restrict development and use of -software on general-purpose computers, but in those that do, we wish to -avoid the special danger that patents applied to a free program could -make it effectively proprietary. To prevent this, the GPL assures that -patents cannot be used to render the program non-free. - - The precise terms and conditions for copying, distribution and + Developers that use our General Public Licenses protect your rights +with two steps: (1) assert copyright on the software, and (2) offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + + A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + + The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + + An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + + The precise terms and conditions for copying, distribution and modification follow. - TERMS AND CONDITIONS + TERMS AND CONDITIONS - 0. Definitions. + 0. Definitions. - "This License" refers to version 3 of the GNU General Public License. + "This License" refers to version 3 of the GNU Affero General Public License. - "Copyright" also means copyright-like laws that apply to other kinds of + "Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. - "The Program" refers to any copyrightable work licensed under this -License. Each licensee is addressed as "you". "Licensees" and + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. - To "modify" a work means to copy from or adapt all or part of the work + To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an -exact copy. The resulting work is called a "modified version" of the +exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. - A "covered work" means either the unmodified Program or a work based + A "covered work" means either the unmodified Program or a work based on the Program. - To "propagate" a work means to do anything with it that, without + To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a -computer or modifying a private copy. Propagation includes copying, +computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. - To "convey" a work means any kind of propagation that enables other -parties to make or receive copies. Mere interaction with a user through + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. - An interactive user interface displays "Appropriate Legal Notices" + An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the -work under this License, and how to view a copy of this License. If +work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. - 1. Source Code. + 1. Source Code. - The "source code" for a work means the preferred form of the work -for making modifications to it. "Object code" means any non-source + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source form of a work. - A "Standard Interface" means an interface that either is an official + A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. - The "System Libraries" of an executable work include anything, other + The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an -implementation is available to the public in source code form. A +implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. - The "Corresponding Source" for a work in object code form means all + The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to -control those activities. However, it does not include the work's +control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but -which are not part of the work. For example, Corresponding Source +which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. - The Corresponding Source need not include anything that users + The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. - The Corresponding Source for a work in source code form is that + The Corresponding Source for a work in source code form is that same work. - 2. Basic Permissions. + 2. Basic Permissions. - All rights granted under this License are granted for the term of + All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated -conditions are met. This License explicitly affirms your unlimited -permission to run the unmodified Program. The output from running a +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its -content, constitutes a covered work. This License acknowledges your +content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. - You may make, run and propagate covered works that you do not + You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains -in force. You may convey covered works to others for the sole purpose +in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do -not control copyright. Those thus making or running the covered works +not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. - Conveying under any other circumstances is permitted solely under -the conditions stated below. Sublicensing is not allowed; section 10 + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. - 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. - No covered work shall be deemed part of an effective technological + No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. - When you convey a covered work, you waive any legal power to forbid + When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or @@ -192,9 +180,9 @@ modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. - 4. Conveying Verbatim Copies. + 4. Conveying Verbatim Copies. - You may convey verbatim copies of the Program's source code as you + You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any @@ -202,257 +190,257 @@ non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. - You may charge any price or no price for each copy that you convey, + You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. - 5. Conveying Modified Source Versions. + 5. Conveying Modified Source Versions. - You may convey a work based on the Program, or the modifications to + You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: - a) The work must carry prominent notices stating that you modified - it, and giving a relevant date. + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. - b) The work must carry prominent notices stating that it is - released under this License and any conditions added under section - 7. This requirement modifies the requirement in section 4 to - "keep intact all notices". + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". - c) You must license the entire work, as a whole, under this - License to anyone who comes into possession of a copy. This - License will therefore apply, along with any applicable section 7 - additional terms, to the whole of the work, and all its parts, - regardless of how they are packaged. This License gives no - permission to license the work in any other way, but it does not - invalidate such permission if you have separately received it. + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. - d) If the work has interactive user interfaces, each must display - Appropriate Legal Notices; however, if the Program has interactive - interfaces that do not display Appropriate Legal Notices, your - work need not make them do so. + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. - A compilation of a covered work with other separate and independent + A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users -beyond what the individual works permit. Inclusion of a covered work +beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. - 6. Conveying Non-Source Forms. + 6. Conveying Non-Source Forms. - You may convey a covered work in object code form under the terms + You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: - a) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by the - Corresponding Source fixed on a durable physical medium - customarily used for software interchange. - - b) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by a - written offer, valid for at least three years and valid for as - long as you offer spare parts or customer support for that product - model, to give anyone who possesses the object code either (1) a - copy of the Corresponding Source for all the software in the - product that is covered by this License, on a durable physical - medium customarily used for software interchange, for a price no - more than your reasonable cost of physically performing this - conveying of source, or (2) access to copy the - Corresponding Source from a network server at no charge. - - c) Convey individual copies of the object code with a copy of the - written offer to provide the Corresponding Source. This - alternative is allowed only occasionally and noncommercially, and - only if you received the object code with such an offer, in accord - with subsection 6b. - - d) Convey the object code by offering access from a designated - place (gratis or for a charge), and offer equivalent access to the - Corresponding Source in the same way through the same place at no - further charge. You need not require recipients to copy the - Corresponding Source along with the object code. If the place to - copy the object code is a network server, the Corresponding Source - may be on a different server (operated by you or a third party) - that supports equivalent copying facilities, provided you maintain - clear directions next to the object code saying where to find the - Corresponding Source. Regardless of what server hosts the - Corresponding Source, you remain obligated to ensure that it is - available for as long as needed to satisfy these requirements. - - e) Convey the object code using peer-to-peer transmission, provided - you inform other peers where the object code and Corresponding - Source of the work are being offered to the general public at no - charge under subsection 6d. - - A separable portion of the object code, whose source code is excluded + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. - A "User Product" is either (1) a "consumer product", which means any + A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation -into a dwelling. In determining whether a product is a consumer product, -doubtful cases shall be resolved in favor of coverage. For a particular +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user -actually uses, or expects or is expected to use, the product. A product +actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. - "Installation Information" for a User Product means any methods, + "Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from -a modified version of its Corresponding Source. The information must +a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. - If you convey an object code work under this section in, or with, or + If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied -by the Installation Information. But this requirement does not apply +by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). - The requirement to provide Installation Information does not include a + The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for -the User Product in which it has been modified or installed. Access to a +the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. - Corresponding Source conveyed, and Installation Information provided, + Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. - 7. Additional Terms. + 7. Additional Terms. - "Additional permissions" are terms that supplement the terms of this + "Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent -that they are valid under applicable law. If additional permissions +that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. - When you convey a copy of a covered work, you may at your option + When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of -it. (Additional permissions may be written to require their own -removal in certain cases when you modify the work.) You may place +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. - Notwithstanding any other provision of this License, for material you + Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: - a) Disclaiming warranty or limiting liability differently from the - terms of sections 15 and 16 of this License; or + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or - b) Requiring preservation of specified reasonable legal notices or - author attributions in that material or in the Appropriate Legal - Notices displayed by works containing it; or + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or - c) Prohibiting misrepresentation of the origin of that material, or - requiring that modified versions of such material be marked in - reasonable ways as different from the original version; or + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or - d) Limiting the use for publicity purposes of names of licensors or - authors of the material; or + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or - e) Declining to grant rights under trademark law for use of some - trade names, trademarks, or service marks; or + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or - f) Requiring indemnification of licensors and authors of that - material by anyone who conveys the material (or modified versions of - it) with contractual assumptions of liability to the recipient, for - any liability that these contractual assumptions directly impose on - those licensors and authors. + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. - All other non-permissive additional terms are considered "further -restrictions" within the meaning of section 10. If the Program as you + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further -restriction, you may remove that term. If a license document contains +restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. - If you add terms to a covered work in accord with this section, you + If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. - Additional terms, permissive or non-permissive, may be stated in the + Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. - 8. Termination. + 8. Termination. - You may not propagate or modify a covered work except as expressly -provided under this License. Any attempt otherwise to propagate or + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). - However, if you cease all violation of this License, then your + However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. - Moreover, your license from a particular copyright holder is + Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. - Termination of your rights under this section does not terminate the + Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under -this License. If your rights have been terminated and not permanently +this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. - 9. Acceptance Not Required for Having Copies. + 9. Acceptance Not Required for Having Copies. - You are not required to accept this License in order to receive or -run a copy of the Program. Ancillary propagation of a covered work + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission -to receive a copy likewise does not require acceptance. However, +to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or -modify any covered work. These actions infringe copyright if you do -not accept this License. Therefore, by modifying or propagating a +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. - 10. Automatic Licensing of Downstream Recipients. + 10. Automatic Licensing of Downstream Recipients. - Each time you convey a covered work, the recipient automatically + Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and -propagate that work, subject to this License. You are not responsible +propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. - An "entity transaction" is a transaction transferring control of an + An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an -organization, or merging organizations. If propagation of a covered +organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could @@ -460,43 +448,43 @@ give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. - You may not impose any further restrictions on the exercise of the -rights granted or affirmed under this License. For example, you may + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. - 11. Patents. + 11. Patents. - A "contributor" is a copyright holder who authorizes use under this -License of the Program or a work on which the Program is based. The + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". - A contributor's "essential patent claims" are all patent claims + A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a -consequence of further modification of the contributor version. For +consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. - Each contributor grants you a non-exclusive, worldwide, royalty-free + Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. - In the following three paragraphs, a "patent license" is any express + In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to -sue for patent infringement). To "grant" such a patent license to a +sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. - If you convey a covered work, knowingly relying on a patent license, + If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, @@ -504,13 +492,13 @@ then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent -license to downstream recipients. "Knowingly relying" means you have +license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. - If, pursuant to or in connection with a single transaction or + If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify @@ -518,10 +506,10 @@ or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. - A patent license is "discriminatory" if it does not include within + A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are -specifically granted under this License. You may not convey a covered +specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying @@ -533,73 +521,83 @@ for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. - Nothing in this License shall be construed as excluding or limiting + Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. - 12. No Surrender of Others' Freedom. + 12. No Surrender of Others' Freedom. - If conditions are imposed on you (whether by court order, agreement or + If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot convey a +excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may -not convey it at all. For example, if you agree to terms that obligate you +not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. - 13. Use with the GNU Affero General Public License. + 13. Remote Network Interaction; Use with the GNU General Public License. - Notwithstanding any other provision of this License, you have + Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + + Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed -under version 3 of the GNU Affero General Public License into a single -combined work, and to convey the resulting work. The terms of this +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, -but the special requirements of the GNU Affero General Public License, -section 13, concerning interaction through a network will apply to the -combination as such. +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. - 14. Revised Versions of this License. + 14. Revised Versions of this License. - The Free Software Foundation may publish revised and/or new versions of -the GNU General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to + The Free Software Foundation may publish revised and/or new versions of +the GNU Affero General Public License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. - Each version is given a distinguishing version number. If the -Program specifies that a certain numbered version of the GNU General + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU Affero General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software -Foundation. If the Program does not specify a version number of the -GNU General Public License, you may choose any version ever published +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published by the Free Software Foundation. - If the Program specifies that a proxy can decide which future -versions of the GNU General Public License can be used, that proxy's + If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. - Later license versions may give you additional or different -permissions. However, no additional obligations are imposed on any + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. - 15. Disclaimer of Warranty. + 15. Disclaimer of Warranty. - THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY -APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM -IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - 16. Limitation of Liability. + 16. Limitation of Liability. - IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE @@ -609,66 +607,25 @@ PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - 17. Interpretation of Sections 15 and 16. + 17. Interpretation of Sections 15 and 16. - If the disclaimer of warranty and limitation of liability provided + If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. - END OF TERMS AND CONDITIONS + END OF TERMS AND CONDITIONS - How to Apply These Terms to Your New Programs + How to Apply These Terms to Your New Programs - If you develop a new program, and you want it to be of the greatest + If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. - To do so, attach the following notices to the program. It is safest + To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. - - Copyright (C) - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . - -Also add information on how to contact you by electronic and paper mail. - - If the program does terminal interaction, make it output a short -notice like this when it starts in an interactive mode: - - Copyright (C) - This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, your program's commands -might be different; for a GUI interface, you would use an "about box". - - You should also get your employer (if you work as a programmer) or school, -if any, to sign a "copyright disclaimer" for the program, if necessary. -For more information on this, and how to apply and follow the GNU GPL, see -. - - The GNU General Public License does not permit incorporating your program -into proprietary programs. If your program is a subroutine library, you -may consider it more useful to permit linking proprietary applications with -the library. If this is what you want to do, use the GNU Lesser General -Public License instead of this License. But first, please read -. diff --git a/README.md b/README.md index bb8bd2a72..8eb388478 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ # pi-Stomp! +[![License: AGPL v3+](https://img.shields.io/badge/License-AGPL%20v3%2B-blue.svg)](https://www.gnu.org/licenses/agpl-3.0) #### pi-Stomp is a DIY high definition, multi-effects stompbox platform for guitar, bass and keyboards For more info about what it is and what it can do, go to [treefallsound.com](https://treefallsound.com) @@ -11,6 +12,9 @@ The pi-Stomp hardware requires drivers to interface with the LCD, potentiometers A pi-Stomp software service, mod-ala-pi-stomp, uses the drivers to monitor all input devices, to drive the LCD and to, among other things, send commands to mod-host for reading/writing pedalboard configuration information. +## License +This project is licensed under `AGPL-3.0-or-later`. See `LICENSE` for the full license text. + This repository includes: * the pi-Stomp hardware drivers ('pistomp' module) * the mod-ala-pi-stomp service ('modalapistomp.py' & 'modalapi' module) diff --git a/blend/__init__.py b/blend/__init__.py index c49247db1..2ed494902 100644 --- a/blend/__init__.py +++ b/blend/__init__.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """ diff --git a/blend/easing.py b/blend/easing.py index f16273fb0..9c69a77c9 100644 --- a/blend/easing.py +++ b/blend/easing.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """Easing functions that shape knob feel for blend mode.""" diff --git a/blend/input_controller.py b/blend/input_controller.py index 9581c896a..ddf78559a 100644 --- a/blend/input_controller.py +++ b/blend/input_controller.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """Analog input hijacking and control for blend mode.""" diff --git a/blend/manager.py b/blend/manager.py index dd1326f72..8d1afdff1 100644 --- a/blend/manager.py +++ b/blend/manager.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """BlendMode coordinator: lifecycle, diff-map pre-computation, input wiring.""" diff --git a/blend/parameter_setter.py b/blend/parameter_setter.py index 404fcb2a6..0c5b09e55 100644 --- a/blend/parameter_setter.py +++ b/blend/parameter_setter.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """WebSocket-based parameter setting for blend mode with MIDI de-duplication.""" diff --git a/blend/snapshot.py b/blend/snapshot.py index 0c027a699..6fdb4adec 100644 --- a/blend/snapshot.py +++ b/blend/snapshot.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """Snapshot file operations for blend mode.""" diff --git a/blend/stop.py b/blend/stop.py index c4f0fa606..469f72d0a 100644 --- a/blend/stop.py +++ b/blend/stop.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """BlendStop dataclass and segment diff-map builder.""" diff --git a/blend/types.py b/blend/types.py index 9a6e37174..530d6eb8b 100644 --- a/blend/types.py +++ b/blend/types.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """Type definitions for blend mode.""" diff --git a/common/parameter.py b/common/parameter.py index 7209c065f..473ad42bf 100644 --- a/common/parameter.py +++ b/common/parameter.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from enum import Enum diff --git a/common/token.py b/common/token.py index 2d11f24e6..1cd9ca038 100755 --- a/common/token.py +++ b/common/token.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . ACTION = 'action' diff --git a/common/util.py b/common/util.py index 1878cc4b3..891f7dffb 100755 --- a/common/util.py +++ b/common/util.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . diff --git a/emulator/bootstrap.py b/emulator/bootstrap.py index 81dd49bec..5e8db9812 100644 --- a/emulator/bootstrap.py +++ b/emulator/bootstrap.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import logging diff --git a/emulator/controls.py b/emulator/controls.py index ac0eaec9f..3c6bc1f2f 100644 --- a/emulator/controls.py +++ b/emulator/controls.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """Software-only stand-ins for the physical controls on pi-Stomp. diff --git a/emulator/gfxhat_adapters.py b/emulator/gfxhat_adapters.py index 84594c38f..a816e2c78 100644 --- a/emulator/gfxhat_adapters.py +++ b/emulator/gfxhat_adapters.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """Software stubs for the three gfxhat modules (lcd, backlight, touch). diff --git a/emulator/hardware_base.py b/emulator/hardware_base.py index 3b263fc3b..df86a4c26 100644 --- a/emulator/hardware_base.py +++ b/emulator/hardware_base.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """Shared base for all emulator Hardware subclasses. diff --git a/emulator/hardware_v1.py b/emulator/hardware_v1.py index c06c25e75..4ae622ef6 100644 --- a/emulator/hardware_v1.py +++ b/emulator/hardware_v1.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """EmulatorHardwareV1 — software-only Hardware subclass for the v1 emulator. diff --git a/emulator/hardware_v2.py b/emulator/hardware_v2.py index 1d82c7d6f..8a4190e45 100644 --- a/emulator/hardware_v2.py +++ b/emulator/hardware_v2.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """EmulatorHardwareV2 — software-only Hardware subclass for the v2 emulator. diff --git a/emulator/hardware_v3.py b/emulator/hardware_v3.py index 7b481fbab..66d37ed38 100644 --- a/emulator/hardware_v3.py +++ b/emulator/hardware_v3.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """EmulatorHardwareV3 — software-only Hardware subclass for the v3 emulator. diff --git a/emulator/lcd_lcdgfx.py b/emulator/lcd_lcdgfx.py index a125a080e..d505864d1 100644 --- a/emulator/lcd_lcdgfx.py +++ b/emulator/lcd_lcdgfx.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """Emulator LCD subclass for the v1 pi-Stomp (GFX HAT 128x64 display). diff --git a/emulator/lcd_pygame.py b/emulator/lcd_pygame.py index ef67afb09..7d0e279fe 100644 --- a/emulator/lcd_pygame.py +++ b/emulator/lcd_pygame.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import queue diff --git a/emulator/mod.py b/emulator/mod.py index 1fa030ac4..085d76986 100644 --- a/emulator/mod.py +++ b/emulator/mod.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """EmulatorMod — Mod subclass for the v1 emulator. diff --git a/emulator/modhandler.py b/emulator/modhandler.py index e87507252..bd6b1d749 100644 --- a/emulator/modhandler.py +++ b/emulator/modhandler.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """EmulatorModhandler — Modhandler subclass for the v2/v3 emulator. diff --git a/emulator/stubs.py b/emulator/stubs.py index 0677e2467..50b1321e0 100644 --- a/emulator/stubs.py +++ b/emulator/stubs.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """Hardware and system stubs shared across all emulator versions. diff --git a/emulator/window.py b/emulator/window.py index 788bb3a3a..bd52d64e7 100644 --- a/emulator/window.py +++ b/emulator/window.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """EmulatorWindow — pygame window that shows the 320×240 LCD (2× scaled) diff --git a/modalapi/mod.py b/modalapi/mod.py index 72a73b923..2e0da95f9 100755 --- a/modalapi/mod.py +++ b/modalapi/mod.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import json diff --git a/modalapi/modhandler.py b/modalapi/modhandler.py index 510f89ebb..b8b2fb18a 100755 --- a/modalapi/modhandler.py +++ b/modalapi/modhandler.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from pistomp.handler import Handler diff --git a/modalapi/pedalboard.py b/modalapi/pedalboard.py index 22f47c615..847398d2c 100755 --- a/modalapi/pedalboard.py +++ b/modalapi/pedalboard.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import json diff --git a/modalapi/pedalboard_monitor.py b/modalapi/pedalboard_monitor.py index 0487f7d82..6a1ba7ab9 100644 --- a/modalapi/pedalboard_monitor.py +++ b/modalapi/pedalboard_monitor.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """ diff --git a/modalapi/plugin.py b/modalapi/plugin.py index f13bf3c9d..b9c949bf4 100755 --- a/modalapi/plugin.py +++ b/modalapi/plugin.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have not received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from __future__ import annotations diff --git a/modalapi/websocket_bridge.py b/modalapi/websocket_bridge.py index 1dce3452e..3c490996c 100644 --- a/modalapi/websocket_bridge.py +++ b/modalapi/websocket_bridge.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """ diff --git a/modalapi/wifi/__init__.py b/modalapi/wifi/__init__.py index fe5a0e2c7..cdc0f0544 100644 --- a/modalapi/wifi/__init__.py +++ b/modalapi/wifi/__init__.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from .commands import ( diff --git a/modalapi/wifi/commands.py b/modalapi/wifi/commands.py index 55a3124f1..a7e1bf037 100644 --- a/modalapi/wifi/commands.py +++ b/modalapi/wifi/commands.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import logging diff --git a/modalapi/wifi/manager.py b/modalapi/wifi/manager.py index b587979e2..e91b3d84c 100644 --- a/modalapi/wifi/manager.py +++ b/modalapi/wifi/manager.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import logging diff --git a/modalapi/wifi/nmcli.py b/modalapi/wifi/nmcli.py index 0dbdf2224..d067cafbe 100644 --- a/modalapi/wifi/nmcli.py +++ b/modalapi/wifi/nmcli.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import subprocess diff --git a/modalapi/wifi/ops.py b/modalapi/wifi/ops.py index 557a9ad6d..31cbb981c 100644 --- a/modalapi/wifi/ops.py +++ b/modalapi/wifi/ops.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import logging diff --git a/modalapi/wifi/types.py b/modalapi/wifi/types.py index 1dac016a6..61b7407ee 100644 --- a/modalapi/wifi/types.py +++ b/modalapi/wifi/types.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from enum import Enum diff --git a/modalapi/ws_protocol.py b/modalapi/ws_protocol.py index 8be41e936..868da80be 100644 --- a/modalapi/ws_protocol.py +++ b/modalapi/ws_protocol.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """ diff --git a/modalapistomp.py b/modalapistomp.py index 421cd6cc1..51943db5c 100755 --- a/modalapistomp.py +++ b/modalapistomp.py @@ -1,18 +1,20 @@ #!/usr/bin/env python3 +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . # Configure logging BEFORE any imports to ensure it takes effect diff --git a/pistomp/analogVU.py b/pistomp/analogVU.py index 8867ef2c0..a9c227925 100755 --- a/pistomp/analogVU.py +++ b/pistomp/analogVU.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . diff --git a/pistomp/analogcontrol.py b/pistomp/analogcontrol.py index bd4a57d02..c474f4a84 100755 --- a/pistomp/analogcontrol.py +++ b/pistomp/analogcontrol.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import logging diff --git a/pistomp/analogmidicontrol.py b/pistomp/analogmidicontrol.py index 20a31cb91..ab1b8777e 100755 --- a/pistomp/analogmidicontrol.py +++ b/pistomp/analogmidicontrol.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from typing_extensions import override diff --git a/pistomp/analogswitch.py b/pistomp/analogswitch.py index 501fd6b92..36898043c 100755 --- a/pistomp/analogswitch.py +++ b/pistomp/analogswitch.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from typing_extensions import override diff --git a/pistomp/audiocard.py b/pistomp/audiocard.py index 2cc24da8c..ea3a0a640 100755 --- a/pistomp/audiocard.py +++ b/pistomp/audiocard.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import logging diff --git a/pistomp/audiocardfactory.py b/pistomp/audiocardfactory.py index 8db09080b..6ee227b07 100644 --- a/pistomp/audiocardfactory.py +++ b/pistomp/audiocardfactory.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import pistomp.audioinjector diff --git a/pistomp/audioinjector.py b/pistomp/audioinjector.py index add6ac07b..429c1ea87 100755 --- a/pistomp/audioinjector.py +++ b/pistomp/audioinjector.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import os diff --git a/pistomp/category.py b/pistomp/category.py index 9c1f3340c..b77df74ff 100644 --- a/pistomp/category.py +++ b/pistomp/category.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import logging diff --git a/pistomp/config.py b/pistomp/config.py index c0ed1f620..4c3ff1863 100644 --- a/pistomp/config.py +++ b/pistomp/config.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import logging diff --git a/pistomp/controller.py b/pistomp/controller.py index 9061613a7..f3d74ea25 100755 --- a/pistomp/controller.py +++ b/pistomp/controller.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from enum import Enum diff --git a/pistomp/encoder.py b/pistomp/encoder.py index 717c2a5bf..ed2e920c8 100755 --- a/pistomp/encoder.py +++ b/pistomp/encoder.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import threading diff --git a/pistomp/encodermidicontrol.py b/pistomp/encodermidicontrol.py index 318ef8ac2..5efd75622 100755 --- a/pistomp/encodermidicontrol.py +++ b/pistomp/encodermidicontrol.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from rtmidi.midiconstants import CONTROL_CHANGE diff --git a/pistomp/footswitch.py b/pistomp/footswitch.py index fab0e9caa..9595ece83 100755 --- a/pistomp/footswitch.py +++ b/pistomp/footswitch.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import logging diff --git a/pistomp/generichost.py b/pistomp/generichost.py index bd9dfbc56..0b7a4360a 100755 --- a/pistomp/generichost.py +++ b/pistomp/generichost.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from pistomp.handler import Handler diff --git a/pistomp/gpioswitch.py b/pistomp/gpioswitch.py index a9e41d020..ed2ba493c 100755 --- a/pistomp/gpioswitch.py +++ b/pistomp/gpioswitch.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import logging diff --git a/pistomp/handler.py b/pistomp/handler.py index 80f7a5959..b03e92f22 100755 --- a/pistomp/handler.py +++ b/pistomp/handler.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . diff --git a/pistomp/handlerfactory.py b/pistomp/handlerfactory.py index c1a75b9e5..b89cdd0b5 100644 --- a/pistomp/handlerfactory.py +++ b/pistomp/handlerfactory.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import common.token as Token diff --git a/pistomp/hardware.py b/pistomp/hardware.py index 3b921c5ab..fa385a18c 100755 --- a/pistomp/hardware.py +++ b/pistomp/hardware.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import logging diff --git a/pistomp/hardwarefactory.py b/pistomp/hardwarefactory.py index 94bda7cc3..4b512179e 100644 --- a/pistomp/hardwarefactory.py +++ b/pistomp/hardwarefactory.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import common.token as Token diff --git a/pistomp/hifiberry.py b/pistomp/hifiberry.py index 33cf9ed52..e805b5bd5 100755 --- a/pistomp/hifiberry.py +++ b/pistomp/hifiberry.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import os diff --git a/pistomp/iqaudiocodec.py b/pistomp/iqaudiocodec.py index fcb8eb50a..368aeedec 100755 --- a/pistomp/iqaudiocodec.py +++ b/pistomp/iqaudiocodec.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import os diff --git a/pistomp/lcd.py b/pistomp/lcd.py index 3072991a4..1293d402f 100755 --- a/pistomp/lcd.py +++ b/pistomp/lcd.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from abc import ABC, abstractmethod diff --git a/pistomp/lcd128x64.py b/pistomp/lcd128x64.py index c45274785..6992d2581 100755 --- a/pistomp/lcd128x64.py +++ b/pistomp/lcd128x64.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from abc import ABC, abstractmethod diff --git a/pistomp/lcd135x240.py b/pistomp/lcd135x240.py index 17ef53b7e..66e65705c 100755 --- a/pistomp/lcd135x240.py +++ b/pistomp/lcd135x240.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from abc import ABC, abstractmethod diff --git a/pistomp/lcd320x240.py b/pistomp/lcd320x240.py index ae9d898e7..68bdbc95e 100644 --- a/pistomp/lcd320x240.py +++ b/pistomp/lcd320x240.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import logging diff --git a/pistomp/lcdbase.py b/pistomp/lcdbase.py index 580307f09..4a939236b 100755 --- a/pistomp/lcdbase.py +++ b/pistomp/lcdbase.py @@ -1,17 +1,19 @@ # This file is part of pi-stomp. +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import logging diff --git a/pistomp/lcdcolor.py b/pistomp/lcdcolor.py index a59bc4884..55c69077f 100755 --- a/pistomp/lcdcolor.py +++ b/pistomp/lcdcolor.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import os diff --git a/pistomp/lcdgfx.py b/pistomp/lcdgfx.py index 95e34cb2e..80a763461 100755 --- a/pistomp/lcdgfx.py +++ b/pistomp/lcdgfx.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import common.token as Token diff --git a/pistomp/lcdili9341.py b/pistomp/lcdili9341.py index eafc83fd9..a092e5c61 100755 --- a/pistomp/lcdili9341.py +++ b/pistomp/lcdili9341.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import board diff --git a/pistomp/lcdsy7789.py b/pistomp/lcdsy7789.py index cc31fc52e..e50b41f71 100755 --- a/pistomp/lcdsy7789.py +++ b/pistomp/lcdsy7789.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from abc import ABC, abstractmethod diff --git a/pistomp/ledstrip.py b/pistomp/ledstrip.py index 8bbbb79fb..9b9ce6a5e 100644 --- a/pistomp/ledstrip.py +++ b/pistomp/ledstrip.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import logging diff --git a/pistomp/pistomp.py b/pistomp/pistomp.py index 970e42998..f8a1ac239 100755 --- a/pistomp/pistomp.py +++ b/pistomp/pistomp.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . # This subclass defines hardware specific to pi-stomp! v1 diff --git a/pistomp/pistompcore.py b/pistomp/pistompcore.py index 1f4d20bce..6511e9148 100755 --- a/pistomp/pistompcore.py +++ b/pistomp/pistompcore.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . # This subclass defines hardware specific to pi-Stomp Core diff --git a/pistomp/pistomptre.py b/pistomp/pistomptre.py index 515e0be94..ba1b63201 100755 --- a/pistomp/pistomptre.py +++ b/pistomp/pistomptre.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import logging diff --git a/pistomp/relay.py b/pistomp/relay.py index 5099e44cd..ba52fa9c0 100755 --- a/pistomp/relay.py +++ b/pistomp/relay.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import logging diff --git a/pistomp/settings.py b/pistomp/settings.py index a2d0c5057..b1df56ebe 100644 --- a/pistomp/settings.py +++ b/pistomp/settings.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import os diff --git a/pistomp/switchstate.py b/pistomp/switchstate.py index 5e1f22624..215af758e 100755 --- a/pistomp/switchstate.py +++ b/pistomp/switchstate.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from enum import Enum diff --git a/pistomp/taptempo.py b/pistomp/taptempo.py index 69ff8060d..0b9e8c3b7 100755 --- a/pistomp/taptempo.py +++ b/pistomp/taptempo.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from collections import deque diff --git a/pistomp/testhost.py b/pistomp/testhost.py index 45805649e..abe9d15fa 100644 --- a/pistomp/testhost.py +++ b/pistomp/testhost.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import time diff --git a/pistomp/tool.py b/pistomp/tool.py index fbc7a84b2..741197cd0 100755 --- a/pistomp/tool.py +++ b/pistomp/tool.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from PIL import Image diff --git a/setup.sh b/setup.sh index 3682add41..1e3b4d6c1 100755 --- a/setup.sh +++ b/setup.sh @@ -1,18 +1,20 @@ #!/bin/bash -e +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . diff --git a/setup/audio/audiocard-setup.sh b/setup/audio/audiocard-setup.sh index f3893d142..1bd4e2400 100755 --- a/setup/audio/audiocard-setup.sh +++ b/setup/audio/audiocard-setup.sh @@ -1,18 +1,20 @@ #!/bin/bash +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . # check the device tree overlay is setup correctly ... diff --git a/setup/mod-tweaks/mod-tweaks.sh b/setup/mod-tweaks/mod-tweaks.sh index 694049146..0f459decf 100755 --- a/setup/mod-tweaks/mod-tweaks.sh +++ b/setup/mod-tweaks/mod-tweaks.sh @@ -1,18 +1,20 @@ #!/bin/bash -e +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . set +e diff --git a/setup/mod/install.sh b/setup/mod/install.sh index 5b9c7d762..7e85431f1 100755 --- a/setup/mod/install.sh +++ b/setup/mod/install.sh @@ -1,18 +1,20 @@ #!/bin/bash +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . set -x diff --git a/setup/pedalboards/get_pedalboards.sh b/setup/pedalboards/get_pedalboards.sh index be1f3b5c0..5decf72c7 100755 --- a/setup/pedalboards/get_pedalboards.sh +++ b/setup/pedalboards/get_pedalboards.sh @@ -1,18 +1,20 @@ #!/bin/bash -e +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . DEST=/home/pistomp/data/.pedalboards diff --git a/setup/pkgs/gfxhat_install.sh b/setup/pkgs/gfxhat_install.sh index f0a76612e..53c351e5d 100755 --- a/setup/pkgs/gfxhat_install.sh +++ b/setup/pkgs/gfxhat_install.sh @@ -1,18 +1,20 @@ #!/bin/bash -e +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . # GFXHat LCD diff --git a/setup/pkgs/lilv_install.sh b/setup/pkgs/lilv_install.sh index 5f1bc1f01..6c3f3d0a8 100755 --- a/setup/pkgs/lilv_install.sh +++ b/setup/pkgs/lilv_install.sh @@ -1,18 +1,20 @@ #!/bin/bash -e +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . # Dependencies diff --git a/setup/pkgs/mod-ttymidi_install.sh b/setup/pkgs/mod-ttymidi_install.sh index 6d3a0e7b6..457259303 100755 --- a/setup/pkgs/mod-ttymidi_install.sh +++ b/setup/pkgs/mod-ttymidi_install.sh @@ -1,18 +1,20 @@ #!/bin/bash -e +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . pushd $(mktemp -d) && git clone https://github.com/moddevices/mod-ttymidi.git diff --git a/setup/pkgs/simple_install.sh b/setup/pkgs/simple_install.sh index ee7791955..acb5814d6 100755 --- a/setup/pkgs/simple_install.sh +++ b/setup/pkgs/simple_install.sh @@ -1,18 +1,20 @@ #!/bin/bash -e +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . # pip3 diff --git a/setup/plugins/build_extra_plugins.sh b/setup/plugins/build_extra_plugins.sh index b02acd6ca..24efaa659 100755 --- a/setup/plugins/build_extra_plugins.sh +++ b/setup/plugins/build_extra_plugins.sh @@ -1,18 +1,20 @@ #!/bin/bash -e +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . # Install libraries required for build diff --git a/setup/plugins/get_plugins.sh b/setup/plugins/get_plugins.sh index 7e11d55b4..e955db732 100755 --- a/setup/plugins/get_plugins.sh +++ b/setup/plugins/get_plugins.sh @@ -1,18 +1,20 @@ #!/bin/bash +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . set -x diff --git a/setup/services/create_services.sh b/setup/services/create_services.sh index 0cbd7a885..bde5adf7c 100755 --- a/setup/services/create_services.sh +++ b/setup/services/create_services.sh @@ -1,18 +1,20 @@ #!/bin/bash -e +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . sudo cp setup/services/*.service /usr/lib/systemd/system/ diff --git a/setup/services/stop_services.sh b/setup/services/stop_services.sh index dd4585feb..9573519c0 100755 --- a/setup/services/stop_services.sh +++ b/setup/services/stop_services.sh @@ -1,18 +1,20 @@ #!/bin/bash -e +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . sudo systemctl disable hciuart.service diff --git a/setup/services/wifi_check.sh b/setup/services/wifi_check.sh index c5cec2e28..96af478d0 100755 --- a/setup/services/wifi_check.sh +++ b/setup/services/wifi_check.sh @@ -1,18 +1,20 @@ #!/bin/bash +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . LOG="/var/log/wifi.log" diff --git a/setup/sys/config_tweaks.sh b/setup/sys/config_tweaks.sh index 068e4313e..23478bdc5 100755 --- a/setup/sys/config_tweaks.sh +++ b/setup/sys/config_tweaks.sh @@ -1,18 +1,20 @@ #!/bin/bash -e +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . set +e diff --git a/setup/sys/rtkernel.sh b/setup/sys/rtkernel.sh index d27b4a3ac..ee9b42bc0 100755 --- a/setup/sys/rtkernel.sh +++ b/setup/sys/rtkernel.sh @@ -1,18 +1,20 @@ #!/bin/bash +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . set -x diff --git a/ui/wifi_menu.py b/ui/wifi_menu.py index 8f9b06a42..e6610513a 100644 --- a/ui/wifi_menu.py +++ b/ui/wifi_menu.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from typing import TYPE_CHECKING, Callable, NotRequired, Optional, Protocol, TypedDict, cast diff --git a/uilib/__init__.py b/uilib/__init__.py index ac7f6501b..a25ed147f 100644 --- a/uilib/__init__.py +++ b/uilib/__init__.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from uilib.misc import * diff --git a/uilib/box.py b/uilib/box.py index c2cf80283..6c1c671a1 100644 --- a/uilib/box.py +++ b/uilib/box.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . # All "box" arguments here are to be instances of this class diff --git a/uilib/builder.py b/uilib/builder.py index f0f5d60f2..48909715a 100644 --- a/uilib/builder.py +++ b/uilib/builder.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import json diff --git a/uilib/config.py b/uilib/config.py index 9a44b0458..d4cc3540f 100644 --- a/uilib/config.py +++ b/uilib/config.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import json diff --git a/uilib/container.py b/uilib/container.py index 6fecdbd77..19b33bf86 100644 --- a/uilib/container.py +++ b/uilib/container.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from typing_extensions import override diff --git a/uilib/dialog.py b/uilib/dialog.py index 05f970940..8af5c97b6 100644 --- a/uilib/dialog.py +++ b/uilib/dialog.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import functools diff --git a/uilib/font_with_glyphs.py b/uilib/font_with_glyphs.py index 79967b016..e33ba253c 100644 --- a/uilib/font_with_glyphs.py +++ b/uilib/font_with_glyphs.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from functools import lru_cache diff --git a/uilib/footswitch.py b/uilib/footswitch.py index fc1c50c14..89465e704 100644 --- a/uilib/footswitch.py +++ b/uilib/footswitch.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from uilib.widget import * diff --git a/uilib/icon.py b/uilib/icon.py index 96f8c0959..cfe57e9c8 100644 --- a/uilib/icon.py +++ b/uilib/icon.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from uilib.text import * diff --git a/uilib/image.py b/uilib/image.py index eb4017806..f15481569 100644 --- a/uilib/image.py +++ b/uilib/image.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from uilib.widget import Widget diff --git a/uilib/lcd_ili9341.py b/uilib/lcd_ili9341.py index ccc04fa73..71e8c9ab2 100644 --- a/uilib/lcd_ili9341.py +++ b/uilib/lcd_ili9341.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from uilib.panel import LcdBase, Box diff --git a/uilib/menu.py b/uilib/menu.py index ac5c5dfb2..a2e106d01 100644 --- a/uilib/menu.py +++ b/uilib/menu.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from PIL.ImageFont import FreeTypeFont diff --git a/uilib/misc.py b/uilib/misc.py index 4e9ca505a..5ea8c40b3 100644 --- a/uilib/misc.py +++ b/uilib/misc.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from enum import Enum, Flag diff --git a/uilib/panel.py b/uilib/panel.py index 0265a3dc1..a81343e50 100644 --- a/uilib/panel.py +++ b/uilib/panel.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from PIL import ImageDraw, Image diff --git a/uilib/parameterdialog.py b/uilib/parameterdialog.py index 95561b15b..e5f3fe96d 100644 --- a/uilib/parameterdialog.py +++ b/uilib/parameterdialog.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from uilib.dialog import * diff --git a/uilib/text.py b/uilib/text.py index de981b73c..8ea551770 100644 --- a/uilib/text.py +++ b/uilib/text.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from math import log diff --git a/uilib/widget.py b/uilib/widget.py index dfa557cd9..def7d39b7 100644 --- a/uilib/widget.py +++ b/uilib/widget.py @@ -1,16 +1,18 @@ +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . from uilib.box import Box diff --git a/util/modify_version.sh b/util/modify_version.sh index 2e53217b5..279c82335 100755 --- a/util/modify_version.sh +++ b/util/modify_version.sh @@ -1,18 +1,20 @@ #!/bin/bash -e +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . if [ -z "$1" ] diff --git a/util/monitor_din_midi.py b/util/monitor_din_midi.py index c3e2e783c..c4b2ec645 100755 --- a/util/monitor_din_midi.py +++ b/util/monitor_din_midi.py @@ -1,18 +1,20 @@ #!/usr/bin/env python3 +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import serial diff --git a/util/pi5_eeprom_update.sh b/util/pi5_eeprom_update.sh index 7dfb5ffb6..22e1e2bd0 100644 --- a/util/pi5_eeprom_update.sh +++ b/util/pi5_eeprom_update.sh @@ -1,18 +1,20 @@ #!/bin/bash +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . # Temporary file for EEPROM configuration diff --git a/util/relay_toggle.py b/util/relay_toggle.py index 742492704..13ae38773 100755 --- a/util/relay_toggle.py +++ b/util/relay_toggle.py @@ -1,18 +1,20 @@ #!/usr/bin/env python3 +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . import sys, os diff --git a/util/tuner_analyze.py b/util/tuner_analyze.py index 57755e076..a353a762b 100755 --- a/util/tuner_analyze.py +++ b/util/tuner_analyze.py @@ -1,18 +1,20 @@ #!/usr/bin/env python3 +# SPDX-License-Identifier: AGPL-3.0-or-later +# # This file is part of pi-stomp. # # pi-stomp is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by +# it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # pi-stomp is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# GNU Affero General Public License for more details. # -# You should have received a copy of the GNU General Public License +# You should have received a copy of the GNU Affero General Public License # along with pi-stomp. If not, see . """Offline tuner analysis: drive the real TunerEngine over a recorded WAV and From 7902c2683096671bd83b970dd81772576497e0e1 Mon Sep 17 00:00:00 2001 From: randall reichenbach Date: Wed, 17 Jun 2026 18:59:57 -0700 Subject: [PATCH 02/10] v3.1.0: Add CHANGELOG entry, add third party license doc --- CHANGELOG.md | 28 + THIRD_PARTY_LICENSES.md | 1157 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 1185 insertions(+) create mode 100644 THIRD_PARTY_LICENSES.md diff --git a/CHANGELOG.md b/CHANGELOG.md index b9c4d5620..dc1e6fdb1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,34 @@ Notable user visible changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). +## [v3.1.0] +### Added +- On-device (LCD) strobe tuner with mute. defaults to longpress on footswitch C +- Sync LCD and MOD-UI using WebSocket bridge (replaces last.json polling) +- Blend mode for parameter blending between snapshots +- Optional autosync for one-time send of MIDI CCs to current analog positions +- New wifi menu with scanning, multiple saved networks and in-progress animation +- Configurable LCD SPI speed via system menu +- Unit and integration tests with test harness +- `deploy.sh` to deploy your local code to the device +- `update.sh` for git pull + uv sync on-device +- `./run_emulator.sh` for a v1/v2/v3; requires [MOD Desktop](https://mod.audio/desktop/) + +### Fixed +- Users can now enter spaces in the letter selector (used for wifi config) +- Reduced footswitch and encoder burst latency +- Fix pedalboard reload detection crash +- Fix analog endpoint clamping +- Fix WiFi open networks and hotspot switching +- Fix menu scrolling for long lists +- Various type safety and dependency fixes (pillow, numpy, pi deps) + +### Changed +- Upgrade Neural Amp Modeler plugin to version 2.0 which includes support for A2 models (and quality scaling) +- Migrate dev dependencies to dependency-groups (uv) +- Add pyright type checking, ruff linting +- Move fonts to `fonts/` directory (DejaVu) + ## [v3.0.5] - 2026-06-12 No functional changes relative to v3.0.4 Prior releases did not correctly declare AGPL-3.0 licensing in accordance with included components. diff --git a/THIRD_PARTY_LICENSES.md b/THIRD_PARTY_LICENSES.md new file mode 100644 index 000000000..1c96772d7 --- /dev/null +++ b/THIRD_PARTY_LICENSES.md @@ -0,0 +1,1157 @@ +# Third-Party Licenses + +This document lists third-party software components included in or distributed with this project's Raspberry Pi OS image and software stack, along with their respective licenses. It is provided to satisfy attribution and license-disclosure obligations for all bundled open source components. + +**This project's own code is licensed under AGPL-3.0-or-later.** Components below are run as independent system services or separate processes (communicating via IPC, D-Bus, sockets, or HTTP) rather than linked into this project's codebase, except where noted. + +## Contents + +- [Core System Components (Cloned / Built from Source)](#core-system-components-cloned--built-from-source) +- [Python Dependencies](#python-dependencies) +- [LV2 Audio Plugins](#lv2-audio-plugins) + +--- + +## Core System Components (Cloned / Built from Source) + +These are the core audio/MIDI services and supporting tools built from source and included in the system image. Each runs as an independent process or service. + +| Component | Version | License | Author / Maintainer | Source | +|---|---|---|---|---| +| amidithru | 1.0-3 | GPL v2+ | BlokasLabs | [github.com/BlokasLabs/amidithru](https://github.com/BlokasLabs/amidithru.git) | +| browsepy | 0.5 | MIT | mod-audio | [github.com/micahvdm/browsepy](https://github.com/micahvdm/browsepy.git) | +| hylia | 1.0.1 | GPL v2+ | FalkTX | [github.com/falkTX/Hylia](https://github.com/falkTX/Hylia.git) | +| jack-example-tools | Debian release 4-4 | GPL 2 | Debian Multimedia Team | [salsa.debian.org/multimedia-team/jack-example-tools](https://salsa.debian.org/multimedia-team/jack-example-tools.git) | +| jack2 | 1.9.22 | GPL 2 | jackaudio | [github.com/jackaudio/jack2](https://github.com/jackaudio/jack2.git) | +| mod-host | 0.10.6 | GPL v3+ | mod-audio | [github.com/mod-audio/mod-host](https://github.com/mod-audio/mod-host) | +| mod-midi-merger | None | ISC | mod-audio | [github.com/mod-audio/mod-midi-merger](https://github.com/mod-audio/mod-midi-merger) | +| mod-ttymidi | None | GPL | mod_audio | [github.com/moddevices/mod-ttymidi](https://github.com/moddevices/mod-ttymidi.git) | +| mod-ui | v0.99.8 | AGPL-3.0 | mod-audio | [github.com/TreeFallSound/mod-ui](https://github.com/TreeFallSound/mod-ui.git) | +| pi-gen | 2025-11-24-raspios-bookworm-arm64 | BSD-3-Clause | RPi-Distro | [github.com/RPi-Distro/pi-gen](https://github.com/RPi-Distro/pi-gen) | +| touchosc2midi | 0.0.12 | MIT | BlokasLabs | [github.com/BlokasLabs/touchosc2midi](https://github.com/BlokasLabs/touchosc2midi.git) | + +> **Note:** `mod-ui` is distributed from this project's own fork (TreeFallSound/mod-ui), tracking upstream mod-audio/mod-ui, AGPL-3.0. + +--- + +## Python Dependencies + +Python packages installed in the runtime environment, extracted via `pip-licenses`. 57 runtime packages are listed below; 24 additional packages used only for development, linting, or documentation are listed separately and are not part of the distributed runtime image. + +### Runtime Dependencies + +| Package | Version | License | Source | +|---|---|---|---| +| aggdraw | 1.3.11 | Python (MIT style) | [link](https://github.com/pytroll/aggdraw) | +| appdirs | 1.4.4 | MIT License | [link](http://github.com/ActiveState/appdirs) | +| async-timeout | 4.0.2 | Apache Software License | [link](https://github.com/aio-libs/async-timeout) | +| backports.shutil-get-terminal-size | 1.0.0 | MIT License | [link](https://github.com/chrippa/backports.shutil_get_terminal_size) | +| blinker | 1.9.0 | MIT License | [link](https://github.com/pallets-eco/blinker/) | +| browsepy | 0.5.6 | MIT License | [link](https://github.com/ergoithz/browsepy) | +| certifi | 2022.9.24, 2026.5.20 | Mozilla Public License 2.0 (MPL 2.0) | [link](https://github.com/certifi/python-certifi) | +| cffi | 2.0.0 | MIT | [link](https://cffi.readthedocs.io/en/latest/whatsnew.html) | +| chardet | 5.1.0 | GNU Lesser General Public License v2 or later (LGPLv2+) | [link](https://github.com/chardet/chardet) | +| charset-normalizer | 3.0.1 | MIT License | [link](https://github.com/Ousret/charset_normalizer) | +| click | 8.4.1 | BSD-3-Clause | [link](https://github.com/pallets/click/) | +| colorzero | 2.0 | BSD License | — | +| Cython | 3.2.5 | Apache-2.0 | [link](https://cython.org/) | +| distro | 1.8.0 | Apache Software License | [link](https://github.com/python-distro/distro) | +| filelock | 3.9.0 | The Unlicense (Unlicense) | [link](https://github.com/tox-dev/py-filelock) | +| Flask | 3.1.3 | BSD-3-Clause | [link](https://github.com/pallets/flask/) | +| gpiozero | 2.0.1 | BSD License | [link](https://gpiozero.readthedocs.io/) | +| idna | 3.3 | BSD License | [link](https://github.com/kjd/idna) | +| ifaddr | 0.1.7 | MIT License | [link](https://github.com/pydron/ifaddr) | +| itsdangerous | 2.2.0 | BSD License | [link](https://github.com/pallets/itsdangerous/) | +| JACK-Client | 0.5.5 | MIT License | [link](http://jackclient-python.readthedocs.io/) | +| Jinja2 | 3.1.6 | BSD License | [link](https://github.com/pallets/jinja/) | +| lgpio | 0.2.2.0 | unlicense.org | [link](http://abyz.me.uk/lg/py_lgpio.html) | +| MarkupSafe | 3.0.3 | BSD-3-Clause | [link](https://github.com/pallets/markupsafe/) | +| mido | 1.1.24 | MIT | [link](https://mido.readthedocs.io/) | +| mod | 0.99.8 | GPLv3 | [link](http://moddevices.com/) | +| netifaces | 0.10.5 | MIT License | [link](https://bitbucket.org/al45tair/netifaces) | +| numpy | 2.4.6 | BSD-3-Clause AND 0BSD AND MIT AND Zlib AND CC0-1.0 | [link](https://numpy.org) | +| packaging | 26.2 | Apache-2.0 OR BSD-2-Clause | [link](https://github.com/pypa/packaging) | +| pigpio | 1.78 | unlicense.org | [link](http://abyz.me.uk/rpi/pigpio/python.html) | +| Pillow | 9.4.0 | Historical Permission Notice and Disclaimer (HPND) | [link](https://python-pillow.org) | +| platformdirs | 2.6.0 | MIT License | [link](https://github.com/platformdirs/platformdirs) | +| pyaml | 26.2.1 | Public Domain | [link](https://github.com/mk-fg/pretty-yaml) | +| pycparser | 3.0 | BSD-3-Clause | [link](https://github.com/eliben/pycparser) | +| pycryptodomex | 3.11.0 | Apache Software License; BSD License; Public Domain | [link](https://www.pycryptodome.org) | +| Pygments | 2.20.0 | BSD-2-Clause | [link](https://pygments.org) | +| pyliblo | 0.10.0 | LGPL | [link](http://das.nasophon.de/pyliblo/) | +| pyserial | 3.0 | BSD License | [link](https://github.com/pyserial/pyserial) | +| pystache | 0.5.4 | MIT License | [link](http://github.com/defunkt/pystache) | +| python-apt | 2.6.0 | GNU GPL | — | +| python-config | 0.1.2 | GNU General Public License v3 (GPLv3) | [link](https://github.com/KonishchevDmitry/python-config) | +| python-rtmidi | 1.5.8 | MIT License | [link](https://github.com/SpotlightKid/python-rtmidi) | +| PyYAML | 6.0.3 | MIT License | [link](https://pyyaml.org/) | +| requests | 2.28.1, 2.34.2 | Apache Software License | [link](https://requests.readthedocs.io) | +| rpi-lgpio | 0.6 | BSD License | [link](https://rpi-lgpio.readthedocs.io/) | +| scandir | 1.10.0 | BSD License | [link](https://github.com/benhoyt/scandir) | +| six | 1.16.0 | MIT License | [link](https://github.com/benjaminp/six) | +| smbus2 | 0.4.2 | MIT License | [link](https://github.com/kplindegaard/smbus2) | +| spidev | 3.5 | MIT License | [link](http://github.com/doceme/py-spidev) | +| ssh-import-id | 5.10 | GPLv3 | [link](https://launchpad.net/ssh-import-id) | +| tornado | 4.3 | Apache Software License | [link](http://www.tornadoweb.org/) | +| touchosc2midi | 0.0.12 | MIT License | [link](https://github.com/velolala/touchosc2midi) | +| unicategories | 0.1.2 | MIT License | [link](https://gitlab.com/ergoithz/unicategories) | +| urllib3 | 1.26.12 | MIT License | [link](https://urllib3.readthedocs.io/) | +| websockets | 16.0 | BSD-3-Clause | [link](https://github.com/python-websockets/websockets) | +| Werkzeug | 3.1.8 | BSD-3-Clause | [link](https://github.com/pallets/werkzeug/) | +| zeroconf | 0.47.3 | GNU Lesser General Public License v2 (LGPLv2); Other/Proprietary License | [link](https://github.com/python-zeroconf/python-zeroconf) | + +### Development / Build / Documentation Tools (not distributed at runtime) + +
+Expand list + +| Package | Version | License | Source | +|---|---|---|---| +| alabaster | 1.0.0 | BSD License | [link](https://alabaster.readthedocs.io/) | +| babel | 2.18.0 | BSD License | [link](https://babel.pocoo.org/) | +| coverage | 7.14.0 | Apache-2.0 | [link](https://github.com/coveragepy/coveragepy) | +| distlib | 0.3.6 | Python Software Foundation License | [link](https://bitbucket.org/pypa/distlib) | +| docopt | 0.6.2 | MIT License | [link](http://docopt.org) | +| docutils | 0.22.4 | BSD License; GNU General Public License (GPL); Public Domain | [link](https://docutils.sourceforge.io) | +| flake8 | 7.3.0 | MIT License | [link](https://github.com/pycqa/flake8) | +| imagesize | 2.0.0 | MIT License | [link](https://github.com/shibukawa/imagesize_py) | +| mccabe | 0.7.0 | MIT License | [link](https://github.com/pycqa/mccabe) | +| meson | 1.5.1 | Apache Software License | [link](https://mesonbuild.com) | +| pep8 | 1.7.1 | MIT License | [link](http://pep8.readthedocs.org/) | +| pycodestyle | 2.14.0 | MIT | [link](https://pycodestyle.pycqa.org/) | +| pyflakes | 3.4.0 | MIT License | [link](https://github.com/PyCQA/pyflakes) | +| roman-numerals | 4.1.0 | 0BSD OR CC0-1.0 | [link](https://github.com/AA-Turner/roman-numerals/blob/master/CHANGES.rst) | +| snowballstemmer | 3.1.0 | BSD-3-Clause | [link](https://github.com/snowballstem/snowball) | +| Sphinx | 9.0.4 | BSD-2-Clause | [link](https://www.sphinx-doc.org/) | +| sphinxcontrib-applehelp | 2.0.0 | BSD License | [link](https://www.sphinx-doc.org/) | +| sphinxcontrib-devhelp | 2.0.0 | BSD License | [link](https://www.sphinx-doc.org/) | +| sphinxcontrib-htmlhelp | 2.1.0 | BSD License | [link](https://www.sphinx-doc.org/) | +| sphinxcontrib-jsmath | 1.0.1 | BSD License | [link](http://sphinx-doc.org/) | +| sphinxcontrib-qthelp | 2.0.0 | BSD License | [link](https://www.sphinx-doc.org/) | +| sphinxcontrib-serializinghtml | 2.0.0 | BSD License | [link](https://www.sphinx-doc.org/) | +| toml | 0.10.2 | MIT License | [link](https://github.com/uiri/toml) | +| virtualenv | 20.17.1+ds | MIT License | [link](https://virtualenv.pypa.io/) | + +
+ +--- + +## LV2 Audio Plugins + + +### Aida DSP + +| Plugin | Version | License | +|--------|---------|---------| +| AIDA-X | 1.1 | http://spdx.org/licenses/GPL-3.0-or-later.html | + +### Antanas Bruzas + +| Plugin | Version | License | +|--------|---------|---------| +| abGate | 2.0 | lgpl | + +### Artican + +| Plugin | Version | License | +|--------|---------|---------| +| The Function | 2.0 | — | +| The Pilgrim | 2.0 | — | + +### Bernhard Rusch + +| Plugin | Version | License | +|--------|---------|---------| +| Molot Lite Mono | 0.1 | gpl | + +### Bollie + +| Plugin | Version | License | +|--------|---------|---------| +| Bollie Delay | 2.6 | gpl | +| Bollie Delay XT | 0.1 | gpl | + +### brummer + +| Plugin | Version | License | +|--------|---------|---------| +| bluesbreaker | 1.0 | — | +| Neural Record | 1.3 | https://spdx.org/licenses/GPL-2.0-or-later | +| PowerAmpImpulses | 1.1 | — | +| PowerAmpTubes | 1.1 | — | +| PreAmpImpulses | 1.1 | — | +| PreAmpTubes | 1.1 | — | +| Ratatouille | 9.5 | https://spdx.org/licenses/BSD-3-Clause | +| Record-Mono | 2.2 | isc | +| Record-Mono Mini | 2.2 | isc | + +### brummer10 + +| Plugin | Version | License | +|--------|---------|---------| +| CollisionDrive | 1.3 | — | +| FatFrog | 35.7 | isc | +| Harmonic Exciter | 1.0 | — | +| LittleFly | 35.0 | isc | +| MetalTone | 1.2 | — | +| Rumor | 1.2 | — | +| VintageAC30 | 1.0 | — | + +### bx5a,romi1502 + +| Plugin | Version | License | +|--------|---------|---------| +| Mr. Freeze | 0.1 | GPL | + +### Calf Studio Gear + +| Plugin | Version | License | +|--------|---------|---------| +| Calf Gate | — | lgpl | + +### Creative Intent + +| Plugin | Version | License | +|--------|---------|---------| +| Temper | 5.0 | — | + +### Damien Zammit + +| Plugin | Version | License | +|--------|---------|---------| +| ZamAutoSat | 2.7 | GPL v2+ | +| ZaMaximX2 | 2.7 | GPL v2+ | +| ZamComp | 2.7 | GPL v2+ | +| ZamCompX2 | 2.7 | GPL v2+ | +| ZamDelay | 2.7 | GPL v2+ | +| ZamEQ2 | 2.7 | GPL v2+ | +| ZamGate | 2.7 | GPL v2+ | +| ZamGateX2 | 2.7 | GPL v2+ | +| ZamGEQ31 | 2.7 | GPL v2+ | +| ZamHeadX2 | 2.14 | GPL v2+ | +| ZamPhono | 2.14 | GPL v2+ | +| ZamTube | 2.7 | GPL v2+ | +| ZaMultiComp | 2.7 | GPL v2+ | +| ZaMultiCompX2 | 2.7 | GPL v2+ | +| ZamVerb | 2.14 | GPL v2+ | + +### Datsounds + +| Plugin | Version | License | +|--------|---------|---------| +| Obxd | 2.0 | — | + +### dcoredump, dcoredump + +| Plugin | Version | License | +|--------|---------|---------| +| Dexed | 0.2 | gpl | + +### DISTRHO + +| Plugin | Version | License | +|--------|---------|---------| +| 3 Band EQ | 2.0 | LGPL | +| 3 Band Splitter | 2.0 | LGPL | +| DIE Fluid Synth | 2.2 | gpl | +| MaBitcrush | 0.1 | ISC | +| MaFreeverb | 0.1 | ISC | +| MaGigaverb | 0.1 | ISC | +| MaPitchshift | 0.1 | ISC | +| Ping Pong Pan | 2.0 | LGPL | + +### dRowAudio + +| Plugin | Version | License | +|--------|---------|---------| +| dRowAudio Tremolo | — | — | +| dRowAudio: Distortion | — | — | +| dRowAudio: Distortion Shaper | — | — | +| dRowAudio: Flanger | — | — | +| dRowAudio: Reverb | — | — | + +### Edgar Lubicz + +| Plugin | Version | License | +|--------|---------|---------| +| [SimSam](https://gitlab.com/edwillys/simsam) | 0.1 | gpl | + +### falkTX + +| Plugin | Version | License | +|--------|---------|---------| +| AirFont320 | 2.0 | LGPL | +| Audio Capture | 0.0 | AGPL-3.0 | +| Audio Gain (Mono) | 2.0 | GPLv2+ | +| Black Pearl 4A | 2.0 | LGPL | +| Black Pearl 4B | 2.0 | LGPL | +| Black Pearl 5 | 2.0 | LGPL | +| Fluid Bass | 2.0 | LGPL | +| Fluid Brass | 2.0 | LGPL | +| Fluid Chromatic Percussion | 2.0 | LGPL | +| Fluid Drums | 2.0 | LGPL | +| Fluid Ensemble | 2.0 | LGPL | +| Fluid Ethnic | 2.0 | LGPL | +| Fluid Guitars | 2.0 | LGPL | +| Fluid Organs | 2.0 | LGPL | +| Fluid Percussion | 2.0 | LGPL | +| Fluid Pianos | 2.0 | LGPL | +| Fluid Pipes | 2.0 | LGPL | +| Fluid Reeds | 2.0 | LGPL | +| Fluid SoundFX | 2.0 | LGPL | +| Fluid Strings | 2.0 | LGPL | +| Fluid SynthFX | 2.0 | LGPL | +| Fluid SynthLeads | 2.0 | LGPL | +| Fluid SynthPads | 2.0 | LGPL | +| FluidGM | 2.0 | LGPL | +| Kars | 2.1 | ISC | +| MIDI File | 150.22 | GPL-2.0 | +| Portal Sink | — | http://spdx.org/licenses/ISC.html | +| Rubberband (Mono) | 8.2 | gpl | + +### Guitarix team + +| Plugin | Version | License | +|--------|---------|---------| +| Gx Studio Preamp Stereo | 28.3 | isc | +| GxAlembic | 28.3 | isc | +| GxAmplifier Stereo | 28.3 | isc | +| GxAmplifier-X | 28.3 | isc | +| GxAutoWah | 28.3 | isc | +| GxAxisFace | 34.0 | isc | +| GxBaJaTubeDriver | 35.0 | isc | +| GxBarkGraphicEQ | 28.3 | isc | +| GxBlueAmp | 35.0 | isc | +| GxBoobTube | 35.0 | isc | +| GxBooster | 28.3 | isc | +| GxBottleRocket | 34.0 | isc | +| GxCabinet | 28.3 | isc | +| GxChorus-Stereo | 28.3 | isc | +| GxClubDrive | 37.0 | isc | +| GxColorSoundTonebender | 28.3 | isc | +| GxCompressor | 28.3 | isc | +| GxCreamMachine | 34.0 | isc | +| GxCrybabyGCB95 | 28.3 | isc | +| GxDelay-Stereo | 28.3 | isc | +| GxDenoiser2 | 35.0 | isc | +| Gxdetune | 28.3 | isc | +| Gxdigital_delay | 28.3 | isc | +| Gxdigital_delay_st | 28.3 | isc | +| GxDistortionPlus | 36.0 | isc | +| GxDOP250 | 34.0 | isc | +| Gxduck_delay | 28.3 | isc | +| Gxduck_delay_st | 28.3 | isc | +| GxEcho-Stereo | 28.3 | isc | +| GxEpic | 35.0 | isc | +| GxEternity | 35.0 | isc | +| GxExpander | 28.3 | isc | +| GxFenderizer | 35.0 | isc | +| GxFlanger | 28.3 | isc | +| GxFuzz | 28.3 | isc | +| GxFuzzFaceFullerMod | 28.3 | isc | +| GxFuzzFaceJH-2 | 28.3 | isc | +| GxFuzzMaster | 28.3 | isc | +| GxFz1b | 34.0 | isc | +| GxFz1s | 34.0 | isc | +| GxGraphicEQ | 28.3 | isc | +| GxGuvnor | 28.3 | isc | +| GxHeathkit | 34.0 | isc | +| GxHighFrequencyBrightener | 28.3 | isc | +| GxHogsFoot | 28.3 | isc | +| GxHornet | 28.3 | isc | +| GxHotBox | 34.0 | isc | +| GxHyperion | 28.3 | isc | +| GxJCM800pre | 28.3 | isc | +| GxJCM800pre ST | 28.3 | isc | +| GxKnightFuzz | 34.0 | isc | +| GxLiquidDrive | 34.0 | isc | +| GxLuna | 35.0 | isc | +| GxMicroAmp | 34.0 | isc | +| GxMole | 28.3 | isc | +| GxMuff | 28.3 | isc | +| GxMultiBandCompressor | 28.3 | isc | +| GxMultiBandDelay | 28.3 | isc | +| GxMultiBandDistortion | 28.3 | isc | +| GxMultiBandEcho | 28.3 | isc | +| GxMultiBandReverb | 28.3 | isc | +| GxOC-2 | 28.3 | isc | +| GxOsMutantes | 28.3 | isc | +| GxOverDriver | 28.3 | isc | +| GxPhaser | 28.3 | isc | +| GxPlexi | 35.0 | isc | +| GxPushPull | 28.3 | isc | +| GxQuack | 34.0 | isc | +| GxRangemaster | 28.3 | isc | +| GxRedeye Vibro Chump | 28.3 | isc | +| GxReverb-Stereo | 28.3 | isc | +| Gxroom_simulator | 28.3 | isc | +| GxSaturator | 28.3 | isc | +| GxScreamingBird | 28.3 | isc | +| GxSD1 | 34.0 | isc | +| GxSD2Lead | 34.0 | isc | +| GxShakaTube | 35.0 | isc | +| Gxshimmizita | 28.3 | isc | +| GxSloopyBlue | 35.0 | isc | +| GxSlowGear | 34.0 | isc | +| GxSunFace | 34.0 | isc | +| GxSupersonic | 35.0 | isc | +| GxSuppaToneBender | 28.3 | isc | +| GxSustainer | 28.3 | isc | +| GxSVT | 34.0 | isc | +| Gxswitched_tremolo | 28.3 | isc | +| GxSwitchlessWah | 1.0 | isc | +| GxTiltTone | 28.3 | isc | +| GxTimRay | 35.0 | isc | +| GxToneMachine | 34.0 | isc | +| GxToneMender | 28.3 | isc | +| GxTremolo | 28.3 | isc | +| GxTubeDistortion | 35.0 | isc | +| GxTubeScreamer | 28.3 | isc | +| GxTubeTremelo | 28.3 | isc | +| GxTubeVibrato | 28.3 | isc | +| GxUltraCab | 35.0 | isc | +| GxUVox720k | 34.0 | isc | +| GxValveCaster | 38.1 | isc | +| GxVBassPreAmp | 34.0 | isc | +| GxVintageFuzzMaster | 28.4 | isc | +| GxVMK2 | 34.0 | isc | +| GxVoodooFuzz | 28.3 | isc | +| GxVoxTonebender | 28.3 | isc | +| GxWah | 28.3 | isc | +| GxWahwah | 28.3 | isc | +| GxZita_rev1-Stereo | 28.3 | isc | +| GxZoom | 34.0 | isc | +| XDarkTerror | 35.0 | isc | +| XTinyTerror | 35.0 | isc | + +### GuitarML + +| Plugin | Version | License | +|--------|---------|---------| +| TS-M1N3 | 2.1 | — | + +### Hannes Braun + +| Plugin | Version | License | +|--------|---------|---------| +| Acceleration2 | 2.0 | MIT | +| ADClip7 | 2.0 | MIT | +| Baxandall | 2.0 | MIT | +| Capacitor | 2.0 | MIT | +| Capacitor2 | 2.0 | MIT | +| Channel8 | 2.0 | MIT | +| ClipOnly | 2.0 | MIT | +| ClipOnly2 | 2.0 | MIT | +| Console7Buss | 2.0 | MIT | +| Console7Cascade | 2.0 | MIT | +| Console7Channel | 2.0 | MIT | +| Console7Crunch | 2.0 | MIT | +| DeBess | 2.0 | MIT | +| Dyno | 2.0 | MIT | +| EdIsDim | 2.0 | MIT | +| EveryTrim | 2.0 | MIT | +| Galactic | 2.0 | MIT | +| Mackity | 2.0 | MIT | +| MidSide | 2.0 | MIT | +| Mojo | 2.0 | MIT | +| MV | 2.0 | MIT | +| Nikola | 2.0 | MIT | +| PocketVerbs | 2.0 | MIT | +| Pressure5 | 2.0 | MIT | +| Sidepass | 2.0 | MIT | +| Spiral | 2.0 | MIT | +| StarChild | 2.0 | MIT | +| Vibrato | 2.0 | MIT | + +### Igor Brkic + +| Plugin | Version | License | +|--------|---------|---------| +| VocProc | — | gpl | + +### J.Velcl@seznam.cz + +| Plugin | Version | License | +|--------|---------|---------| +| WOW | 0.0 | — | + +### Janos Buttgereit + +| Plugin | Version | License | +|--------|---------|---------| +| Schrammel OJD | 8.9 | — | + +### Jatin Chowdhury + +| Plugin | Version | License | +|--------|---------|---------| +| ChowCentaur | 2.4 | — | + +### Jean Pierre Cimalando + +| Plugin | Version | License | +|--------|---------|---------| +| Rézonateur | 0.0 | http://spdx.org/licenses/BSL-1.0 | +| Rézonateur stereo | 0.0 | http://spdx.org/licenses/BSL-1.0 | +| String machine | 0.0 | http://spdx.org/licenses/GPL-2.0-or-later | +| String machine chorus | 0.0 | http://spdx.org/licenses/GPL-2.0-or-later | +| String machine stereo chorus | 0.0 | http://spdx.org/licenses/GPL-2.0-or-later | + +### Lkjb + +| Plugin | Version | License | +|--------|---------|---------| +| Luftikus | — | — | +| ReFine | 2.1 | — | + +### LSP LV2 + +| Plugin | Version | License | +|--------|---------|---------| +| LSP IR Mono | 0.2 | lgpl | + +### Luciano Dato + +| Plugin | Version | License | +|--------|---------|---------| +| Noise repellent | — | LGPL-3.0 | + +### Martin Eastwood, falkTX + +| Plugin | Version | License | +|--------|---------|---------| +| MVerb | 2.0 | GPL v3+ | + +### Matt Tytel + +| Plugin | Version | License | +|--------|---------|---------| +| Helm | — | — | + +### Mayank Sanganeria + +| Plugin | Version | License | +|--------|---------|---------| +| Granulator | 1.0 | gpl | + +### Micah John + +| Plugin | Version | License | +|--------|---------|---------| +| Amp Profiler | — | isc | + +### Michael Willis + +| Plugin | Version | License | +|--------|---------|---------| +| Dragonfly Early Reflections | 4.6 | gpl-3.0.html | +| Dragonfly Plate Reverb | 4.6 | gpl-3.0.html | +| Dragonfly Room Reverb | 4.6 | gpl-3.0.html | + +### Michael Willis and Rob vd Berg + +| Plugin | Version | License | +|--------|---------|---------| +| Dragonfly Hall Reverb | 4.6 | gpl-3.0.html | + +### Mike Oliphant + +| Plugin | Version | License | +|--------|---------|---------| +| Neural Amp Modeler | 2.0 | gpl-3-0 | + +### Milk Brewster + +| Plugin | Version | License | +|--------|---------|---------| +| MIDI Gain | — | — | + +### MOD + +| Plugin | Version | License | +|--------|---------|---------| +| Arpeggiator | 1.2 | https://spdx.org/licenses/GPL-2.0-or-later | +| Attenuverter Booster | 3.0 | GPL v2+ | +| Audio to CV | 3.0 | — | +| AudioToCV Pitch | 2.0 | http://spdx.org/licenses/GPL-3.0-or-later.html | +| Cabinet Loader | 2.0 | http://spdx.org/licenses/ISC.html | +| Control to CV | 3.0 | GPL v2+ | +| Convolution Loader | 2.0 | http://spdx.org/licenses/ISC.html | +| CV ABS | 1.0 | GPL v2+ | +| CV Clock | 3.0 | — | +| CV Gate | 1.0 | GPL v2+ | +| CV meter | 1.0 | GPL v2+ | +| CV Parameter Modulation | 1.0 | GPL v2+ | +| CV Range Divider | 3.0 | GPL v2+ | +| CV Round | 1.0 | GPL v2+ | +| CV Switchbox 1-2 | 1.0 | — | +| CV Switchbox 1-3 | 1.0 | — | +| CV Switchbox 2-1 | 1.0 | — | +| CV Switchbox 3-1 | 1.0 | — | +| IR loader cabsim | 1.0 | isc | +| Logic Operators | 2.0 | Custom | +| MIDI SwitchBox 1-2 2C | 2.0 | GPLv2+ | +| MIDI SwitchBox 1-3 | 2.0 | GPLv2+ | +| MIDI SwitchBox 2-1 | 2.0 | GPLv2+ | +| MIDI SwitchBox 2-1 2C | 2.0 | GPLv2+ | +| MIDI SwitchBox 3-1 | 2.0 | GPLv2+ | +| MIDI to CV Poly | 1.1 | — | +| Mixer | 2.0 | GPLv3.0 | +| Mixer Stereo | 2.0 | GPLv3.0 | +| Random Generator | 1.0 | GPL v2+ | +| Slew Rate Limiter | 1.0 | — | +| Switchbox 1-2 ST | 1.1 | file:///home/pistomp/.lv2/switchbox_1-2_st.lv2/GPL | +| Switchbox 2-1 | 1.1 | file:///home/pistomp/.lv2/switchbox_2-1.lv2/GPL | +| Switchbox 2-1 ST | 1.1 | file:///home/pistomp/.lv2/switchbox_2-1_st.lv2/GPL | +| Volume | 1.0 | GPL v2+ | +| Volume 2x2 | 1.0 | GPL v2+ | + +### MOD Devices + +| Plugin | Version | License | +|--------|---------|---------| +| Compressor | 1.1 | http://spdx.org/licenses/ISC.html | +| Compressor Advanced | 1.1 | http://spdx.org/licenses/ISC.html | +| Noise Gate | 1.1 | http://spdx.org/licenses/ISC.html | +| Noise Gate Advanced | 1.1 | http://spdx.org/licenses/ISC.html | +| Noise Maker - ME | 1.1 | — | + +### MOD Team + +| Plugin | Version | License | +|--------|---------|---------| +| 2Voices | 0.4 | GPL | +| BandPassFilter | 0.0 | GPL | +| C* AmpVTS - Tube amp + Tone stack | 9.24 | gpl | +| C* AutoFilter | 9.24 | gpl | +| C* CabinetIII - Idealised loudspeaker cabinet emulation | 9.24 | gpl | +| C* CabinetIV - Idealised loudspeaker cabinet emulation | 9.24 | gpl | +| C* CEO - Chief Executive Oscillator | 9.24 | gpl | +| C* ChorusI - Mono chorus/flanger | 9.24 | gpl | +| C* Click - Metronome | 9.24 | gpl | +| C* Compress - Mono compressor | 9.24 | gpl | +| C* CompressX2 - Stereo compressor | 9.24 | gpl | +| C* Eq10 - 10-band equalizer | 9.24 | gpl | +| C* Eq10X2 - 10-band equalizer | 9.24 | gpl | +| C* Fractal - Audio stream from deterministic chaos | 9.24 | gpl | +| C* Narrower - Stereo image width reduction | 9.24 | gpl | +| C* Noisegate - Attenuate noise resident in silence | 9.24 | gpl | +| C* PhaserII - Mono phaser modulated by a Lorenz fractal | 9.24 | gpl | +| C* Plate - Versatile plate reverb | 9.24 | gpl | +| C* PlateX2 - Stereo in/out Versatile plate reverb | 9.24 | gpl | +| C* Saturate | 9.24 | gpl | +| C* Scape - Stereo delay + Filters | 9.24 | gpl | +| C* Sin - Sine wave generator | 9.24 | gpl | +| C* Spice | 9.24 | gpl | +| C* SpiceX2 | 9.24 | gpl | +| C* ToneStack - Tone stack emulation | 9.24 | gpl | +| C* White - White noise generator | 9.24 | gpl | +| C* Wider - Stereo image Synthesis | 9.24 | gpl | +| Capo | 0.4 | GPL | +| CrossOver 2 | 1.0 | GPL | +| CrossOver 3 | 1.0 | GPL | +| Drop | 0.2 | GPL | +| DS1 | 0.0 | GPL | +| Gain | 1.0 | GPL | +| Gain 2x2 | 1.0 | GPL | +| Harmonizer | — | GPL | +| Harmonizer2 | — | GPL | +| HarmonizerCS | — | GPL | +| HighPassFilter | 0.0 | GPL | +| LowPassFilter | 0.0 | GPL | +| MIDI SwitchBox 1-2 | 2.0 | GPLv2+ | +| MIDI to CV mono | 3.1 | — | +| Open Big Muff | 0.0 | GPL | +| Peak To CC | 0.0 | GPLv2+ | +| SooperLooper | 0.9 | gpl | +| SooperLooper 2x2 | 0.9 | gpl | +| Super Capo | — | GPL | +| Super Whammy | — | GPL | +| Switchbox 1-2 | 1.1 | GPL | +| SwitchTrigger4 | 1.1 | GPL | +| TAP AutoPanner | 7.2 | gpl | +| TAP Chorus/Flanger | 7.2 | gpl | +| TAP DeEsser | 7.2 | gpl | +| TAP Equalizer | 7.2 | gpl | +| TAP Equalizer/BW | 7.2 | gpl | +| TAP Fractal Doubler | 7.2 | gpl | +| TAP Mono Dynamics | 7.2 | gpl | +| TAP Pink/Fractal Noise | 7.2 | gpl | +| TAP Pitch Shifter | 7.2 | gpl | +| TAP Reflector | 7.3 | gpl | +| TAP Reverberator | 7.2 | gpl | +| TAP Rotary Speaker | 7.3 | gpl | +| TAP Scaling Limiter | 7.2 | gpl | +| TAP Sigmoid Booster | 7.2 | gpl | +| TAP Stereo Dynamics | 7.2 | gpl | +| TAP Stereo Echo | 7.3 | gpl | +| TAP Tremolo | 7.3 | gpl | +| TAP Tubewarmth | 7.2 | gpl | +| TAP Vibrato | 7.2 | gpl | +| ToggleSwitch | 1.1 | GPL | + +### ndc Plugs + +| Plugin | Version | License | +|--------|---------|---------| +| Amplitude Imposer | 0.1 | MIT | +| Cycle Shifter | 0.1 | MIT | +| Soul Force | 0.1 | MIT | + +### Nedko Arnaudov + +| Plugin | Version | License | +|--------|---------|---------| +| Vocoder | — | gpl | + +### Nick Dowell + +| Plugin | Version | License | +|--------|---------|---------| +| amsynth | 1.5 | gpl | + +### OpenAV + +| Plugin | Version | License | +|--------|---------|---------| +| Sorcer | 2.0 | — | + +### Paul Ferrand + +| Plugin | Version | License | +|--------|---------|---------| +| batteur | 1.0 | https://spdx.org/licenses/ISC | + +### Pjotr Lasschuit + +| Plugin | Version | License | +|--------|---------|---------| +| [Freakclip](https://github.com/pjotrompet) | 1.2 | gpl | +| [Freaktail](https://github.com/pjotrompet) | 1.0 | gpl | +| [Prefreak](https://github.com/pjotrompet) | 0.1 | gpl | + +### Plainweave Software + +| Plugin | Version | License | +|--------|---------|---------| +| JuceOPL | 2.0 | — | + +### remaincalm.org + +| Plugin | Version | License | +|--------|---------|---------| +| avocado | 2.0 | LGPL3 | +| floaty | 2.0 | LGPL3 | +| mud | 2.0 | LGPL3 | +| paranoia | 2.0 | LGPL3 | + +### Resonant DSP + +| Plugin | Version | License | +|--------|---------|---------| +| Swanky Amp | 2.4 | — | + +### Robin Gareus + +| Plugin | Version | License | +|--------|---------|---------| +| Instrument Tuner | 0.0 | gpl | +| Level Meter | 0.0 | gpl | +| MIDI Clock Generator | 0.0 | gpl | +| MIDI Generator | 512.0 | gpl | +| MIDI Step Sequencer16x8 | 777.5 | gpl | +| MIDI Step Sequencer32x8 | 777.5 | gpl | +| MIDI Step Sequencer8x16 | 777.5 | gpl | +| MIDI Step Sequencer8x4 | 777.5 | gpl | +| MIDI Step Sequencer8x8 | 777.5 | gpl | +| MIDI Timecode (MTC) Generator | 0.0 | gpl | +| No Delay Line | 514.0 | gpl | +| setBfree DSP Tonewheel Organ | 2058.0 | gpl | +| setBfree Organ Overdrive | 2058.0 | gpl | +| setBfree Organ Reverb | 2058.0 | gpl | +| setBfree Whirl Speaker | 2058.0 | gpl | +| setBfree Whirl Speaker (Old version) | 2058.0 | gpl | +| setBfree Whirl Speaker - Extended Version | 2058.0 | gpl | +| Spectrum Analyzer | 517.21 | gpl | +| Stereo Balance Control | 1538.0 | gpl | +| Stereo X-Fade | 516.0 | gpl | +| TinyGain Mono | 770.0 | gpl | +| x42-Autotune | 2049.11 | gpl | +| x42-eq - Parametric Equalizer Mono | 1.1 | gpl | + +### Sean Bolton, falkTX + +| Plugin | Version | License | +|--------|---------|---------| +| Nekobi | 2.1 | GPL v2+ | + +### sensorium + +| Plugin | Version | License | +|--------|---------|---------| +| TheCloud | 0.1 | GPL3 | + +### SHIRO + +| Plugin | Version | License | +|--------|---------|---------| +| Harmless | 2.0 | ISC | +| Larynx | 2.0 | ISC | +| Modulay | 2.0 | ISC | +| Pitchotto | 2.0 | ISC | +| Shiroverb | 2.0 | ISC | + +### Spencer Jackson + +| Plugin | Version | License | +|--------|---------|---------| +| the infamous bent delay | 0.1 | GPL-2.0 | +| the infamous ewham | 0.1 | GPL-2.0 | +| the infamous Hip2B | 0.1 | GPL-2.0 | +| the infamous mindi | 0.1 | GPL-2.0 | +| the infamous power cut | 0.1 | GPL-2.0 | +| the infamous stuck | 0.1 | GPL-2.0 | + +### Steve Harris + +| Plugin | Version | License | +|--------|---------|---------| +| AM pitchshifter | — | gpl | +| Bode frequency shifter | — | gpl | +| Comb delay line, noninterpolating | — | gpl | +| Crossover distortion | — | gpl | +| Decimator | — | gpl | +| Gate | — | gpl | +| Glame Bandpass Analog Filter | — | gpl | +| Glame Bandpass Filter | — | gpl | +| GLAME Butterworth Lowpass | — | gpl | +| GVerb | — | gpl | +| Karaoke | — | gpl | +| Multivoice Chorus | — | gpl | +| Reverse Delay | — | gpl | +| Ringmod with LFO | — | gpl | +| SC1 | — | gpl | +| State Variable Filter | — | gpl | +| Tape Delay Simulation | — | gpl | +| Valve saturation | — | gpl | + +### TAL + +| Plugin | Version | License | +|--------|---------|---------| +| TAL-Reverb-II | — | — | + +### TAL-Togu Audio Line + +| Plugin | Version | License | +|--------|---------|---------| +| Tal-Dub-3 | — | — | +| Tal-Filter | — | — | +| Tal-Filter-2 | — | — | +| Tal-Reverb | — | — | +| Tal-Reverb-III | — | — | +| Tal-Vocoder-II | — | — | + +### tumbetoene + +| Plugin | Version | License | +|--------|---------|---------| +| Wolpertinger | 33.0 | — | + +### VeJa plugins + +| Plugin | Version | License | +|--------|---------|---------| +| Bass Cabinets | 1.0 | — | + +### VeJa Plugins + +| Plugin | Version | License | +|--------|---------|---------| +| British 1960A | 1.0 | — | +| Cabinet | 1.1 | — | +| Compressor | 1.1 | — | + +### Vitling + +| Plugin | Version | License | +|--------|---------|---------| +| Crypt | 0.3 | — | + +### ZynAddSubFX Team + +| Plugin | Version | License | +|--------|---------|---------| +| ZynAddSubFX | 7.6 | GPL v2 | +| ZynAlienWah | 7.0 | GPL v2 | +| ZynChorus | 7.0 | GPL v2 | +| ZynDistortion | 7.0 | GPL v2 | +| ZynDynamicFilter | 7.0 | GPL v2 | +| ZynEcho | 7.0 | GPL v2 | +| ZynPhaser | 7.0 | GPL v2 | +| ZynReverb | 7.0 | GPL v2 | + +### Unknown / Unattributed + +| Plugin | Version | License | +|--------|---------|---------| +| Aether | 2.1 | MIT | +| ALO | 0.9 | isc | +| AMS VCF | 1.0 | isc | +| Analogue Oscillator | — | gpl | +| Bitta | 2.0 | gpl | +| Delayorama | — | gpl | +| DIE Compressor | 2.2 | gpl | +| DIE Delay | 4.2 | GPL v2+ | +| DIE EQ | 2.2 | GPL v2+ | +| DIE Expander | 2.2 | gpl | +| DIE Reverb | 2.4 | gpl | +| Filta | 2.0 | gpl | +| Fuzz | 0.0 | — | +| Granulator - Mono | — | isc | +| Guitar Midi | — | isc | +| Invada Compressor (mono) | 2.1 | gpl | +| Invada Test Tones | 2.1 | gpl | +| Loopor | — | isc | +| MDA Ambience | 0.3 | gpl | +| MDA Bandisto | 0.5 | gpl | +| MDA BeatBox | 0.2 | gpl | +| MDA Combo | 0.4 | gpl | +| MDA De-ess | 0.2 | gpl | +| MDA Degrade | 0.2 | gpl | +| MDA Delay | 0.4 | gpl | +| MDA Detune | 0.4 | gpl | +| MDA Dither | 0.2 | gpl | +| MDA DubDelay | 0.7 | gpl | +| MDA DX10 | 0.3 | gpl | +| MDA Dynamics | 0.2 | gpl | +| MDA ePiano | 0.4 | gpl | +| MDA Image | 0.3 | gpl | +| MDA JX10 | 0.2 | gpl | +| MDA Leslie | 0.3 | gpl | +| MDA Limiter | 0.2 | gpl | +| MDA Loudness | 0.1 | gpl | +| MDA MultiBand | 0.3 | gpl | +| MDA Overdrive | 0.4 | gpl | +| MDA Piano | 0.1 | gpl | +| MDA RePsycho! | 0.1 | gpl | +| MDA RezFilter | 0.1 | gpl | +| MDA RingMod | 0.2 | gpl | +| MDA RoundPan | 0.2 | gpl | +| MDA Shepard | 0.4 | gpl | +| MDA Splitter | 0.2 | gpl | +| MDA Stereo | 0.2 | gpl | +| MDA SubSynth | 0.3 | gpl | +| MDA TalkBox | 0.2 | gpl | +| MDA TestTone | 0.2 | gpl | +| MDA ThruZero | 0.3 | gpl | +| MDA Transient | 0.1 | gpl | +| MDA VocInput | 0.2 | gpl | +| MDA Vocoder | 0.4 | gpl | +| MIDI Chord | 1033.31 | gpl | +| MIDI display | 1.0 | GPLv3+ | +| Notes | 2.0 | Artistic-2.0 | +| Rec VCO | 0.0 | gpl-2.0 | +| reverb | 0.0 | gpl-2.0 | +| rkr EQ | 0.0 | — | +| setBfree MIDI controller | 1.0 | GPLv2+ | +| Square | 0.0 | — | +| Triceratops | — | gpl-3.0 | +| x42 - IR Convolver Mono | 1.1 | gpl | + +
+Full plugin list by project (bundle variants) + +**AMS VCF**: AMS Envelope, AMS LFO2 - Freq, AMS VCA Exp, AMS VCA Lin, AMS VCF, AMS VCO3 + +**Audio Capture**: Audio Capture, Audio Playback + +**Audio Gain (Mono)**: Audio Gain (Mono), Audio Gain (Stereo) + +**Calf Gate**: Calf Bass Enhancer, Calf Compensation Delay Line, Calf Compressor, Calf Crusher, Calf Envelope Filter, Calf Equalizer 5 Band, Calf Exciter, Calf Filter, Calf Flanger, Calf Gate, Calf Mono Compressor, Calf Monosynth, Calf Multi Chorus, Calf Organ, Calf Phaser, Calf Pulsator, Calf Reverb, Calf Saturator, Calf Vintage Delay, Calf Wavetable + +**Comb delay line, noninterpolating**: Comb delay line, cubic spline interpolation, Comb delay line, linear interpolation, Comb delay line, noninterpolating + +**DIE Compressor**: DIE Compressor, DIE Compressor (stereo) + +**DIE Expander**: DIE Expander, DIE Expander (stereo) + +**Filta**: Filta, Kuiza, Roomy + +**Fuzz**: Fuzz, rkr Distortion, rkr Flanger/Chorus, rkr Parametric EQ, rkr Reverb + +**GLAME Butterworth Lowpass**: GLAME Butterworth Highpass, GLAME Butterworth Lowpass, Glame Butterworth X-over Filter + +**Granulator - Mono**: Downsampler - Mono, Downsampler - Stereo, Granulator - Mono, Granulator - Stereo + +**Invada Compressor (mono)**: Invada Compressor (mono), Invada Compressor (stereo), Invada Delay Munge (mono in), Invada Delay Munge (sum L+R in), Invada Stereo Phaser (mono in), Invada Stereo Phaser (stereo in), Invada Stereo Phaser (sum L+R in) + +**Invada Test Tones**: Invada Early Reflection Reverb (mono in), Invada Early Reflection Reverb (sum L+R in), Invada High Pass Filter (mono), Invada High Pass Filter (stereo), Invada Input Module, Invada Low Pass Filter (mono), Invada Low Pass Filter (stereo), Invada Test Tones, Invada Tube Distortion (mono), Invada Tube Distortion (stereo) + +**LSP IR Mono**: LSP IR Mono, LSP IR Stereo + +**MIDI Chord**: MIDI CC Map, MIDI CC to Note, MIDI Channel Filter, MIDI Channel Map, MIDI Channel Unisono, MIDI Chord, MIDI Chromatic Transpose, MIDI Delayline, MIDI Duplicate Blocker, MIDI Enforce Scale, MIDI Event Filter, MIDI Key-Range Filter, MIDI Keysplit, MIDI Monophonic Legato, MIDI N-Tap Delay, MIDI Note Toggle, MIDI Note Transpose, MIDI Note to CC, MIDI Note/Channel Map, MIDI Quantization, MIDI Remove Active Sensing, MIDI Scale CC Value, MIDI Simple Channel Filter, MIDI Sostenuto, MIDI Strum, MIDI Velocity Adjust, MIDI Velocity Randomization, MIDI Velocity-Range Filter + +**MIDI File**: Audio File, MIDI File + +**MIDI Gain**: MIDI Channel A/B, MIDI Channel Filter, MIDI Channelize, MIDI Gain, MIDI Join, MIDI Split, MIDI Transpose + +**Portal Sink**: Portal Sink, Portal Source + +**Rec VCO**: 4-Band Parametric Filter, CS Phaser 1, Moog High-Pass Filter 1, Moog Low-Pass Filter 1, Moog Low-Pass Filter 2, Moog Low-Pass Filter 3, Moog Low-Pass Filter 4, Pulse VCO, Rec VCO, Saw VCO, reverb-amb + +**Record-Mono**: Record-Mono, Record-Quad, Record-Stereo + +**Record-Mono Mini**: Record-Mono Mini, Record-Quad Mini, Record-Stereo Mini + +**reverb**: Auto-wah, CS Chorus 1, CS Chorus 2, CS Phaser 1 with LFO, Triple chorus, reverb + +**Ringmod with LFO**: Ringmod with LFO, Ringmod with two inputs + +**rkr EQ**: rkr AlienWah, rkr Analog Phaser, rkr Arpie, rkr Cabinet, rkr Coil Crafter, rkr CompBand, rkr Compressor, rkr Derelict, rkr DistBand, rkr Dual Flange, rkr EQ, rkr Echo, rkr Echotron, rkr Echoverse, rkr Exciter, rkr Expander, rkr Harmonizer (no midi), rkr Infinity, rkr MuTroMojo, rkr Musical Delay, rkr OpticalTrem, rkr Shelf Boost, rkr Shuffle, rkr StereoHarmonizer (no midi), rkr StompBox, rkr Sustainer, rkr Synthfilter, rkr Valve, rkr VaryBand, rkr Vibe, rkr Vocoder, rkr WahWah + +**Rubberband (Mono)**: Rubberband (Mono), Rubberband (Stereo) + +**Square**: Sawtooth, Square, Triangle + +**the infamous stuck**: the infamous stuck, the infamous stuck stacker + +**TinyGain Mono**: TinyGain Mono, TinyGain Stereo + +**x42 - IR Convolver Mono**: x42 - IR Convolver Mono, x42 - IR Convolver Stereo + +**x42-Autotune**: x42-Autotune, x42-Autotune (microtonal), x42-Autotune (scales) + +**x42-eq - Parametric Equalizer Mono**: x42-eq - Parametric Equalizer Mono, x42-eq - Parametric Equalizer Stereo + +
+ +### ⚠️ Plugins with no license declared (56) + +These require manual license verification: + +- The Function +- The Pilgrim +- bluesbreaker +- PowerAmpImpulses +- PowerAmpTubes +- PreAmpImpulses +- PreAmpTubes +- CollisionDrive +- Harmonic Exciter +- MetalTone +- Rumor +- VintageAC30 +- Temper +- Obxd +- dRowAudio Tremolo +- dRowAudio: Distortion +- dRowAudio: Distortion Shaper +- dRowAudio: Flanger +- dRowAudio: Reverb +- TS-M1N3 +- WOW +- Schrammel OJD +- ChowCentaur +- Luftikus +- ReFine +- Helm +- MIDI Gain +- Audio to CV +- CV Clock +- CV Switchbox 1-2 +- CV Switchbox 1-3 +- CV Switchbox 2-1 +- CV Switchbox 3-1 +- MIDI to CV Poly +- Slew Rate Limiter +- Noise Maker - ME +- MIDI to CV mono +- Sorcer +- JuceOPL +- Swanky Amp +- TAL-Reverb-II +- Tal-Dub-3 +- Tal-Filter +- Tal-Filter-2 +- Tal-Reverb +- Tal-Reverb-III +- Tal-Vocoder-II +- Wolpertinger +- Bass Cabinets +- British 1960A +- Cabinet +- Compressor +- Crypt +- Fuzz +- rkr EQ +- Square + +### ⚠️ Plugins with no author declared (63) + +- Aether +- ALO +- AMS VCF +- Analogue Oscillator +- Bitta +- Delayorama +- DIE Compressor +- DIE Delay +- DIE EQ +- DIE Expander +- DIE Reverb +- Filta +- Fuzz +- Granulator - Mono +- Guitar Midi +- Invada Compressor (mono) +- Invada Test Tones +- Loopor +- MDA Ambience +- MDA Bandisto +- MDA BeatBox +- MDA Combo +- MDA De-ess +- MDA Degrade +- MDA Delay +- MDA Detune +- MDA Dither +- MDA DubDelay +- MDA DX10 +- MDA Dynamics +- MDA ePiano +- MDA Image +- MDA JX10 +- MDA Leslie +- MDA Limiter +- MDA Loudness +- MDA MultiBand +- MDA Overdrive +- MDA Piano +- MDA RePsycho! +- MDA RezFilter +- MDA RingMod +- MDA RoundPan +- MDA Shepard +- MDA Splitter +- MDA Stereo +- MDA SubSynth +- MDA TalkBox +- MDA TestTone +- MDA ThruZero +- MDA Transient +- MDA VocInput +- MDA Vocoder +- MIDI Chord +- MIDI display +- Notes +- Rec VCO +- reverb +- rkr EQ +- setBfree MIDI controller +- Square +- Triceratops +- x42 - IR Convolver Mono + +--- +_662 plugin variants across 510 projects from 62 authors/vendors._ From a75bedbe5032509ca189ccec4cb21ac9ee6c9593 Mon Sep 17 00:00:00 2001 From: randall reichenbach Date: Wed, 17 Jun 2026 22:40:59 -0700 Subject: [PATCH 03/10] manual updates, add disclaimers --- THIRD_PARTY_LICENSES.md | 662 +++++++++++++++++----------------------- 1 file changed, 275 insertions(+), 387 deletions(-) diff --git a/THIRD_PARTY_LICENSES.md b/THIRD_PARTY_LICENSES.md index 1c96772d7..5b7635c0b 100644 --- a/THIRD_PARTY_LICENSES.md +++ b/THIRD_PARTY_LICENSES.md @@ -2,8 +2,12 @@ This document lists third-party software components included in or distributed with this project's Raspberry Pi OS image and software stack, along with their respective licenses. It is provided to satisfy attribution and license-disclosure obligations for all bundled open source components. +> **Scope:** This file covers the contents of the **pi-gen-pistomp built OS image** released for download — the full system that runs on the device, including the OS, system services (jack2, mod-host, mod-ui, etc.), Python runtime dependencies, and LV2 plugins. It does **not** describe the contents of this Git repository, which contains only this project's own Python source code, licensed under AGPL-3.0-or-later. The components below are not part of the repository itself; they are installed, built, or bundled into the image by the pi-gen-pistomp build process. + **This project's own code is licensed under AGPL-3.0-or-later.** Components below are run as independent system services or separate processes (communicating via IPC, D-Bus, sockets, or HTTP) rather than linked into this project's codebase, except where noted. +> **A note on accuracy:** This file was compiled largely through automated extraction — `pip-licenses` for Python dependencies, `lilv`/TTL metadata inspection for LV2 plugins, and manual verification where automated tools returned incomplete or ambiguous results. Open source metadata is not always accurate or complete at the source, and errors or omissions may exist despite best efforts to verify each entry. If you are a rights holder or maintainer and believe an entry here is missing, incorrect, or needs attribution changes, please [open an issue](../../issues) or contact the maintainer of this repository. + ## Contents - [Core System Components (Cloned / Built from Source)](#core-system-components-cloned--built-from-source) @@ -98,7 +102,7 @@ Python packages installed in the runtime environment, extracted via `pip-license | urllib3 | 1.26.12 | MIT License | [link](https://urllib3.readthedocs.io/) | | websockets | 16.0 | BSD-3-Clause | [link](https://github.com/python-websockets/websockets) | | Werkzeug | 3.1.8 | BSD-3-Clause | [link](https://github.com/pallets/werkzeug/) | -| zeroconf | 0.47.3 | GNU Lesser General Public License v2 (LGPLv2); Other/Proprietary License | [link](https://github.com/python-zeroconf/python-zeroconf) | +| zeroconf | 0.47.3 | LGPL-2.1-or-later | [link](https://github.com/python-zeroconf/python-zeroconf) | ### Development / Build / Documentation Tools (not distributed at runtime) @@ -149,7 +153,7 @@ Python packages installed in the runtime environment, extracted via `pip-license | Plugin | Version | License | |--------|---------|---------| -| abGate | 2.0 | lgpl | +| abGate | 2.0 | LGPL | ### Artican @@ -158,18 +162,30 @@ Python packages installed in the runtime environment, extracted via `pip-license | The Function | 2.0 | — | | The Pilgrim | 2.0 | — | + ### Aurelien Leblond +| Plugin | Version | License | +|--------|---------|---------| +| AMS VCF | 1.0 | isc | +| Granulator - Mono | 0.0 | isc | + ### Bernhard Rusch | Plugin | Version | License | |--------|---------|---------| -| Molot Lite Mono | 0.1 | gpl | +| Molot Lite Mono | 0.1 | GPL | + +### Blokas Labs +| Plugin | Version | License | +|--------|---------|---------| +| Invada Compressor (mono) | 2.1 | GPL v2 | +| Invada Test Tones | 2.1 | GPL v2 | ### Bollie | Plugin | Version | License | |--------|---------|---------| -| Bollie Delay | 2.6 | gpl | -| Bollie Delay XT | 0.1 | gpl | +| Bollie Delay | 2.6 | GPL | +| Bollie Delay XT | 0.1 | GPL | ### brummer @@ -207,7 +223,7 @@ Python packages installed in the runtime environment, extracted via `pip-license | Plugin | Version | License | |--------|---------|---------| -| Calf Gate | — | lgpl | +| Calf Gate | — | LGPL | ### Creative Intent @@ -241,11 +257,33 @@ Python packages installed in the runtime environment, extracted via `pip-license |--------|---------|---------| | Obxd | 2.0 | — | -### dcoredump, dcoredump +### David Robillard (FOMP) +| Plugin | Version | License | +|--------|---------|---------| +| 4-Band Parametric Filter | 0.0 | GPL-2.0 | +| CS Phaser 1 | 0.0 | GPL-2.0 | +| Moog High-Pass Filter 1 | 0.0 | GPL-2.0 | +| Moog Low-Pass Filter 1 | 0.0 | GPL-2.0 | +| Moog Low-Pass Filter 2 | 0.0 | GPL-2.0 | +| Moog Low-Pass Filter 3 | 0.0 | GPL-2.0 | +| Moog Low-Pass Filter 4 | 0.0 | GPL-2.0 | +| Pulse VCO | 0.0 | GPL-2.0 | +| Rec VCO | 0.0 | GPL-2.0 | +| reverb | 0.0 | GPL-2.0 | +| reverb-amb | 0.0 | GPL-2.0 | +| Saw VCO | 0.0 | GPL-2.0 | +| Square | 0.0 | GPL-2.0 | + +### dcoredump | Plugin | Version | License | |--------|---------|---------| -| Dexed | 0.2 | gpl | +| Dexed | 0.2 | GPL | + +### devcurmudgeon +| Plugin | Version | License | +|--------|---------|---------| +| ALO | 0.9 | MIT | ### DISTRHO @@ -253,13 +291,18 @@ Python packages installed in the runtime environment, extracted via `pip-license |--------|---------|---------| | 3 Band EQ | 2.0 | LGPL | | 3 Band Splitter | 2.0 | LGPL | -| DIE Fluid Synth | 2.2 | gpl | +| DIE Fluid Synth | 2.2 | GPL | | MaBitcrush | 0.1 | ISC | | MaFreeverb | 0.1 | ISC | | MaGigaverb | 0.1 | ISC | | MaPitchshift | 0.1 | ISC | | Ping Pong Pan | 2.0 | LGPL | +### Dougal-s +| Plugin | Version | License | +|--------|---------|---------| +| Aether | 2.1 | MIT | + ### dRowAudio | Plugin | Version | License | @@ -274,7 +317,7 @@ Python packages installed in the runtime environment, extracted via `pip-license | Plugin | Version | License | |--------|---------|---------| -| [SimSam](https://gitlab.com/edwillys/simsam) | 0.1 | gpl | +| [SimSam](https://gitlab.com/edwillys/simsam) | 0.1 | GPL | ### falkTX @@ -307,7 +350,13 @@ Python packages installed in the runtime environment, extracted via `pip-license | Kars | 2.1 | ISC | | MIDI File | 150.22 | GPL-2.0 | | Portal Sink | — | http://spdx.org/licenses/ISC.html | -| Rubberband (Mono) | 8.2 | gpl | +| Rubberband (Mono) | 8.2 | GPL | + +### geraldmwangi + +| Plugin | Version | License | +|--------|---------|---------| +| Guitar Midi | 0.0 | LGPL | ### Guitarix team @@ -428,7 +477,7 @@ Python packages installed in the runtime environment, extracted via `pip-license | Plugin | Version | License | |--------|---------|---------| -| TS-M1N3 | 2.1 | — | +| TS-M1N3 | 2.1 | GPL-3.0 | ### Hannes Braun @@ -463,11 +512,16 @@ Python packages installed in the runtime environment, extracted via `pip-license | StarChild | 2.0 | MIT | | Vibrato | 2.0 | MIT | +### Hanspeter Portner +| Plugin | Version | License | +|--------|---------|---------| +| Notes | 2.0 | Artistic-2.0 | + ### Igor Brkic | Plugin | Version | License | |--------|---------|---------| -| VocProc | — | gpl | +| VocProc | 0.2 | GPLv2 | ### J.Velcl@seznam.cz @@ -478,14 +532,14 @@ Python packages installed in the runtime environment, extracted via `pip-license ### Janos Buttgereit | Plugin | Version | License | -|--------|---------|---------| -| Schrammel OJD | 8.9 | — | +|--------|---------|--------- +| Schrammel OJD | 8.9 | GPL v3 | ### Jatin Chowdhury | Plugin | Version | License | |--------|---------|---------| -| ChowCentaur | 2.4 | — | +| ChowCentaur | 2.4 | BSD-3-Clause | ### Jean Pierre Cimalando @@ -501,14 +555,14 @@ Python packages installed in the runtime environment, extracted via `pip-license | Plugin | Version | License | |--------|---------|---------| -| Luftikus | — | — | +| Luftikus | 1.2.1 | GPL v2 | | ReFine | 2.1 | — | ### LSP LV2 | Plugin | Version | License | |--------|---------|---------| -| LSP IR Mono | 0.2 | lgpl | +| LSP IR Mono | 0.2 | LGPL | ### Luciano Dato @@ -526,39 +580,39 @@ Python packages installed in the runtime environment, extracted via `pip-license | Plugin | Version | License | |--------|---------|---------| -| Helm | — | — | +| Helm | v0.9.0 | GPL v3 | ### Mayank Sanganeria | Plugin | Version | License | |--------|---------|---------| -| Granulator | 1.0 | gpl | +| Granulator | 1.0 | GPL | ### Micah John | Plugin | Version | License | |--------|---------|---------| -| Amp Profiler | — | isc | +| Amp Profiler | — | GPL v3 | ### Michael Willis | Plugin | Version | License | |--------|---------|---------| -| Dragonfly Early Reflections | 4.6 | gpl-3.0.html | -| Dragonfly Plate Reverb | 4.6 | gpl-3.0.html | -| Dragonfly Room Reverb | 4.6 | gpl-3.0.html | +| Dragonfly Early Reflections | 4.6 | GPL-3.0 | +| Dragonfly Plate Reverb | 4.6 | GPL-3.0 | +| Dragonfly Room Reverb | 4.6 | GPL-3.0 | ### Michael Willis and Rob vd Berg | Plugin | Version | License | |--------|---------|---------| -| Dragonfly Hall Reverb | 4.6 | gpl-3.0.html | +| Dragonfly Hall Reverb | 4.6 | GPL-3.0 | ### Mike Oliphant | Plugin | Version | License | |--------|---------|---------| -| Neural Amp Modeler | 2.0 | gpl-3-0 | +| Neural Amp Modeler | 2.0 | GPL-3-0 | ### Milk Brewster @@ -578,31 +632,31 @@ Python packages installed in the runtime environment, extracted via `pip-license | Control to CV | 3.0 | GPL v2+ | | Convolution Loader | 2.0 | http://spdx.org/licenses/ISC.html | | CV ABS | 1.0 | GPL v2+ | -| CV Clock | 3.0 | — | +| CV Clock | 3.0 | GPL v2+ | | CV Gate | 1.0 | GPL v2+ | | CV meter | 1.0 | GPL v2+ | | CV Parameter Modulation | 1.0 | GPL v2+ | | CV Range Divider | 3.0 | GPL v2+ | | CV Round | 1.0 | GPL v2+ | -| CV Switchbox 1-2 | 1.0 | — | -| CV Switchbox 1-3 | 1.0 | — | -| CV Switchbox 2-1 | 1.0 | — | -| CV Switchbox 3-1 | 1.0 | — | +| CV Switchbox 1-2 | 1.0 | GPL v2+ | +| CV Switchbox 1-3 | 1.0 | GPL v2+ | +| CV Switchbox 2-1 | 1.0 | GPL v2+ | +| CV Switchbox 3-1 | 1.0 | GPL v2+ | | IR loader cabsim | 1.0 | isc | -| Logic Operators | 2.0 | Custom | +| Logic Operators | 2.0 | GPL v2+ | | MIDI SwitchBox 1-2 2C | 2.0 | GPLv2+ | | MIDI SwitchBox 1-3 | 2.0 | GPLv2+ | | MIDI SwitchBox 2-1 | 2.0 | GPLv2+ | | MIDI SwitchBox 2-1 2C | 2.0 | GPLv2+ | | MIDI SwitchBox 3-1 | 2.0 | GPLv2+ | -| MIDI to CV Poly | 1.1 | — | +| MIDI to CV Poly | 1.1 | GPL v2+ | | Mixer | 2.0 | GPLv3.0 | | Mixer Stereo | 2.0 | GPLv3.0 | | Random Generator | 1.0 | GPL v2+ | -| Slew Rate Limiter | 1.0 | — | -| Switchbox 1-2 ST | 1.1 | file:///home/pistomp/.lv2/switchbox_1-2_st.lv2/GPL | -| Switchbox 2-1 | 1.1 | file:///home/pistomp/.lv2/switchbox_2-1.lv2/GPL | -| Switchbox 2-1 ST | 1.1 | file:///home/pistomp/.lv2/switchbox_2-1_st.lv2/GPL | +| Slew Rate Limiter | 1.0 | GPL v2+ | +| Switchbox 1-2 ST | 1.1 | GPL v2+ | +| Switchbox 2-1 | 1.1 | GPL v2+ | +| Switchbox 2-1 ST | 1.1 | GPL v2+ | | Volume | 1.0 | GPL v2+ | | Volume 2x2 | 1.0 | GPL v2+ | @@ -622,31 +676,31 @@ Python packages installed in the runtime environment, extracted via `pip-license |--------|---------|---------| | 2Voices | 0.4 | GPL | | BandPassFilter | 0.0 | GPL | -| C* AmpVTS - Tube amp + Tone stack | 9.24 | gpl | -| C* AutoFilter | 9.24 | gpl | -| C* CabinetIII - Idealised loudspeaker cabinet emulation | 9.24 | gpl | -| C* CabinetIV - Idealised loudspeaker cabinet emulation | 9.24 | gpl | -| C* CEO - Chief Executive Oscillator | 9.24 | gpl | -| C* ChorusI - Mono chorus/flanger | 9.24 | gpl | -| C* Click - Metronome | 9.24 | gpl | -| C* Compress - Mono compressor | 9.24 | gpl | -| C* CompressX2 - Stereo compressor | 9.24 | gpl | -| C* Eq10 - 10-band equalizer | 9.24 | gpl | -| C* Eq10X2 - 10-band equalizer | 9.24 | gpl | -| C* Fractal - Audio stream from deterministic chaos | 9.24 | gpl | -| C* Narrower - Stereo image width reduction | 9.24 | gpl | -| C* Noisegate - Attenuate noise resident in silence | 9.24 | gpl | -| C* PhaserII - Mono phaser modulated by a Lorenz fractal | 9.24 | gpl | -| C* Plate - Versatile plate reverb | 9.24 | gpl | -| C* PlateX2 - Stereo in/out Versatile plate reverb | 9.24 | gpl | -| C* Saturate | 9.24 | gpl | -| C* Scape - Stereo delay + Filters | 9.24 | gpl | -| C* Sin - Sine wave generator | 9.24 | gpl | -| C* Spice | 9.24 | gpl | -| C* SpiceX2 | 9.24 | gpl | -| C* ToneStack - Tone stack emulation | 9.24 | gpl | -| C* White - White noise generator | 9.24 | gpl | -| C* Wider - Stereo image Synthesis | 9.24 | gpl | +| C* AmpVTS - Tube amp + Tone stack | 9.24 | GPL | +| C* AutoFilter | 9.24 | GPL | +| C* CabinetIII - Idealised loudspeaker cabinet emulation | 9.24 | GPL | +| C* CabinetIV - Idealised loudspeaker cabinet emulation | 9.24 | GPL | +| C* CEO - Chief Executive Oscillator | 9.24 | GPL | +| C* ChorusI - Mono chorus/flanger | 9.24 | GPL | +| C* Click - Metronome | 9.24 | GPL | +| C* Compress - Mono compressor | 9.24 | GPL | +| C* CompressX2 - Stereo compressor | 9.24 | GPL | +| C* Eq10 - 10-band equalizer | 9.24 | GPL | +| C* Eq10X2 - 10-band equalizer | 9.24 | GPL | +| C* Fractal - Audio stream from deterministic chaos | 9.24 | GPL | +| C* Narrower - Stereo image width reduction | 9.24 | GPL | +| C* Noisegate - Attenuate noise resident in silence | 9.24 | GPL | +| C* PhaserII - Mono phaser modulated by a Lorenz fractal | 9.24 | GPL | +| C* Plate - Versatile plate reverb | 9.24 | GPL | +| C* PlateX2 - Stereo in/out Versatile plate reverb | 9.24 | GPL | +| C* Saturate | 9.24 | GPL | +| C* Scape - Stereo delay + Filters | 9.24 | GPL | +| C* Sin - Sine wave generator | 9.24 | GPL | +| C* Spice | 9.24 | GPL | +| C* SpiceX2 | 9.24 | GPL | +| C* ToneStack - Tone stack emulation | 9.24 | GPL | +| C* White - White noise generator | 9.24 | GPL | +| C* Wider - Stereo image Synthesis | 9.24 | GPL | | Capo | 0.4 | GPL | | CrossOver 2 | 1.0 | GPL | | CrossOver 3 | 1.0 | GPL | @@ -659,35 +713,70 @@ Python packages installed in the runtime environment, extracted via `pip-license | HarmonizerCS | — | GPL | | HighPassFilter | 0.0 | GPL | | LowPassFilter | 0.0 | GPL | +| MDA Ambience | 0.3 | GPL | +| MDA Bandisto | 0.5 | GPL | +| MDA BeatBox | 0.2 | GPL | +| MDA Combo | 0.4 | GPL | +| MDA De-ess | 0.2 | GPL | +| MDA Degrade | 0.2 | GPL | +| MDA Delay | 0.4 | GPL | +| MDA Detune | 0.4 | GPL | +| MDA Dither | 0.2 | GPL | +| MDA DubDelay | 0.7 | GPL | +| MDA DX10 | 0.3 | GPL | +| MDA Dynamics | 0.2 | GPL | +| MDA ePiano | 0.4 | GPL | +| MDA Image | 0.3 | GPL | +| MDA JX10 | 0.2 | GPL | +| MDA Leslie | 0.3 | GPL | +| MDA Limiter | 0.2 | GPL | +| MDA Loudness | 0.1 | GPL | +| MDA MultiBand | 0.3 | GPL | +| MDA Overdrive | 0.4 | GPL | +| MDA Piano | 0.1 | GPL | +| MDA RePsycho! | 0.1 | GPL | +| MDA RezFilter | 0.1 | GPL | +| MDA RingMod | 0.2 | GPL | +| MDA RoundPan | 0.2 | GPL | +| MDA Shepard | 0.4 | GPL | +| MDA Splitter | 0.2 | GPL | +| MDA Stereo | 0.2 | GPL | +| MDA SubSynth | 0.3 | GPL | +| MDA TalkBox | 0.2 | GPL | +| MDA TestTone | 0.2 | GPL | +| MDA ThruZero | 0.3 | GPL | +| MDA Transient | 0.1 | GPL | +| MDA VocInput | 0.2 | GPL | +| MDA Vocoder | 0.4 | GPL | | MIDI SwitchBox 1-2 | 2.0 | GPLv2+ | | MIDI to CV mono | 3.1 | — | | Open Big Muff | 0.0 | GPL | | Peak To CC | 0.0 | GPLv2+ | -| SooperLooper | 0.9 | gpl | -| SooperLooper 2x2 | 0.9 | gpl | +| SooperLooper | 0.9 | GPL | +| SooperLooper 2x2 | 0.9 | GPL | | Super Capo | — | GPL | | Super Whammy | — | GPL | | Switchbox 1-2 | 1.1 | GPL | | SwitchTrigger4 | 1.1 | GPL | -| TAP AutoPanner | 7.2 | gpl | -| TAP Chorus/Flanger | 7.2 | gpl | -| TAP DeEsser | 7.2 | gpl | -| TAP Equalizer | 7.2 | gpl | -| TAP Equalizer/BW | 7.2 | gpl | -| TAP Fractal Doubler | 7.2 | gpl | -| TAP Mono Dynamics | 7.2 | gpl | -| TAP Pink/Fractal Noise | 7.2 | gpl | -| TAP Pitch Shifter | 7.2 | gpl | -| TAP Reflector | 7.3 | gpl | -| TAP Reverberator | 7.2 | gpl | -| TAP Rotary Speaker | 7.3 | gpl | -| TAP Scaling Limiter | 7.2 | gpl | -| TAP Sigmoid Booster | 7.2 | gpl | -| TAP Stereo Dynamics | 7.2 | gpl | -| TAP Stereo Echo | 7.3 | gpl | -| TAP Tremolo | 7.3 | gpl | -| TAP Tubewarmth | 7.2 | gpl | -| TAP Vibrato | 7.2 | gpl | +| TAP AutoPanner | 7.2 | GPL | +| TAP Chorus/Flanger | 7.2 | GPL | +| TAP DeEsser | 7.2 | GPL | +| TAP Equalizer | 7.2 | GPL | +| TAP Equalizer/BW | 7.2 | GPL | +| TAP Fractal Doubler | 7.2 | GPL | +| TAP Mono Dynamics | 7.2 | GPL | +| TAP Pink/Fractal Noise | 7.2 | GPL | +| TAP Pitch Shifter | 7.2 | GPL | +| TAP Reflector | 7.3 | GPL | +| TAP Reverberator | 7.2 | GPL | +| TAP Rotary Speaker | 7.3 | GPL | +| TAP Scaling Limiter | 7.2 | GPL | +| TAP Sigmoid Booster | 7.2 | GPL | +| TAP Stereo Dynamics | 7.2 | GPL | +| TAP Stereo Echo | 7.3 | GPL | +| TAP Tremolo | 7.3 | GPL | +| TAP Tubewarmth | 7.2 | GPL | +| TAP Vibrato | 7.2 | GPL | | ToggleSwitch | 1.1 | GPL | ### ndc Plugs @@ -702,19 +791,26 @@ Python packages installed in the runtime environment, extracted via `pip-license | Plugin | Version | License | |--------|---------|---------| -| Vocoder | — | gpl | +| Vocoder | — | GPL | + +### Nick Bailey +| Plugin | Version | License | +|--------|---------|---------| +| Triceratops | 0.0 | GPL-3.0 | ### Nick Dowell | Plugin | Version | License | |--------|---------|---------| -| amsynth | 1.5 | gpl | +| amsynth | 1.5 | GPL | ### OpenAV | Plugin | Version | License | |--------|---------|---------| -| Sorcer | 2.0 | — | +| Bitta | 2.0 | GPL v2 | +| Filta | 2.0 | GPL | +| Sorcer | 2.0 | GPL v3 | ### Paul Ferrand @@ -726,9 +822,9 @@ Python packages installed in the runtime environment, extracted via `pip-license | Plugin | Version | License | |--------|---------|---------| -| [Freakclip](https://github.com/pjotrompet) | 1.2 | gpl | -| [Freaktail](https://github.com/pjotrompet) | 1.0 | gpl | -| [Prefreak](https://github.com/pjotrompet) | 0.1 | gpl | +| [Freakclip](https://github.com/pjotrompet) | 1.2 | GPL | +| [Freaktail](https://github.com/pjotrompet) | 1.0 | GPL | +| [Prefreak](https://github.com/pjotrompet) | 0.1 | GPL | ### Plainweave Software @@ -736,6 +832,47 @@ Python packages installed in the runtime environment, extracted via `pip-license |--------|---------|---------| | JuceOPL | 2.0 | — | +### Rakarrack Team + +| Plugin | Version | License | +|--------|---------|---------| +| rkr AlienWah | 0.0 | GPL v2 | +| rkr Analog Phaser | 0.0 | GPL v2 | +| rkr Arpie | 0.0 | GPL v2 | +| rkr Cabinet | 0.0 | GPL v2 | +| rkr Coil Crafter | 0.0 | GPL v2 | +| rkr CompBand | 0.0 | GPL v2 | +| rkr Compressor | 0.0 | GPL v2 | +| rkr Derelict | 0.0 | GPL v2 | +| rkr Distortion | 0.0 | GPL v2 | +| rkr DistBand | 0.0 | GPL v2 | +| rkr Dual Flange | 0.0 | GPL v2 | +| rkr EQ | 0.0 | GPL v2 | +| rkr Echo | 0.0 | GPL v2 | +| rkr Echotron | 0.0 | GPL v2 | +| rkr Echoverse | 0.0 | GPL v2 | +| rkr Exciter | 0.0 | GPL v2 | +| rkr Expander | 0.0 | GPL v2 | +| rkr Flanger/Chorus | 0.0 | GPL v2 | +| rkr Harmonizer (no midi) | 0.0 | GPL v2 | +| rkr Infinity | 0.0 | GPL v2 | +| rkr MuTroMojo | 0.0 | GPL v2 | +| rkr Musical Delay | 0.0 | GPL v2 | +| rkr OpticalTrem | 0.0 | GPL v2 | +| rkr Parametric EQ | 0.0 | GPL v2 | +| rkr Reverb | 0.0 | GPL v2 | +| rkr Shelf Boost | 0.0 | GPL v2 | +| rkr Shuffle | 0.0 | GPL v2 | +| rkr StereoHarmonizer (no midi) | 0.0 | GPL v2 | +| rkr StompBox | 0.0 | GPL v2 | +| rkr Sustainer | 0.0 | GPL v2 | +| rkr Synthfilter | 0.0 | GPL v2 | +| rkr Valve | 0.0 | GPL v2 | +| rkr VaryBand | 0.0 | GPL v2 | +| rkr Vibe | 0.0 | GPL v2 | +| rkr Vocoder | 0.0 | GPL v2 | +| rkr WahWah | 0.0 | GPL v2 | + ### remaincalm.org | Plugin | Version | License | @@ -755,29 +892,30 @@ Python packages installed in the runtime environment, extracted via `pip-license | Plugin | Version | License | |--------|---------|---------| -| Instrument Tuner | 0.0 | gpl | -| Level Meter | 0.0 | gpl | -| MIDI Clock Generator | 0.0 | gpl | -| MIDI Generator | 512.0 | gpl | -| MIDI Step Sequencer16x8 | 777.5 | gpl | -| MIDI Step Sequencer32x8 | 777.5 | gpl | -| MIDI Step Sequencer8x16 | 777.5 | gpl | -| MIDI Step Sequencer8x4 | 777.5 | gpl | -| MIDI Step Sequencer8x8 | 777.5 | gpl | -| MIDI Timecode (MTC) Generator | 0.0 | gpl | -| No Delay Line | 514.0 | gpl | -| setBfree DSP Tonewheel Organ | 2058.0 | gpl | -| setBfree Organ Overdrive | 2058.0 | gpl | -| setBfree Organ Reverb | 2058.0 | gpl | -| setBfree Whirl Speaker | 2058.0 | gpl | -| setBfree Whirl Speaker (Old version) | 2058.0 | gpl | -| setBfree Whirl Speaker - Extended Version | 2058.0 | gpl | -| Spectrum Analyzer | 517.21 | gpl | -| Stereo Balance Control | 1538.0 | gpl | -| Stereo X-Fade | 516.0 | gpl | -| TinyGain Mono | 770.0 | gpl | -| x42-Autotune | 2049.11 | gpl | -| x42-eq - Parametric Equalizer Mono | 1.1 | gpl | +| Instrument Tuner | 0.0 | GPL | +| Level Meter | 0.0 | GPL | +| MIDI Chord | 1033.31 | GPL | +| MIDI Clock Generator | 0.0 | GPL | +| MIDI Generator | 512.0 | GPL | +| MIDI Step Sequencer16x8 | 777.5 | GPL | +| MIDI Step Sequencer32x8 | 777.5 | GPL | +| MIDI Step Sequencer8x16 | 777.5 | GPL | +| MIDI Step Sequencer8x4 | 777.5 | GPL | +| MIDI Step Sequencer8x8 | 777.5 | GPL | +| MIDI Timecode (MTC) Generator | 0.0 | GPL | +| No Delay Line | 514.0 | GPL | +| setBfree DSP Tonewheel Organ | 2058.0 | GPL | +| setBfree Organ Overdrive | 2058.0 | GPL | +| setBfree Organ Reverb | 2058.0 | GPL | +| setBfree Whirl Speaker | 2058.0 | GPL | +| setBfree Whirl Speaker (Old version) | 2058.0 | GPL | +| setBfree Whirl Speaker - Extended Version | 2058.0 | GPL | +| Spectrum Analyzer | 517.21 | GPL | +| Stereo Balance Control | 1538.0 | GPL | +| Stereo X-Fade | 516.0 | GPL | +| TinyGain Mono | 770.0 | GPL | +| x42-Autotune | 2049.11 | GPL | +| x42-eq - Parametric Equalizer Mono | 1.1 | GPL | ### Sean Bolton, falkTX @@ -816,24 +954,24 @@ Python packages installed in the runtime environment, extracted via `pip-license | Plugin | Version | License | |--------|---------|---------| -| AM pitchshifter | — | gpl | -| Bode frequency shifter | — | gpl | -| Comb delay line, noninterpolating | — | gpl | -| Crossover distortion | — | gpl | -| Decimator | — | gpl | -| Gate | — | gpl | -| Glame Bandpass Analog Filter | — | gpl | -| Glame Bandpass Filter | — | gpl | -| GLAME Butterworth Lowpass | — | gpl | -| GVerb | — | gpl | -| Karaoke | — | gpl | -| Multivoice Chorus | — | gpl | -| Reverse Delay | — | gpl | -| Ringmod with LFO | — | gpl | -| SC1 | — | gpl | -| State Variable Filter | — | gpl | -| Tape Delay Simulation | — | gpl | -| Valve saturation | — | gpl | +| AM pitchshifter | — | GPL | +| Bode frequency shifter | — | GPL | +| Comb delay line, noninterpolating | — | GPL | +| Crossover distortion | — | GPL | +| Decimator | — | GPL | +| Gate | — | GPL | +| Glame Bandpass Analog Filter | — | GPL | +| Glame Bandpass Filter | — | GPL | +| GLAME Butterworth Lowpass | — | GPL | +| GVerb | — | GPL | +| Karaoke | — | GPL | +| Multivoice Chorus | — | GPL | +| Reverse Delay | — | GPL | +| Ringmod with LFO | — | GPL | +| SC1 | — | GPL | +| State Variable Filter | — | GPL | +| Tape Delay Simulation | — | GPL | +| Valve saturation | — | GPL | ### TAL @@ -876,7 +1014,7 @@ Python packages installed in the runtime environment, extracted via `pip-license | Plugin | Version | License | |--------|---------|---------| -| Crypt | 0.3 | — | +| Crypt | 0.3 | GPL v3 | ### ZynAddSubFX Team @@ -892,266 +1030,16 @@ Python packages installed in the runtime environment, extracted via `pip-license | ZynReverb | 7.0 | GPL v2 | ### Unknown / Unattributed - | Plugin | Version | License | |--------|---------|---------| -| Aether | 2.1 | MIT | -| ALO | 0.9 | isc | -| AMS VCF | 1.0 | isc | -| Analogue Oscillator | — | gpl | -| Bitta | 2.0 | gpl | -| Delayorama | — | gpl | -| DIE Compressor | 2.2 | gpl | +| Analogue Oscillator | — | GPL | +| Delayorama | — | GPL | +| DIE Compressor | 2.2 | GPL | | DIE Delay | 4.2 | GPL v2+ | | DIE EQ | 2.2 | GPL v2+ | -| DIE Expander | 2.2 | gpl | -| DIE Reverb | 2.4 | gpl | -| Filta | 2.0 | gpl | -| Fuzz | 0.0 | — | -| Granulator - Mono | — | isc | -| Guitar Midi | — | isc | -| Invada Compressor (mono) | 2.1 | gpl | -| Invada Test Tones | 2.1 | gpl | +| DIE Expander | 2.2 | GPL | +| DIE Reverb | 2.4 | GPL | | Loopor | — | isc | -| MDA Ambience | 0.3 | gpl | -| MDA Bandisto | 0.5 | gpl | -| MDA BeatBox | 0.2 | gpl | -| MDA Combo | 0.4 | gpl | -| MDA De-ess | 0.2 | gpl | -| MDA Degrade | 0.2 | gpl | -| MDA Delay | 0.4 | gpl | -| MDA Detune | 0.4 | gpl | -| MDA Dither | 0.2 | gpl | -| MDA DubDelay | 0.7 | gpl | -| MDA DX10 | 0.3 | gpl | -| MDA Dynamics | 0.2 | gpl | -| MDA ePiano | 0.4 | gpl | -| MDA Image | 0.3 | gpl | -| MDA JX10 | 0.2 | gpl | -| MDA Leslie | 0.3 | gpl | -| MDA Limiter | 0.2 | gpl | -| MDA Loudness | 0.1 | gpl | -| MDA MultiBand | 0.3 | gpl | -| MDA Overdrive | 0.4 | gpl | -| MDA Piano | 0.1 | gpl | -| MDA RePsycho! | 0.1 | gpl | -| MDA RezFilter | 0.1 | gpl | -| MDA RingMod | 0.2 | gpl | -| MDA RoundPan | 0.2 | gpl | -| MDA Shepard | 0.4 | gpl | -| MDA Splitter | 0.2 | gpl | -| MDA Stereo | 0.2 | gpl | -| MDA SubSynth | 0.3 | gpl | -| MDA TalkBox | 0.2 | gpl | -| MDA TestTone | 0.2 | gpl | -| MDA ThruZero | 0.3 | gpl | -| MDA Transient | 0.1 | gpl | -| MDA VocInput | 0.2 | gpl | -| MDA Vocoder | 0.4 | gpl | -| MIDI Chord | 1033.31 | gpl | | MIDI display | 1.0 | GPLv3+ | -| Notes | 2.0 | Artistic-2.0 | -| Rec VCO | 0.0 | gpl-2.0 | -| reverb | 0.0 | gpl-2.0 | -| rkr EQ | 0.0 | — | -| setBfree MIDI controller | 1.0 | GPLv2+ | -| Square | 0.0 | — | -| Triceratops | — | gpl-3.0 | -| x42 - IR Convolver Mono | 1.1 | gpl | -
-Full plugin list by project (bundle variants) - -**AMS VCF**: AMS Envelope, AMS LFO2 - Freq, AMS VCA Exp, AMS VCA Lin, AMS VCF, AMS VCO3 - -**Audio Capture**: Audio Capture, Audio Playback - -**Audio Gain (Mono)**: Audio Gain (Mono), Audio Gain (Stereo) - -**Calf Gate**: Calf Bass Enhancer, Calf Compensation Delay Line, Calf Compressor, Calf Crusher, Calf Envelope Filter, Calf Equalizer 5 Band, Calf Exciter, Calf Filter, Calf Flanger, Calf Gate, Calf Mono Compressor, Calf Monosynth, Calf Multi Chorus, Calf Organ, Calf Phaser, Calf Pulsator, Calf Reverb, Calf Saturator, Calf Vintage Delay, Calf Wavetable - -**Comb delay line, noninterpolating**: Comb delay line, cubic spline interpolation, Comb delay line, linear interpolation, Comb delay line, noninterpolating - -**DIE Compressor**: DIE Compressor, DIE Compressor (stereo) - -**DIE Expander**: DIE Expander, DIE Expander (stereo) - -**Filta**: Filta, Kuiza, Roomy - -**Fuzz**: Fuzz, rkr Distortion, rkr Flanger/Chorus, rkr Parametric EQ, rkr Reverb - -**GLAME Butterworth Lowpass**: GLAME Butterworth Highpass, GLAME Butterworth Lowpass, Glame Butterworth X-over Filter - -**Granulator - Mono**: Downsampler - Mono, Downsampler - Stereo, Granulator - Mono, Granulator - Stereo - -**Invada Compressor (mono)**: Invada Compressor (mono), Invada Compressor (stereo), Invada Delay Munge (mono in), Invada Delay Munge (sum L+R in), Invada Stereo Phaser (mono in), Invada Stereo Phaser (stereo in), Invada Stereo Phaser (sum L+R in) - -**Invada Test Tones**: Invada Early Reflection Reverb (mono in), Invada Early Reflection Reverb (sum L+R in), Invada High Pass Filter (mono), Invada High Pass Filter (stereo), Invada Input Module, Invada Low Pass Filter (mono), Invada Low Pass Filter (stereo), Invada Test Tones, Invada Tube Distortion (mono), Invada Tube Distortion (stereo) - -**LSP IR Mono**: LSP IR Mono, LSP IR Stereo - -**MIDI Chord**: MIDI CC Map, MIDI CC to Note, MIDI Channel Filter, MIDI Channel Map, MIDI Channel Unisono, MIDI Chord, MIDI Chromatic Transpose, MIDI Delayline, MIDI Duplicate Blocker, MIDI Enforce Scale, MIDI Event Filter, MIDI Key-Range Filter, MIDI Keysplit, MIDI Monophonic Legato, MIDI N-Tap Delay, MIDI Note Toggle, MIDI Note Transpose, MIDI Note to CC, MIDI Note/Channel Map, MIDI Quantization, MIDI Remove Active Sensing, MIDI Scale CC Value, MIDI Simple Channel Filter, MIDI Sostenuto, MIDI Strum, MIDI Velocity Adjust, MIDI Velocity Randomization, MIDI Velocity-Range Filter - -**MIDI File**: Audio File, MIDI File - -**MIDI Gain**: MIDI Channel A/B, MIDI Channel Filter, MIDI Channelize, MIDI Gain, MIDI Join, MIDI Split, MIDI Transpose - -**Portal Sink**: Portal Sink, Portal Source - -**Rec VCO**: 4-Band Parametric Filter, CS Phaser 1, Moog High-Pass Filter 1, Moog Low-Pass Filter 1, Moog Low-Pass Filter 2, Moog Low-Pass Filter 3, Moog Low-Pass Filter 4, Pulse VCO, Rec VCO, Saw VCO, reverb-amb - -**Record-Mono**: Record-Mono, Record-Quad, Record-Stereo - -**Record-Mono Mini**: Record-Mono Mini, Record-Quad Mini, Record-Stereo Mini - -**reverb**: Auto-wah, CS Chorus 1, CS Chorus 2, CS Phaser 1 with LFO, Triple chorus, reverb - -**Ringmod with LFO**: Ringmod with LFO, Ringmod with two inputs - -**rkr EQ**: rkr AlienWah, rkr Analog Phaser, rkr Arpie, rkr Cabinet, rkr Coil Crafter, rkr CompBand, rkr Compressor, rkr Derelict, rkr DistBand, rkr Dual Flange, rkr EQ, rkr Echo, rkr Echotron, rkr Echoverse, rkr Exciter, rkr Expander, rkr Harmonizer (no midi), rkr Infinity, rkr MuTroMojo, rkr Musical Delay, rkr OpticalTrem, rkr Shelf Boost, rkr Shuffle, rkr StereoHarmonizer (no midi), rkr StompBox, rkr Sustainer, rkr Synthfilter, rkr Valve, rkr VaryBand, rkr Vibe, rkr Vocoder, rkr WahWah - -**Rubberband (Mono)**: Rubberband (Mono), Rubberband (Stereo) - -**Square**: Sawtooth, Square, Triangle - -**the infamous stuck**: the infamous stuck, the infamous stuck stacker - -**TinyGain Mono**: TinyGain Mono, TinyGain Stereo - -**x42 - IR Convolver Mono**: x42 - IR Convolver Mono, x42 - IR Convolver Stereo - -**x42-Autotune**: x42-Autotune, x42-Autotune (microtonal), x42-Autotune (scales) - -**x42-eq - Parametric Equalizer Mono**: x42-eq - Parametric Equalizer Mono, x42-eq - Parametric Equalizer Stereo - -
- -### ⚠️ Plugins with no license declared (56) - -These require manual license verification: - -- The Function -- The Pilgrim -- bluesbreaker -- PowerAmpImpulses -- PowerAmpTubes -- PreAmpImpulses -- PreAmpTubes -- CollisionDrive -- Harmonic Exciter -- MetalTone -- Rumor -- VintageAC30 -- Temper -- Obxd -- dRowAudio Tremolo -- dRowAudio: Distortion -- dRowAudio: Distortion Shaper -- dRowAudio: Flanger -- dRowAudio: Reverb -- TS-M1N3 -- WOW -- Schrammel OJD -- ChowCentaur -- Luftikus -- ReFine -- Helm -- MIDI Gain -- Audio to CV -- CV Clock -- CV Switchbox 1-2 -- CV Switchbox 1-3 -- CV Switchbox 2-1 -- CV Switchbox 3-1 -- MIDI to CV Poly -- Slew Rate Limiter -- Noise Maker - ME -- MIDI to CV mono -- Sorcer -- JuceOPL -- Swanky Amp -- TAL-Reverb-II -- Tal-Dub-3 -- Tal-Filter -- Tal-Filter-2 -- Tal-Reverb -- Tal-Reverb-III -- Tal-Vocoder-II -- Wolpertinger -- Bass Cabinets -- British 1960A -- Cabinet -- Compressor -- Crypt -- Fuzz -- rkr EQ -- Square - -### ⚠️ Plugins with no author declared (63) - -- Aether -- ALO -- AMS VCF -- Analogue Oscillator -- Bitta -- Delayorama -- DIE Compressor -- DIE Delay -- DIE EQ -- DIE Expander -- DIE Reverb -- Filta -- Fuzz -- Granulator - Mono -- Guitar Midi -- Invada Compressor (mono) -- Invada Test Tones -- Loopor -- MDA Ambience -- MDA Bandisto -- MDA BeatBox -- MDA Combo -- MDA De-ess -- MDA Degrade -- MDA Delay -- MDA Detune -- MDA Dither -- MDA DubDelay -- MDA DX10 -- MDA Dynamics -- MDA ePiano -- MDA Image -- MDA JX10 -- MDA Leslie -- MDA Limiter -- MDA Loudness -- MDA MultiBand -- MDA Overdrive -- MDA Piano -- MDA RePsycho! -- MDA RezFilter -- MDA RingMod -- MDA RoundPan -- MDA Shepard -- MDA Splitter -- MDA Stereo -- MDA SubSynth -- MDA TalkBox -- MDA TestTone -- MDA ThruZero -- MDA Transient -- MDA VocInput -- MDA Vocoder -- MIDI Chord -- MIDI display -- Notes -- Rec VCO -- reverb -- rkr EQ -- setBfree MIDI controller -- Square -- Triceratops -- x42 - IR Convolver Mono - ---- -_662 plugin variants across 510 projects from 62 authors/vendors._ +--- \ No newline at end of file From e3b7091d6cd878785b1f3c848a4ef60563f7086f Mon Sep 17 00:00:00 2001 From: Randall Reichenbach Date: Thu, 18 Jun 2026 09:12:25 -0700 Subject: [PATCH 04/10] Update CHANGELOG.md Co-authored-by: Cameron Gorrie --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index dc1e6fdb1..7b80c7dcd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,7 +15,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Unit and integration tests with test harness - `deploy.sh` to deploy your local code to the device - `update.sh` for git pull + uv sync on-device -- `./run_emulator.sh` for a v1/v2/v3; requires [MOD Desktop](https://mod.audio/desktop/) +- `./run_emulator.sh [v1|v2|v3]`; v3 default; requires [MOD Desktop](https://mod.audio/desktop/) ### Fixed - Users can now enter spaces in the letter selector (used for wifi config) From 6f3c3db170e18a5fe9a0086b8ef59a4fea6745fc Mon Sep 17 00:00:00 2001 From: Randall Reichenbach Date: Thu, 18 Jun 2026 09:12:36 -0700 Subject: [PATCH 05/10] Update CHANGELOG.md Co-authored-by: Cameron Gorrie --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7b80c7dcd..e6ffaef73 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,7 +6,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. ## [v3.1.0] ### Added -- On-device (LCD) strobe tuner with mute. defaults to longpress on footswitch C +- On-device (LCD) strobe tuner with mute. Defaults to longpress on footswitch C - Sync LCD and MOD-UI using WebSocket bridge (replaces last.json polling) - Blend mode for parameter blending between snapshots - Optional autosync for one-time send of MIDI CCs to current analog positions From 52608d878df601742f7686fdb8e2604ebb4b65e6 Mon Sep 17 00:00:00 2001 From: Randall Reichenbach Date: Thu, 18 Jun 2026 09:12:50 -0700 Subject: [PATCH 06/10] Update THIRD_PARTY_LICENSES.md Co-authored-by: Cameron Gorrie --- THIRD_PARTY_LICENSES.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/THIRD_PARTY_LICENSES.md b/THIRD_PARTY_LICENSES.md index 5b7635c0b..c157cb41d 100644 --- a/THIRD_PARTY_LICENSES.md +++ b/THIRD_PARTY_LICENSES.md @@ -40,7 +40,7 @@ These are the core audio/MIDI services and supporting tools built from source an ## Python Dependencies -Python packages installed in the runtime environment, extracted via `pip-licenses`. 57 runtime packages are listed below; 24 additional packages used only for development, linting, or documentation are listed separately and are not part of the distributed runtime image. +Python packages installed in the runtime environment, extracted via `pip-licenses`. Runtime packages are listed below; additional packages used only for development, linting, or documentation are listed separately and are not part of the distributed runtime image. ### Runtime Dependencies From 05b2560b335b7b52efd42016fedcf68a056dac8b Mon Sep 17 00:00:00 2001 From: rreichenbach Date: Sat, 20 Jun 2026 17:53:29 -0700 Subject: [PATCH 07/10] clear /run/lcd.init on each process start --- pistomp/lcd320x240.py | 2 ++ uilib/lcd_ili9341.py | 22 +++++++++------------- uilib/panel.py | 1 + 3 files changed, 12 insertions(+), 13 deletions(-) diff --git a/pistomp/lcd320x240.py b/pistomp/lcd320x240.py index 68bdbc95e..77fa9612e 100644 --- a/pistomp/lcd320x240.py +++ b/pistomp/lcd320x240.py @@ -140,6 +140,8 @@ def __init__(self, cwd, handler=None, flip=False, display=None, spi_speed_mhz=24 self.wifi_menu = WifiMenu(self) + # Skip the in-app splash when early boot already showed one (/run/lcd.init). + # Hardware reset/clear still runs every process start (see LcdIli9341). if not display.has_system_splash: self.splash_show(True) diff --git a/uilib/lcd_ili9341.py b/uilib/lcd_ili9341.py index 71e8c9ab2..183ec6439 100644 --- a/uilib/lcd_ili9341.py +++ b/uilib/lcd_ili9341.py @@ -21,6 +21,8 @@ import threading import os +# Written by early-boot splash integration before pi-stomp starts; lives in tmpfs +# (/run) for the current boot only. pi-stomp reads it but never creates it. INIT_STAMP = "/run/lcd.init" @@ -29,16 +31,17 @@ class LcdIli9341(LcdBase): # TODO: Turn "flip" into all 90deg angle combinations def __init__(self, spi, cs_pin, dc_pin, reset_pin, baudrate, flip=True): import adafruit_rgb_display.ili9341 as ili9341 - rst = reset_pin if not self.has_system_splash else None - self.disp = ili9341.ILI9341(spi, cs=cs_pin, dc=dc_pin, rst=rst, baudrate=baudrate) + self.disp = ili9341.ILI9341( + spi, cs=cs_pin, dc=dc_pin, rst=reset_pin, baudrate=baudrate + ) # Use this to assure we don't have multiple threads trying to change the screen # All methods which do change the screen (eg. dist. calls) should acquire/release self.lock = threading.Lock() - if not self.has_system_splash: - self.clear() - self._set_stamp() + # Always reset and clear on process start so service restarts are reliable. + # has_system_splash (INIT_STAMP) only skips the in-app splash in lcd320x240. + self.clear() # Test full screen image self.width = self.disp.height @@ -47,16 +50,9 @@ def __init__(self, spi, cs_pin, dc_pin, reset_pin, baudrate, flip=True): @cached_property def has_system_splash(self): - """Does the OS provide a splash screen?""" + """True when early boot left INIT_STAMP (OS splash already shown this boot).""" return os.path.exists(INIT_STAMP) - def _set_stamp(self): - try: - with open(INIT_STAMP, "w") as _f: - pass - except Exception: - pass - def dimensions(self): return (self.width, self.height) diff --git a/uilib/panel.py b/uilib/panel.py index a81343e50..0bb74344d 100644 --- a/uilib/panel.py +++ b/uilib/panel.py @@ -176,6 +176,7 @@ def update(self, image, box=None) -> None: ... @property def has_system_splash(self) -> bool: + """False for backends without OS splash integration (emulator, tests).""" return False From 97164c1f99992cabe2698a021545a8a17f946068 Mon Sep 17 00:00:00 2001 From: rreichenbach Date: Sat, 20 Jun 2026 20:45:01 -0700 Subject: [PATCH 08/10] fix the case where a pedalboard is specified in last.json but doesn't actually exist --- modalapistomp.py | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/modalapistomp.py b/modalapistomp.py index 4ae638523..84ffcc522 100755 --- a/modalapistomp.py +++ b/modalapistomp.py @@ -149,17 +149,27 @@ def main(): # Load the current pedalboard as "current" current_pedal_board_bundle = handler.get_current_pedalboard_bundle_path() - if not current_pedal_board_bundle: - # last.json missing or malformed — reset to first known pedalboard + if current_pedal_board_bundle and current_pedal_board_bundle in handler.pedalboards: + handler.set_current_pedalboard(handler.pedalboards[current_pedal_board_bundle]) + else: if not handler.pedalboard_list: - logging.error("No pedalboards found; cannot recover from missing/malformed last.json") + if current_pedal_board_bundle: + logging.error( + "last.json references %s but no pedalboards are available", + current_pedal_board_bundle, + ) + else: + logging.error("No pedalboards found; cannot recover from missing/malformed last.json") sys.exit(1) + if current_pedal_board_bundle: + logging.warning( + "last.json pedalboard %s not found; resetting to first available", + current_pedal_board_bundle, + ) pb = handler.pedalboard_list[0] write_last_json(handler.last_json_monitor.path, pb.bundle) handler.pedalboard_change(pb) handler.set_current_pedalboard(pb) - else: - handler.set_current_pedalboard(handler.pedalboards[current_pedal_board_bundle]) # Load system info. This can take a few seconds handler.system_info_load() From 3a440ba58826a3956cf08ba54161afe15f6cb6bc Mon Sep 17 00:00:00 2001 From: rreichenbach Date: Sat, 20 Jun 2026 21:55:07 -0700 Subject: [PATCH 09/10] specify tuner is currently only supported on v3 hardware --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e6ffaef73..ceafb3f0b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,7 +6,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. ## [v3.1.0] ### Added -- On-device (LCD) strobe tuner with mute. Defaults to longpress on footswitch C +- On-device (LCD) strobe tuner with mute (v3 hardware only). Defaults to longpress on footswitch C - Sync LCD and MOD-UI using WebSocket bridge (replaces last.json polling) - Blend mode for parameter blending between snapshots - Optional autosync for one-time send of MIDI CCs to current analog positions From 87ca1755b48fdafb578f5a10ca0d01c7e53b31c4 Mon Sep 17 00:00:00 2001 From: rreichenbach Date: Sat, 20 Jun 2026 23:39:18 -0700 Subject: [PATCH 10/10] add date to version --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ceafb3f0b..af7eb7821 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,7 @@ Notable user visible changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). -## [v3.1.0] +## [v3.1.0] - 2026-06-20 ### Added - On-device (LCD) strobe tuner with mute (v3 hardware only). Defaults to longpress on footswitch C - Sync LCD and MOD-UI using WebSocket bridge (replaces last.json polling)