Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Interested in making package available from Debian? #9

Open
petterreinholdtsen opened this issue Nov 6, 2019 · 12 comments
Open

Interested in making package available from Debian? #9

petterreinholdtsen opened this issue Nov 6, 2019 · 12 comments

Comments

@petterreinholdtsen
Copy link
Contributor

Hi

Are you interested in doing the work required to get this program into Debian? I am a Debian developer and can help make it happen. It is a lot easier if the upstream developer team is interested making it happen and willing to modify the program to integrate with Debian.

I have noticed a few things that will need to change for this to happen:

  • configuration file handling should look somewhere relative to ~/, not in cwd, for the settings
  • the reports/ direcotry should probably be stored in a fixed location relative to ~/.cache/, not in csd.
  • indexing of document content should work.
  • must include .desktop file for menu integration
  • should include manual page

These are probably relative small changes.

I already have draft Debian build rules, which will need some cleanup before it is ready for upload.

@oleliabo
Copy link
Collaborator

oleliabo commented Nov 6, 2019

Yes this is interesting! We are currently preparing v2 of the SW and part of that work is to package it for RPMs / RedHat Linux. I guess packaging for Debian has some similarities. So far the application has been tested on Win/Centos/OS-X, but only released for Win.

the reports/ directory should probably be stored in a fixed location relative to ~/.cache/, not in csd.

The reports dir is currently controlled by the config file, maybe creating a default Debian config file would solve this?

indexing of document content should work.

Yes, this is probably most complicated. We are currently using sphinx indexer. I assume this is already a Debian package. The indexer "server" is launched by the application and it feeds it with data using a sphinx-config file created by the application.

should include manual page

The .org file is maybe a good starting point?

@petterreinholdtsen
Copy link
Contributor Author

I recommend rewriting the configuration system to be multilevel, allowing configuration to be read from several files, one included in the package, perhaps one site spesific, one host spesific and one user spesific. This will allow maximum flexibility and control. I've looked at the code but am not done with such change. The idea is to look for settings in /usr/share/piql-insight/insight.conf, /etc/piql-insight/insight.conf and ~/.config/piql-insight/insight.conf, and use the last found setting.

As for writing a manual page, it is not too hard using for example txt2man.

I suggest we handle the missing indexing/search feature in #8, and have followed up there.

@oleliabo
Copy link
Collaborator

oleliabo commented Nov 6, 2019

I recommend rewriting the configuration system to be multilevel, allowing configuration to be read from several files, one included in the package, perhaps one site spesific, one host spesific and one user spesific.

OK, maybe QSettings can provide this: https://doc.qt.io/qt-5/qsettings.html#platform-specific-notes

petterreinholdtsen added a commit to petterreinholdtsen/insight that referenced this issue Nov 7, 2019
The code currently uses two different configuration files, the Qt
native one to store the directory used in QPersistantFileDialog and
DInsightReportWindow, and a INI file named insight.conf for everything
else.  The first use is kept unchanged, while the latter is changed
for non-Windows builds.  Windows configuration handling is kept
unchanged to stay compatible with the already released version.  On
non-Windows platforms the code is changed to look in /usr/share/,
/etc/ and ~/.config/ for insight.ini instead of looking for
insight.conf only in the current working directory.

This bring the program more in line with Linux Filesystem Hierarcy
standard on Unix.

Note, the Qt QSettings documentation state that the native file to
look for is named insight.conf, but at least on Linux the file used by
QPersistantFileDialog and DInsightReportWindow is insightrc.  The file
used by DInsightConfig is insight.ini after this change, thus keeping
the two configuration systems in two separeate files.

This change partly addresses issue piql#9.
@petterreinholdtsen
Copy link
Contributor Author

I noticed another platform specific hardcoding. The code starting the mail sending process is looking for outlook.exe. This should be generalized too.

@petterreinholdtsen
Copy link
Contributor Author

Btw, when will the RedHat port be publicly available? As I expect it to clean up most platform specific hardcoded values, I do not look into those myself to avoid duplicate work, and it would be useful to know when it is sensible to continue looking at this code.

@oleliabo
Copy link
Collaborator

Hello, I hope to release the beta of the next version in a couple of weeks.

I noticed another platform specific hardcoding. The code starting the mail sending process is looking for outlook.exe. This should be generalized too.

The mail app can be configured through the config file, default is perhaps outlook.

@petterreinholdtsen
Copy link
Contributor Author

petterreinholdtsen commented Nov 12, 2019 via email

@petterreinholdtsen
Copy link
Contributor Author

Hi. Do you have a timeline for when the new version will show up?

@oleliabo
Copy link
Collaborator

oleliabo commented Jan 7, 2020

We have picked it up again now, I hope within a week or two..

@petterreinholdtsen
Copy link
Contributor Author

I hope so too. In the mean time, I tried to build the wip/v1.1 branch on Debian Buster, and had to modify the qmake build rules a bit to get it working. The attached patch need more work, but gave me a insight binary. Unfortunately the binary do not work, but only pop up with a dialog box stating that it "Failed to load translation file: insight_nb.qm".

qmake-debian.diff.txt

@oleliabo
Copy link
Collaborator

oleliabo commented Jul 1, 2020

I have now merged wip/v1.1 into master and will release a new version for Windows 64bit tomorrow, since this is the current target platform for some customers. Ill try to incorperate Your patch as well then...

@oleliabo
Copy link
Collaborator

oleliabo commented Jul 3, 2020

Latest version is a step forward at least. It is compiled and tested on Ubuntu 18.04. The index.sh starts the indexer, change the insight.conf to point to it on Linux. (some examples are provided in the config file). The missing translation file can be created using update-translations.sh, starting the lupdate Qt tool that deals with localizations.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants