Projects/KNS2/Layout: Difference between revisions

From KDE TechBase
< Projects‎ | KNS2
(people surfing here will want to know where the heck the files are in plain English.)
 
(6 intermediate revisions by 2 users not shown)
Line 2: Line 2:


== Main ==
== Main ==
KNewStuff 2 will have all its files in one dir, one for each app using it. Default will be KStandardDirs::locate("appdata", "newstuff").
KNewStuff 2 will have all its files in one sub-directory tree, one treebranch for each app using it. Default will be KStandardDirs::locate("appdata", "addons").


To initialize it call [[../Bundler|Bundler::initLayout(QString dir)]];
Typically this is /???
 
To initialize it call [[../Handler|Handler::initLayout()]];
 
'''NOTE:''' .desktop (metadata) files will be copied in $KDEHOME/services/. You can use KTrader to locate them.
 
They will be namespaced this way:
$appname-$pkgname-$pkgversion-addon.desktop
 
Packages will be renamed as:
$pkgname-$pkgversion.kns
 
And the file containing release notes will be called
$pkgname-$pkgversion.txt


== Layout ==
== Layout ==
The following layout will be used:
The following layout will be used:


* newstuff/ ''<-- Note: this name may change''
* '''addons/''' ''<-- Note: this name may change''
** installed-list ''<-- List of installed packages?''
** ''May we store here infos/configs that applies appwide?''
** ''May we store here infos/configs that applies appwide?''
** $packageName-$packageVersion/
** '''$packageName-$packageVersion/'''
*** metadata file (see the [[../Packager|packager section]] for additional informations)
*** metadata file (see the [[../Packager|packager section]] for additional informations)
*** (optional) Icon
*** (optional) Icon
*** (optional) Release notes for package
*** (optional) Release notes for package
*** $packageName/
*** '''$packageName/'''
**** <package content>
**** $file1
** $packageName2-$packageVersion2/
**** ...
** '''$packageName2-$packageVersion2/'''
*** metadata file
*** metadata file
*** (optional) Icon
*** (optional) Icon
*** (optional) Release notes for package2
*** (optional) Release notes for package2
*** $packageName2/
*** '''$package2Name/'''
**** <package2 content>
**** $file1
**** ...
** '''Packages/'''
*** package.kns
*** package2.kns
** ...
** ...

Latest revision as of 13:59, 29 September 2015

Warning
Things you see here are work in progress. Please don't trust them.


Main

KNewStuff 2 will have all its files in one sub-directory tree, one treebranch for each app using it. Default will be KStandardDirs::locate("appdata", "addons").

Typically this is /???

To initialize it call Handler::initLayout();

NOTE: .desktop (metadata) files will be copied in $KDEHOME/services/. You can use KTrader to locate them.

They will be namespaced this way: $appname-$pkgname-$pkgversion-addon.desktop

Packages will be renamed as: $pkgname-$pkgversion.kns

And the file containing release notes will be called $pkgname-$pkgversion.txt

Layout

The following layout will be used:

  • addons/ <-- Note: this name may change
    • installed-list <-- List of installed packages?
    • May we store here infos/configs that applies appwide?
    • $packageName-$packageVersion/
      • metadata file (see the packager section for additional informations)
      • (optional) Icon
      • (optional) Release notes for package
      • $packageName/
        • $file1
        • ...
    • $packageName2-$packageVersion2/
      • metadata file
      • (optional) Icon
      • (optional) Release notes for package2
      • $package2Name/
        • $file1
        • ...
    • Packages/
      • package.kns
      • package2.kns
    • ...