[Discontinued] Nit - A Windows Image Tweaker based on DismCore

Discussion in 'Windows 10' started by Mouri_Naruto, Aug 20, 2019.

  1. Mouri_Naruto

    Mouri_Naruto MDL Developer

    Jul 10, 2014
    525
    1,791
    30
    #1 Mouri_Naruto, Aug 20, 2019
    Last edited: Sep 6, 2021
  2. DukiSync

    DukiSync MDL Junior Member

    May 12, 2010
    86
    31
    0
    Full support, I can't wait for the first version of the app to appear!
     
  3. EXO56

    EXO56 MDL Member

    Mar 22, 2013
    183
    250
    10
    DismCore++ sounds better imho. (a logical suite for Dism++)
    Just a suggestion. Your program, your decision!
    Thanks for everything btw!
     
  4. Mouri_Naruto

    Mouri_Naruto MDL Developer

    Jul 10, 2014
    525
    1,791
    30
    "DismCore++" is a candidate name of this project. But I don't use that because I don't want to relate this project with DismCore only.

    Nit will cross platform if I have free time in the future.
    (For example, it may not only a dismcore frontend for Windows, but also a apt/yum/pacman frontend for Linux.)

    I may create my patron account in the future. If I can earn money from donation, and it's enough for me to live comfortablely, it will be my full-time job.

    Mouri
     
  5. Mouri_Naruto

    Mouri_Naruto MDL Developer

    Jul 10, 2014
    525
    1,791
    30
    Something about Nit

    Reference
    Status
    • mingkuang told me he don't think using DismCore interface is a good choice because of the unstable interface ABI. (mingkuang found that Microsoft had changed the DismCore old interface in Windows 8.1 and Windows 10. He told me CBS interface ABI is very stable to use. I can understand that because I know Microsoft need to support old version of Windows, so the servicing stack interface ABI need to be stable. I also discovered the downlevel CSI or WCP interfaces, but it has an unstable interface ABI.) So Nit still has lots of things to do.
    • If I have free time, I will rewriting the implementation of CompactOS in Dism++ and move them to NCleaner.dll. But I will implement them in Nit first and make it open source. NCleaner.dll will also be rewritten and implemented in Nit first.
    Kenji Mouri
     
  6. Mouri_Naruto

    Mouri_Naruto MDL Developer

    Jul 10, 2014
    525
    1,791
    30
  7. Mouri_Naruto

    Mouri_Naruto MDL Developer

    Jul 10, 2014
    525
    1,791
    30
    The relationship between Nit and NSudo

    Nit is based on the NSudo Shared Library (NSudoAPI). I hope it will be a good example for developers to learn how to use NSudoAPI.

    NSudo Shared Library has implemented two interfaces called INSudoMemoryManager and INSudoClient.

    I thought I will add INSudoFileManager and INSudoRegistryManager in the NSudo Shared Library because the following reasons.
    • I think it's useful for developers to operate files and registry keys without the worries about the permission denied issue in the most cases if I have added that.
    • Shared implementations between NSudo and Nit.
    • NSudo will introduce a new component called NSudoX in the future. NSudoX will be single file executable if there is no special reasons. NSudoX is a file and registry manager because I know many users love the MiniFM in the old versions of NSudo. I want to provide a powerful solution for advanced users, lol.

    Kenji Mouri
     
  8. Mouri_Naruto

    Mouri_Naruto MDL Developer

    Jul 10, 2014
    525
    1,791
    30
    The farewell announcement for Nit

    Nit will be replaced by NSudo's Mouri Optimization Plugin. Here are the reasons.

    I really love the monorepo style, so I wonder to build the great NSudo project and find the way to continue to add features for the future years. I hope NSudo will be a powerful toolchain with multiple standalone components for the system administrators. I always wonder to build a toolkit as similar as the Sysinternals Suite, but the main development theme of NSudo is launching apps with different environments, or build the ecosystem based on NSudo Launcher.

    Also, mingkuang hasn't gave up the development of DISM++, I really don't want to develop a project as similar as mingkuang created if he still want to maintain it, because mingkuang and I are friends since early 2014. I have the permission to use the source code created by him in my project because he trusts me and think I am a reliable man, but I never use them until he make those open source to GitHub. I hope to help mingkuang to maintain DISM++ with NSudo. The relationship between NCleaner.dll in DISM++ and Mouri Optimization Plugin in NSudo is more similar as .NET Framework and .NET Core. Also, NSudo is the first third-party project which using the VC-LTL officially and mingkuang will use source code of NSudo as unit test of VC-LTL in the future, so this is why I also can help him to improve VC-LTL.

    Kenji Mouri

    Notes which help for understand this announcement
    • A monorepo is a single repository that stores all of your code and assets for every project.
    • VC-LTL is the open source modified MSVC runtime which can make developers link their binaries to msvcrt.dll or ucrtbase.dll with using the latest stable version of MSVC toolchain (for example, the 14.29.30133) and modern STL features (for example, C++17, even C++20). The major task of mingkuang is maintaining the VC-LTL because the company he worked for uses it in the whole product line. This is why the development of DISM++ is not very active and he is very busy.