NSudo - System Administration Toolkit
This is the source code repository of NSudo. If you wonder to visit the NSudo official website, download NSudo or read the NSudo documents etc, please visit https://nsudo.m2team.org.
This readme file will be the developer oriented document because this it is under the source code repository.
2021 Development Roadmap
- Add Current User (Elevated) Mode.
- Implemented in NSudo Shared Library.
- Implemented in NSudo Launcher.
- Use wxWidgets to implement the UI.
- TOML-based environment configuration file.
- Add more APIs to NSudo Shared Library.
- Export PDF directly from the offical website.
- Improve the Gitee mirror experience.
- Translate the readme in the source tree root.
- Synchronizing automatically when commits pushed.
Relevant People
Please read People.md.
Code of Conduct
Please read CODE_OF_CONDUCT.md.
Contributing to NSudo
How to become a contributor
- Direct contributions
- Create pull requests directly.
- Please send e-mails to [email protected] if you have any questions.
- Feedback suggestions and bugs.
- We use GitHub issues to track bugs and features.
- For bugs and general issues please file a new issue.
Code contribution guidelines
Prerequisites
- Visual Studio 2017 Version 15.9 or later.
- You also need install ARM64 components (MSVC Toolchain and ATL/MFC) if you want to compile ARM64 version of NSudo.
- Windows 10 Version 1507 SDK or later.
- You also need install ARM64 components when you installing the Windows 10 Version 1703 SDK or later and you want to compile ARM64 version of NSudo.
How to build all targets of NSudo
Run BuildAllTargets.bat
in Source/Native
.
How to modify or debugging NSudo
Open NSudo.sln
in Source/Native
.
Code style and conventions
- C++: C++ Core Guidelines
- C#: Follow the .NET Core team's C# coding style
For all languages respect the .editorconfig file specified in the source tree. Many IDEs natively support this or can with a plugin.
Copying files from other projects
The following rules must be followed for PRs that include files from another project:
- The license of the file is permissive.
- The license of the file is left intact.
- The contribution is correctly attributed in the License file in the repository, as needed.
How to update documents.
Refer to #29.
To build new docs, you'll need to have Node.js and
Yarn installed on your system, and run build.bat
in
Website
.
Docs engine is based on VuePress.