This commit is contained in:
Alex Spataru 2025-01-04 23:42:38 -05:00
commit cf2af5ad66
4 changed files with 94 additions and 55 deletions

View File

@ -1,52 +1,95 @@
Serial Studio License
=====================
=====================
This software is dual-licensed under the GNU General Public License v3 (GPLv3)
for open-source users and a Commercial License for business and professional
users. See below for details.
users. See below for details.
GNU General Public License v3 (GPLv3)
=====================================
GNU General Public License v3 (GPLv3)
=====================================
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.
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.
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 <https://www.gnu.org/licenses/>.
this program. If not, see <https://www.gnu.org/licenses/>.
### GPLv3 Limitations
- Users of the GPLv3 license may only use this software for personal or
open-source projects in compliance with the GPLv3 terms.
- Under the GPLv3 license, the software must be restarted every 30 minutes
to continue working.
- The number of dashboard widgets may be limited for GPLv3 users.
- MQTT streaming is not available for GPLv3 users.
### GPLv3 Features
Under the GPLv3 license, you may:
- Use the software for personal, educational, or open-source projects, in
compliance with the GPLv3 terms.
- Access the core functionality of Serial Studio without feature restrictions.
Commercial License
==================
For business or professional use, a Commercial License is required.
Commercial users benefit from:
- Unlimited usage of the software without time restrictions.
- Access to MQTT streaming and unrestricted dashboard widgets.
- Priority support, including email, GitHub, and video call assistance.
#### Additional Notice for GPLv3 Users:
- **Session Continuity Beyond 30 Minutes:** Once the dashboard is displayed, the
software will prompt the user every 30 minutes to restart the application to
continue using it. This is a user notification to encourage consideration of
the Commercial License and does not impose technical restrictions.
Users are free to modify the source code to remove this prompt in compliance
with the GPLv3.
- **MQTT Functionality:** MQTT integration is available exclusively under the
Commercial License and is not included in the GPLv3 version.
### Commercial License Limitations
**Value-Added Services**: These optional features are enhancements that go
beyond the core functionality of Serial Studio. They are offered as part of the
Commercial License to provide additional integrations, better user experience,
or specialized support.
Commercial License
==================
For business or professional use, purchasing a Commercial License is required.
#### Benefits for Commercial Users:
- Full access to **MQTT functionality**.
- Unlimited session continuity (no 30-minute restart reminders).
- Priority support via email, GitHub, and video calls.
#### Scope of Use:
Commercial users may use the software in business, enterprise, or proprietary
applications while complying with the restrictions outlined below.
#### Commercial License Limitations:
- Commercial users may not repackage, modify, rebrand, or redistribute the
software under a different name or identity without explicit, written
permission from the original author.
- Commercial users may use the software in their business or enterprise
applications, provided they comply with the above restrictions.
software under a different name or identity without explicit, written
permission from the original author.
- Modifications and redistributions under the Commercial License must respect
the original author's intellectual property and trademarks.
For details on the Commercial License or to purchase a license, visit the
official website (https://serial-studio.com).
Additional Notes
================
Contact
=======
For questions, licensing inquiries, or support, contact:
alex@serial-studio.com.
- **Trademark Notice:** The name "Serial Studio" and its logo are trademarks of
the author. Use of these trademarks in modified versions or derivative works
requires explicit permission.
- **Technical Support:** Support is exclusively available for Commercial License
users. Open-source users are encouraged to consult the documentation,
and the community forums (issues & discussions) available in the GitHub
repository.
- **Modifications under GPLv3:** Users modifying the software under the GPLv3
license are responsible for ensuring compatibility with future updates or
feature stability.
Examples of Permitted and Prohibited Use
========================================
**Permitted under GPLv3:**
- Running Serial Studio for an university research project.
- Including it in an open-source IoT platform.
- Using it for personal and non-commercial projects.
**Prohibited without a Commercial License:**
- Using Serial Studio as part of a commercial product offered to customers.
- Deploying Serial Studio in an enterprise environment without purchasing the
Commercial License.
### For More Information
To learn more about the Commercial License or purchase a license, visit the
official website: <https://serial-studio.com>.
For questions, licensing inquiries, or support, email: <alex@serial-studio.com>

View File

@ -1,6 +1,6 @@
# Serial Studio
<a href="#">
<a href="https://github.com/Serial-Studio/Serial-Studio/tree/master/doc/assets">
<img width="192px" height="192px" src="doc/icon.svg" align="right" />
</a>

View File

@ -207,27 +207,23 @@ static void setupAppImageIcon(const QString &appExecutableName,
const QString pixmapFile = pixmapPath + appExecutableName + ".png";
// clang-format on
// Check if the icon file already exists to avoid redundant copying
if (!QFileInfo::exists(pixmapFile))
// Ensure the directory exists; create it if it doesn't
QDir dir;
if (!dir.exists(pixmapPath) && !dir.mkpath(pixmapPath))
return;
// Copy the icon from resources to the destination
QFile resourceFile(iconResourcePath);
if (resourceFile.open(QIODevice::ReadOnly))
{
// Ensure the directory exists; create it if it doesn't
QDir dir;
if (!dir.exists(pixmapPath) && !dir.mkpath(pixmapPath))
return;
// Copy the icon from resources to the destination
QFile resourceFile(iconResourcePath);
if (resourceFile.open(QIODevice::ReadOnly))
QFile localFile(pixmapFile);
if (localFile.open(QIODevice::WriteOnly))
{
QFile localFile(pixmapFile);
if (localFile.open(QIODevice::WriteOnly))
{
localFile.write(resourceFile.readAll());
localFile.close();
}
resourceFile.close();
localFile.write(resourceFile.readAll());
localFile.close();
}
resourceFile.close();
}
}
#endif

View File

@ -4,7 +4,7 @@ This folder contains design assets, including the featured `icon_scaled.svg` fil
## Icon Preview
![icon_scaled.svg preview](icon_scaled.svg)
<img width="256px" height="256px" src="icon_scaled.svg"/>
## Credits & License