License Information
Relevant source files
The following files were used as context for generating this wiki page:
The Writer project is an open-source alternative to proprietary distraction-free text editors. It is released under a free software license to ensure that the application remains accessible, modifiable, and distributable by its users. The project prioritizes user freedom and transparency in its development and distribution.
Sources: README.md:1-2, LICENSE.md:9-15
GNU General Public License Version 3
Writer is licensed under the GNU General Public License Version 3 (GPLv3). This is a copyleft license designed to guarantee users the freedom to share and change all versions of a program. It ensures the software remains free for all its users and protects against attempts to make the software proprietary.
Sources: LICENSE.md:1-21
Key Permissions and Requirements
The GPLv3 grants several specific rights to users and developers while imposing responsibilities to protect the downstream freedom of others.
| Feature | Description |
|---|---|
| Commercial Use | Permitted; users may charge a price for conveying copies. |
| Modification | Permitted; users can adapt all or part of the work. |
| Distribution | Permitted; copies can be propagated in any medium. |
| Sublicensing | Not allowed; recipients automatically receive a license from the original licensors. |
| Copyleft | Mandatory; modified versions must be released under the same license. |
Sources: LICENSE.md:124-125, LICENSE.md:179-183, LICENSE.md:204-206, LICENSE.md:434-436
Conveying and Propagation
The license distinguishes between "propagation" (any action that would make one liable for infringement under copyright law, excluding execution or private modification) and "conveying" (propagation that enables other parties to receive copies).
The diagram above illustrates the requirements for different types of interactions with the licensed code.
Sources: LICENSE.md:88-100, LICENSE.md:162-177
Source Code Requirements
Under the GPLv3, "source code" is defined as the preferred form of the work for making modifications. For the Writer project, this includes the Swift source files, project configurations, and any scripts used to control the build process.
- Corresponding Source: Includes all source code needed to generate, install, and run the object code, as well as to modify it.
- Accessibility: If the program is conveyed in object code form, the provider must also provide the machine-readable Corresponding Source via a physical medium or a network server.
Sources: LICENSE.md:104-106, LICENSE.md:126-140, LICENSE.md:225-245
Security-Scoped Access and User Rights
The project utilizes macOS security-scoped bookmarks to persist folder access. This implementation aligns with the GPLv3's stance on anti-circumvention laws; the license ensures that no covered work shall be deemed part of an "effective technological measure" that prohibits the circumvention of protection systems for the purpose of exercising rights granted by the license.
This sequence shows the flow of rights from the developer to the end user under the GPLv3 framework.
Sources: LICENSE.md:23-26, LICENSE.md:154-160, CLAUDE.md:16-17, Writer/EditorStore.swift:195-207
Disclaimers and Liability
The GPLv3 provides a standard legal framework to protect authors and contributors by disclaiming all warranties.
- No Warranty: The program is provided "AS IS" without warranty of any kind, either expressed or implied. The entire risk as to the quality and performance of the program is with the user.
- Limitation of Liability: In no event will any copyright holder be liable for damages, including general, special, incidental, or consequential damages arising out of the use or inability to use the program.
Sources: LICENSE.md:586-597, LICENSE.md:599-609
License Implementation in Source
The project demonstrates compliance with the license by maintaining clear separation between the application logic and the licensing documentation. The LICENSE.md file contains the full text of the GNU General Public License, as required for verbatim distribution.
// Example of standard header recommended by GPLv3 (derived from LICENSE.md instructions)
// 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.
Sources: LICENSE.md:630-642, Writer/WriterApp.swift:1-5
Conclusion
The use of the GNU General Public License Version 3 ensures that Writer remains a community-driven, open-source project. By requiring that all modified versions also be released under the GPLv3, the project prevents the "propritization" of its features and ensures that all users benefit from any improvements made to the rendering engine or editor state management.
Sources: LICENSE.md:16-21, README.md:1-2