Community
    • Login

    New Plugins Home (where Notepad++ will load from)

    Scheduled Pinned Locked Moved Notepad++ & Plugin Development
    79 Posts 22 Posters 104.5k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • donhoD
      donho @Meta Chuh
      last edited by

      @Meta-Chuh

      grey out “Don’t use %APPDATA%” if the selected path matches %PROGRAMFILES% or %PROGRAMFILES(X86)%

      I will see what I can do about it.

      The 2nd point will be solved in the next release (see new schema of the first post).

      Meta ChuhM 1 Reply Last reply Reply Quote 3
      • Meta ChuhM
        Meta Chuh moderator @donho
        last edited by

        @donho

        thanks a lot, much appreciated
        your edit (28 November 2018) looks perfect, clean and straight forward

        so if i’m correct, you can and will remove ${If} $arePlugins4AllUsers == “true” and all pluginsForAllUsers.xml sections
        as they are not necessary for anything anymore, correct ?
        if yes, it’s a perfect cleanup

        greetings
        MetaChuh

        donhoD 1 Reply Last reply Reply Quote 3
        • donhoD
          donho @Meta Chuh
          last edited by

          @Meta-Chuh said:

          so if i’m correct, you can and will remove ${If} $arePlugins4AllUsers == “true” and all pluginsForAllUsers.xml sections
          as they are not necessary for anything anymore, correct ?
          if yes, it’s a perfect cleanup

          Yes, they are not necessary anymore. I will do a clean up

          1 Reply Last reply Reply Quote 2
          • donhoD
            donho
            last edited by

            FYI: The 1st post of this thread has been updated: new plugin list locations are added.

            1 Reply Last reply Reply Quote 4
            • OldMcWebO
              OldMcWeb
              last edited by

              Hi,
              im new here and like to contribute some thoughts from a user perspective.

              In the current case as a user I get the changelog with a link to https://notepad-plus-plus.org/features/plugin-admin.html
              Then I start searching for the PluginAdmin, found out that i need admin privileges.
              That’s a debatable move, but ok I can understand the thoughts behind.
              Then I found that my plugins are under the admin profile AppData.
              Ok makes sense to me, but now i find this thread telling me that things will totally change in the next release again.

              As a idea:

              • Make it configurable where your plugins are stored. Maybe from the setup and in an config file.

              • Put more Info for this changes in the changelog, the link to https://notepad-plus-plus.org/features/plugin-admin.html
                helps but is only a part of the solution

              • Maybe add a menu item in [?] -> GotoPluginFolder

              Don’t get me wrong, I don’t want to criticize your hard work, but I like to show that the last update was very confusing for probably lot of users.

              1 Reply Last reply Reply Quote 1
              • MrOuzoM
                MrOuzo
                last edited by

                I use Notepad++ many years, with many plugins and config files. I have 2 points to store all Programm ,plugins and configuration… now i have so sort and show to all config and whatever that it comes into the right location… its a bad thing and i stay on lower than 7.6. so i know it works.
                If its a new installation and you have no good working configuration, i say its ok to install this new worst admin plugin. For a updated install its better to use all the locations as is it… for every dll-plugin a directory with his own name…brrrr

                1 Reply Last reply Reply Quote 0
                • Marc66M
                  Marc66
                  last edited by

                  It took me forever to get back to a working configuration after the Plugin folder and approach changed in 7.6. I was able to install 2 additional plugins manually, because installation from the plugin admin doesn’t work (it just freezes and never completes). I ran plugin admin and saw there were updates, so I updated them and it simply removed them.

                  Why break something that has been working for years?

                  I searched for an alternative and happily moved to PSPad: lightweight and has compare and hex viewer feature out of the box. I’m done with Notepad - -

                  OldMcWebO 1 Reply Last reply Reply Quote 0
                  • OldMcWebO
                    OldMcWeb @Marc66
                    last edited by

                    @Marc66 Well things change and change is not a bad thing.
                    But this change hits the user a bit unprepared.

                    PSPad … naaaa…Closed source is not a option for me.

                    1 Reply Last reply Reply Quote 0
                    • Stan PetitS
                      Stan Petit
                      last edited by

                      Hi all.
                      Could you write something clear about the future of NPP-PORTABLE-VERSION, in regard to the new plugins location strategy?
                      To keep the Plugins Menu list “as minimal as can be”, I got the habit to run several portable Notepad++ in parallel : no use to load plugins that are not necessary.
                      So, what about the ability to run different configurations of Notepad++ depending on the project ?
                      Best, Stan.

                      Meta ChuhM 1 Reply Last reply Reply Quote 0
                      • Meta ChuhM
                        Meta Chuh moderator @Stan Petit
                        last edited by

                        @Stan-Petit

                        everything stays within the np++ portable folder in the future too
                        the only thing that changed since 7.6 ist that you have to have a subfolder for the dlls inside the plugin folder

                        example for versions below 7.6:
                        <NPP_INST_DIR>\plugins\MyPlugin.dll

                        example for 7.6 onwards:
                        <NPP_INST_DIR>\plugins\MyPlugin\MyPlugin.dll

                        very important: you can put the portable version’s folder anywhere (usb drive, desktop, etc.) but not inside C:\Program Files or C:\Program Files (x86) but this restriction has been the same in older versions too

                        also please have a look again at the first post:

                        Notepad++ loads plugins from: <NPP_INST_DIR>\plugins\
                        plugins list dir : <NPP_INST_DIR>\plugins\Config\
                        plugins’ config dir: <NPP_INST_DIR>\plugins\config\
                        because Notepad++ installed on: wherever (except in %PROGRAMFILES%\Notepad++) with doLocalConf.xml

                        1 Reply Last reply Reply Quote 3
                        • Meta ChuhM
                          Meta Chuh moderator @Meta Chuh
                          last edited by

                          @Meta-Chuh said:
                          currently we have to answer these scenarios again and again:
                          …
                          possible solutions:
                          grey out “Don’t use %APPDATA%” if the selected path matches %PROGRAMFILES% or %PROGRAMFILES(X86)%

                          @donho
                          btw: thanks for your commit
                          (Make installer more coherent for the option doLocalConf.xml) 👍

                          very much appreciated

                          1 Reply Last reply Reply Quote 1
                          • ldlxL
                            ldlx
                            last edited by

                            This is a security nightmare!

                            All users are allowed to write new files (and so DLLs) to programdata, but only the creator-owner is allowed to change a file by default. So updates of a plugin can be installed by the user that installed the plugin or by an account that as administrator priviligues. And every user is allowed to install new plugins for all users. Is this really the intended behaviour or will the Notepad++ installer change the NTFS right so that only users with administrator priviligues are allowed to install plugins/updates?

                            Meta ChuhM donhoD 2 Replies Last reply Reply Quote 0
                            • Meta ChuhM
                              Meta Chuh moderator @ldlx
                              last edited by

                              @ldlx

                              And every user is allowed to install new plugins for all users.

                              not true, you need to have administrator rights to install plugins via plugins admin.

                              furthermore it was the wish of almost all it pro’s within this community to have a single plugin location for all users instead for each user manually, as they need it for a simple and quick deployment.

                              ldlxL 1 Reply Last reply Reply Quote 0
                              • dinkumoilD
                                dinkumoil
                                last edited by dinkumoil

                                @Meta-Chuh

                                I have to second @ldlx . What he wants to point out is that every user can drop new e.g. DLL files in any subdirectory of %ProgramData%. Normal Windows users are only prohibited to delete, change or overwrite already existing files which have been created by another user.

                                Thus it is indeed a security hole. Me and other people already pointed that out in the past. But it seems to be more important to be able to provide a Windows Store app (the reason for the whole plugin relocation) than to follow common security guidelines.

                                I already wrote down my thoughts to UWP (Windows Store) apps in this comment. When this specification has been designed, the author(s) had obviously not in mind that there could be apps with a plugin interface like Notepad++. This kind of apps is not suitable for UWP because they have no other choice than to store executable code (the plugins) in some kind of user profile which are unsecure locations.

                                Maybe Microsoft will change the UWP app specification somewhere in the future and will forbid to store executable code in unsecure locations. Then all the hassle we are faced with currently will be for nothing.

                                Meta ChuhM 1 Reply Last reply Reply Quote 3
                                • ldlxL
                                  ldlx @Meta Chuh
                                  last edited by ldlx

                                  @Meta-Chuh said:

                                  @ldlx

                                  And every user is allowed to install new plugins for all users.

                                  not true, you need to have administrator rights to install plugins via plugins admin.

                                  EVERY USER can store files to programdata. But only the creator-owner can change/save/delete files that he created.

                                  furthermore it was the wish of almost all it pro’s within this community to have a single plugin location for all users instead for each user manually, as they need it for a simple and quick deployment.

                                  There’s a good location where only administrator users can write - the folder where the program is stored in %programfiles% - only administrative users can write to that location.

                                  1 Reply Last reply Reply Quote 0
                                  • Meta ChuhM
                                    Meta Chuh moderator @dinkumoil
                                    last edited by

                                    @dinkumoil
                                    if you remember, the original proposed locations were both at %LOCALAPPDATA% and switchable to an all user installation at %PROGRAMDATA% or %PROGRAMFILES%
                                    but so many people (the ones who posted actively, not me) wanted it to be as it is now, simple and a single plugins folder for all users.

                                    now we have a situation where everyone originally wanted chocolate ice cream and now that it’s served they’d prefer vanilla.

                                    do you have an idea what’s best to do now ?

                                    ldlxL dinkumoilD 2 Replies Last reply Reply Quote 0
                                    • ldlxL
                                      ldlx @Meta Chuh
                                      last edited by

                                      @dinkumoil Windows Store Apps are provided on a per-user base - which are placed inside the user profile (afaik). It makes no sense to provide plugins on a per-machine base when the installation is on a per-user base.

                                      @Meta-Chuh said:

                                      @dinkumoil
                                      if you remember, the original proposed locations were both at %LOCALAPPDATA% and switchable to an all user installation at %PROGRAMDATA% or %PROGRAMFILES%
                                      but so many people (the ones who posted actively, not me) wanted it to be as it is now, simple and a single plugins folder for all users.

                                      now we have a situation where everyone originally wanted chocolate ice cream and now that it’s served they’d prefer vanilla.

                                      do you have an idea what’s best to do now ?

                                      keep it the same way as before:

                                      • users can install there plugins in %appdata% (or %localappdata%, but I believe it is %appdata%) - when “allowAppDataPlugins.xml” is present in the program files folder
                                      • all-users-plugins can be put in the program files-plugin folder.

                                      imho: it doesn’t make sense to install programs on a per-user base (UWP-apps) and to provide plugins to all users on a per-machine base (in %programdata%).

                                      1 Reply Last reply Reply Quote 0
                                      • dinkumoilD
                                        dinkumoil @Meta Chuh
                                        last edited by

                                        @Meta-Chuh @ldlx

                                        This is not a question of vanilla and chocolate ice cream.

                                        @donho was only willing to implement loading plugins from a specific user profile or from the AllUsers profile (the %ProgramData% directory). And the reason for the relocation of plugins is, that he wants to publish an UWP version of Notepad++, which requires in turn that the installation directory of that (future) app is immutable after its installation. That is what @donho said to that thing, I have to trust him because I don’t know anything about the details of UWP apps.

                                        I was even not involved in the discussion about “store plugins in %LocalAppData% or in %ProgramData%”. My most important point was, that it would be a bad idea to put the plugin list into a specific user profile. That would mean that only the user who has installed Notepad++ would have a plugin list.

                                        do you have an idea what’s best to do now ?

                                        What I always said: Forget this UWP app thing and revert plugin storage location back to the installation directory. But this will never happen. The only thing I can do is to try to influence the further development in such a way that it results in a product that is first and foremost convenient for me as a user and plugin developer.

                                        1 Reply Last reply Reply Quote 4
                                        • donhoD
                                          donho @ldlx
                                          last edited by

                                          @ldlx said:

                                          will the Notepad++ installer change the NTFS right so that only users with administrator priviligues are allowed to install plugins/updates?

                                          Yes, you are right about it. The right to add files of this folder should be Admin only, and this feature will be in the next release.

                                          donhoD 1 Reply Last reply Reply Quote 3
                                          • dinkumoilD
                                            dinkumoil
                                            last edited by dinkumoil

                                            @donho said:

                                            The right to add files of this folder should be Admin only, and this feature will be in the next release.

                                            So you will have to remove access rights inheritance from the directory %ProgramData%\Notepad++\plugins because the ability for normal users to write to this directory is inherited from the %ProgramData% directory. Does NSIS provide a feature to change that?

                                            If you remove access rights inheritance via Windows Explorer’s Properties dialog, you can choose to remove all existing inherited acces rights or to convert them into explicit access rights for the folder in question.

                                            If you choose the latter one, you have to delete unwanted access rights (the ones for owner/creator and normal users) after that. If you choose the first approach you have to carefully design and configure your own set of access rights for the directory.

                                            In all cases you have to activate inheritance of the newly set acces rights to files and directories inside the directory in question.

                                            1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post
                                            The Community of users of the Notepad++ text editor.
                                            Powered by NodeBB | Contributors