Recent

Author Topic: Online Package Manager  (Read 839951 times)

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4467
  • I like bugs.
Re: Online Package Manager
« Reply #795 on: April 12, 2017, 03:10:45 pm »
I'm aware that the update column/button is somewhat confusing. Initially I only wanted a central repository + a tool to easily update the repository. Unfortunately this raises a few security issues...
I was against this illogical mixture of different design ideas already before you implemented it.
The main design idea of this Online Package Manager was to have manual admin inspection for all included packages, as opposed to automatic systems like Delphinus.
It requires that package authors have an easy way to deliver their packages to be inspected and included. I think that goal is achieved.
The update feature becomes still less usefull when a new version can be easily delivered.
It is still not too late to remove this confusing update feature. The OPM would become logical, straightforward, simple and intuitive.
« Last Edit: April 13, 2017, 12:34:47 am by JuhaManninen »
Mostly Lazarus trunk and FPC 3.2 on Manjaro Linux 64-bit.

wp

  • Hero Member
  • *****
  • Posts: 11916
Re: Online Package Manager
« Reply #796 on: April 12, 2017, 03:26:09 pm »
No, I am perfectly fine with the OPM update system as it is now - now that I understood how it is working. And even if that particular issue with packages not originally installed from the main respository would not be resolved. The good thing is: it is almost no effort for the package maintainer to provide updates. And it is no effort at all for an "OPM manager". If we would give up this I'll bet that OPM will see the same fate as CCR: initially everybody is excited, but it will be devastated after a few years.

balazsszekely

  • Guest
Re: Online Package Manager
« Reply #797 on: April 12, 2017, 05:13:48 pm »
Quote
@JuhaManninen
It is still not too late to remove this confusing update feature. The OPM would become logical, straightforward, simple and intuitive.
If needed, I can remove it in a few minutes. I only need to hide the update column/button, prevent the update thread to start, hide a few item in the option dialog and that's all there is to it. However it would be a shame, I spent way to much time to implement it and other people to test it. It works reasonably well, few issues still need to be fixed though. It's only confusing until you read the wiki page, I will also add a video soon where I will try to explain the update system in details. For now we should focus our effort to link the two package system together. This should be optional though, some of the developers did not like the idea. I also saw that @Joost is working on fppkg, it would be interesting to include some of the features of fppkg into OPM, like the possibility to install fpc packages too?

@wp
I've tried everything, unfortunately I cannot reproduce the issue. This is an elusive bug. As a last attempt please try the following:
1. Close lazarus
2. Delete everything from the config folder. Under windows, typically is located at: C:\Users\%USERNAME%\AppData\Local\lazarus\onlinepackagemanager\config\
3. Start Lazrus/OPM again

wp

  • Hero Member
  • *****
  • Posts: 11916
Re: Online Package Manager
« Reply #798 on: April 12, 2017, 05:23:48 pm »
As a last attempt please try the following...
No chance... Same issue.

But as I said above, I can live with it, and it looks as if I am the only one having this minor bug. So problem for me if you stop here.

CharlyTango

  • New Member
  • *
  • Posts: 48
Re: Online Package Manager
« Reply #799 on: April 20, 2017, 11:29:38 am »
Hi

i tried OPM with Lazarus trunk and it worked like i expected.

Synchronizing different Lazarus installations with the same packages works like a charm. Some clicks and a cup of coffee later its done.
But I've got a handful of unofficial or paid packages and want to install them in the same way. Is there any possibility to include my own packages in the OPM install process?
It would save a lot of time installing packages if there are some conveniant options.


Regards
K.

Lazarus stable, Win32/64

balazsszekely

  • Guest
Re: Online Package Manager
« Reply #800 on: April 20, 2017, 01:16:46 pm »
@CharlyTango
Quote
i tried OPM with Lazarus trunk and it worked like i expected.
Synchronizing different Lazarus installations with the same packages works like a charm. Some clicks and a cup of coffee later its done.
I'm glad it's working.  :)

Quote
But I've got a handful of unofficial or paid packages and want to install them in the same way. Is there any possibility to include my own packages in the OPM install process?
It would save a lot of time installing packages if there are some conveniant options.
Support for private repositories it's not fully implemented yet. However if you don't mind concatenate a few JSONs, you can create your own private repository. Please do the following:
1. Create one or more repository package. OPM will generate for each package a .zip and a .json file.
2. Concatenate the JSONs and create a single big JSON. Rename it to packagelist.json
3. Copy all the zip files and the packagelist.json to your server.
4. Set up the address for the private repository
5. Select the remote repository in the option dialog

PS: I decided to make a small video, hope it helps: https://youtu.be/oxCArRUiKm8

CharlyTango

  • New Member
  • *
  • Posts: 48
Re: Online Package Manager
« Reply #801 on: April 20, 2017, 02:41:29 pm »

Support for private repositories it's not fully implemented yet. However if you don't mind concatenate a few JSONs, you can create your own private repository. Please do the following:
1. Create one or more repository package. OPM will generate for each package a .zip and a .json file.
2. Concatenate the JSONs and create a single big JSON. Rename it to packagelist.json
3. Copy all the zip files and the packagelist.json to your server.
4. Set up the address for the private repository
5. Select the remote repository in the option dialog

PS: I decided to make a small video, hope it helps: https://youtu.be/oxCArRUiKm8

Thanks a lot -- especially the video made it clear.
I will try it on the weekend.  :)
Lazarus stable, Win32/64

lainz

  • Hero Member
  • *****
  • Posts: 4468
    • https://lainz.github.io/
Re: Online Package Manager
« Reply #802 on: April 30, 2017, 05:31:12 am »
Hi GetMem, I've optimized the speed and functionality of the Lazarus Packages website.

Now:
- It uses Bootstrap 4 instead of Material Design Lite (MDL is really slower)
- It uses AngularJS to fill the site and do the search / get the json file

Fixes:
- If any field is empty is not shown
- The categories that are not used are not displayed, and if you add new categories are added automatically (get categories from JSON)
- It shows the Home Page of each package
- The search and categories are separated, so you can pick a category and do a search in that category or simply filter by category or search independently

Download it here:
https://github.com/lazarusccr/LazarusPackagesRepository

x2nie

  • Hero Member
  • *****
  • Posts: 515
  • Impossible=I don't know the way
    • impossible is nothing - www.x2nie.com
Re: Online Package Manager
« Reply #803 on: April 30, 2017, 08:25:16 am »
Hi GetMem, I've optimized the speed and functionality of the Lazarus Packages website.

Download it here:
https://github.com/lazarusccr/LazarusPackagesRepository
I go to http://packages.lazarus-ide.org
and no any picture there.
If picture eat bandwidths too much , maybe we can store pictures somewhere else, such in github or sourceforge (used as pics storage).
I think one picture will talks more better than 500 words of description.
When you were logged in, you can see attachments.
Lazarus Github @ UbuntuCinnamon-v22.04.1 + LinuxMintDebianEdition5

balazsszekely

  • Guest
Re: Online Package Manager
« Reply #804 on: April 30, 2017, 09:34:35 am »
Hi lainz,

Quote
I've optimized the speed and functionality of the Lazarus Packages website.

Now:
- It uses Bootstrap 4 instead of Material Design Lite (MDL is really slower)
- It uses AngularJS to fill the site and do the search / get the json file

Fixes:
- If any field is empty is not shown
- The categories that are not used are not displayed, and if you add new categories are added automatically (get categories from JSON)
- It shows the Home Page of each package
- The search and categories are separated, so you can pick a category and do a search in that category or simply filter by category or search independently
Thank you! It's indeed faster.

I updated the files. I noticed the license is truncated in a few places(ex: ACS - Audio Components Suite). Is this intentional? I also left the old one for a few days for comparison:
New: http://packages.lazarus-ide.org/
Old:  http://packages.lazarus-ide.org/old

Please test!

balazsszekely

  • Guest
Re: Online Package Manager
« Reply #805 on: April 30, 2017, 09:40:18 am »
Quote
I go to http://packages.lazarus-ide.org and no any picture there. If picture eat bandwidths too much , maybe we can store pictures somewhere else, such in github or sourceforge (used as pics storage). I think one picture will talks more better than 500 words of description.

Hi x2nie,

What pictures do you have in mind? I mean those are lazarus packages, what picture do you wish to associate whit each package so it will be more descriptive then the actual description? Or perhaps I misunderstand you?

lainz

  • Hero Member
  • *****
  • Posts: 4468
    • https://lainz.github.io/
Re: Online Package Manager
« Reply #806 on: April 30, 2017, 04:54:51 pm »
Hi lainz,

Thank you! It's indeed faster.

I updated the files. I noticed the license is truncated in a few places(ex: ACS - Audio Components Suite). Is this intentional? I also left the old one for a few days for comparison:
New: http://packages.lazarus-ide.org/
Old:  http://packages.lazarus-ide.org/old

Please test!

HI, the truncation of license is intentional, up to 200 characters. But if is not so good we must find a way to don't display it fully or when the user requests it, else it does a bigger page height for each package just for license displaying.

I forget to add <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">
So it looks fine on mobile devices, but should not be a problem since this website is not aimed for mobiles.

Another thing to be fixed is the mixed content, now seems that we have https, just change a line:

const packages_json = 'http://packages.lazarus-ide.org/packagelist.json';
to
const packages_json = 'packages.lazarus-ide.org/packagelist.json';
or
const packages_json = '/packagelist.json';

so it works on http and also on https

Edit: all these changes are now on the repository, just download it again. If the const doesn't work just change it in order to work with http and https.
« Last Edit: April 30, 2017, 05:01:37 pm by lainz »

balazsszekely

  • Guest
Re: Online Package Manager
« Reply #807 on: May 01, 2017, 07:09:14 am »
Quote
Edit: all these changes are now on the repository, just download it again. If the const doesn't work just change it in order to work with http and https.
Updated. Thanks again for your help @lainz.

lainz

  • Hero Member
  • *****
  • Posts: 4468
    • https://lainz.github.io/
Re: Online Package Manager
« Reply #808 on: May 02, 2017, 01:26:23 am »
Quote
Edit: all these changes are now on the repository, just download it again. If the const doesn't work just change it in order to work with http and https.
Updated. Thanks again for your help @lainz.

I learned to do that kind of stuff this last months :) I need to do something back to Lazarus, I learned a lot on this forum.

lainz

  • Hero Member
  • *****
  • Posts: 4468
    • https://lainz.github.io/
Re: Online Package Manager
« Reply #809 on: May 06, 2017, 11:56:50 pm »
Hi GetMem, I've added a small but useful thing to this website, is search highlight, so the text anyone inputs in the search field will be highlighted in each component result:
https://github.com/lazarusccr/LazarusPackagesRepository

A note: the search will look somewhat slower than without the highlight, the plugin is not doing the page slow, but I've set 250 milliseconds between the last character you type before triggering the search, so it in fact uses less resources, and the highlighter can be used with no problems with words of any length.

If is not a great idea just keep the site as is now.

 

TinyPortal © 2005-2018