M2Team / Nsudo
Projects that are alternatives of or similar to Nsudo
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://m2team.github.io/NSudo.
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.
- [x] 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.
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.
- Install from here: http://visualstudio.com/downloads
- You also need install ARM and ARM64 components.
- Windows 10 version 1507 SDK or later.
- You need to change the Windows SDK version in the project properties if the version of Windows 10 SDK I used isn't installed on your PC.
- You also need install ARM and ARM64 components when you installing the Windows 10 Version 1703 SDK or later.
How to build all targets of NSudo
Run BuildAllTargets.bat
in src/Native
.
How to modify or debugging NSudo
Open NSudo.sln
in src/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 Readme file in the repository, as needed.
How to update documents.
Refer to https://github.com/M2Team/NSudo/pull/29.
To build new docs, you'll need to have Node.js and
Yarn installed on your system, and run build.bat
in
src/Documents
.
Docs will be built into docs
, where GitHub Pages treated as site root. So be
sure to commit docs
changes.
CI/CD is not included in this PR, so manual build is required after every docs
update. yarn dev
runs a local hot-reload-enabled docs server for easier
debugging.
Docs engine is based on VuePress.