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

Make Kiview a KDE project ? #6

Open
meven opened this issue Apr 21, 2024 · 5 comments
Open

Make Kiview a KDE project ? #6

meven opened this issue Apr 21, 2024 · 5 comments
Assignees

Comments

@meven
Copy link

meven commented Apr 21, 2024

Hi i am a Dolphin co-maintainer, and congratulate you for you efforts and nice implementation of Kiview.

Have you considered make Kiview a KDE project ?

We have a process to integrate projects into KDE community, more info at:
https://develop.kde.org/docs/getting-started/add-project/
I would volunteer to act as your sponsor helping going through the steps and advocating for Kiview.

The code looks nice, and it could be integrated natively into dolphin and be be part KDE Gear and shipped to a wide user base.
It would go through some review and improvements, move to invent.kde.org etc...

How do you feel about that ?

@Nyre221
Copy link
Owner

Nyre221 commented Apr 22, 2024

congratulate you for you efforts and nice implementation of Kiview.

Thanks!

Have you considered make Kiview a KDE project ?
We have a process to integrate projects into KDE community, more info at:
https://develop.kde.org/docs/getting-started/add-project/

I have tried in the past and become a little familiar with the process, but I got overwhelmed and decided to continue it on my own instead of abandoning it.

I'm not a C++ developer and it's quite a climb starting from almost 0 knowledge to making it an official KDE project.

I would volunteer to act as your sponsor helping going through the steps and advocating for Kiview.

Thank you so much, that would be fantastic.

The code looks nice, and it could be integrated natively into dolphin and be be part KDE Gear and shipped to a wide user base.
It would go through some review and improvements, move to invent.kde.org etc...

What should I do now since I put Kiview on flathub?

How do you feel about that ?

I would love to make Kiview a KDE project given enough time.
As I said, I'm still inexperienced and I want to go slowly.

If you want, I can put Kiview on invent.kde.org, but I would prefer to stick to GitHub for now until there is not a better way to integrate Kiview with Dolphin (via Dbus or shortcut).
Flathub gets the code from github and I would prefer to avoid having to update two repositories.

Thank you so much for this opportunity.

edit:

Question: how do you think it is best to integrate Kiview into dolphin?

I want to make a feature request and I would like to know if it is easier to implement a specific shortcut for Kiview in Dolphin and improve the servicemenus, or continue with Dbus.

@Nyre221 Nyre221 self-assigned this Apr 22, 2024
@meven
Copy link
Author

meven commented Apr 22, 2024

congratulate you for you efforts and nice implementation of Kiview.

Thanks!

Have you considered make Kiview a KDE project ?
We have a process to integrate projects into KDE community, more info at:
https://develop.kde.org/docs/getting-started/add-project/

I have tried in the past and become a little familiar with the process, but I got overwhelmed and decided to continue it on my own instead of abandoning it.

That's fair, here I am proposing to help you in the process and we can go as you want.

I'm not a C++ developer and it's quite a climb starting from almost 0 knowledge to making it an official KDE project.

You can what mountain climbers do, go slowing, dividing the steps into smaller individual tasks until you can achieve what you want.
Part of our review process is to teach each others. We don't expect contributors to read all of wiki pages or our API documentation, you learn the skills you need over time.
An official KDE App project always starts the same way.
Also KiView is quite atomic in the feature it provides, it previews files in a simplistic UI, this is not like a upper-dupper power app, that somewhat limits its complexity.
All of KDE is built in the open mostly by volunteers based on the time they can spare for KDE and as long as they enjoy it.

Give yourself some credit, you made a python app then in a few months you re-implemented it with C++/Qt/Qml learning all that was necessary by yourself (or mostly I am guessing).

There is such a thing imposter syndrome, that all FOSS contributors have to face sooner or later.

You can read this awesome post:
https://www.volkerkrause.eu/2022/08/29/kde-20-year-contribution-anniversary.html
I learned C++ myself to get into KDE development, and could right a similar story.
And so can you become a KDE developper.

And you can choose how much time you are willing to spend on it.

I would volunteer to act as your sponsor helping going through the steps and advocating for Kiview.

Thank you so much, that would be fantastic.

The code looks nice, and it could be integrated natively into dolphin and be be part KDE Gear and shipped to a wide user base.
It would go through some review and improvements, move to invent.kde.org etc...

What should I do now since I put Kiview on flathub?

At some point you would just change the url repo on flathub.
But my goal is for users not to need flathub in the first place, since kiview would be bundled by distros.
We can make Kiviiew more secure by default (using seccomp API), but that's not an immediate concern.

How do you feel about that ?

I would love to make Kiview a KDE project given enough time. As I said, I'm still inexperienced and I want to go slowly.

That's perfectly understandable.

What I suggest we do, is:

Once that's done, we can start working towards integrating it in dolphin.
At some point later you will be able to update the flathub url.

If you want, I can put Kiview on invent.kde.org, but I would prefer to stick to GitHub for now until there is not a better way to integrate Kiview with Dolphin (via Dbus or shortcut). Flathub gets the code from github and I would prefer to avoid having to update two repositories.

The thing is, I would like to review and contribute to it but I'd rather do it on invent.kde.org...
A chicken and egg-problem.
With git syncing repositories is pretty easy, like we have kde project mirrors on github.

Once kiview is on invent, it becomes a KDE community project we can share its maintenance and development.

Thank you so much for this opportunity.

You made it yourself, making a project so interesting that the KDE community would at a loss if we didn't reach for you !

We would have welcome this endeavor for a newcomer in the KDE community. But starting on its own is fine too.

edit:

Question: how do you think it is best to integrate Kiview into dolphin?

I want to make a feature request and I would like to know if it is easier to implement a specific shortcut for Kiview in Dolphin and improve the servicemenus, or continue with Dbus.

Well, the first thing that's missing in Kiview, I feel, is a command line mode, where you just kiview my-pic.jpg.
Once that's done we can already integrate it in Dolphin invoking it directly and detect whether it is installed or not.

Whether we use DBus depends on whether adding it is worth the complexity addition. For dolphin native-shortcut use-case that's not necessary.
Dolphinbridge kind-a hacks around the restriction that dolphin doesn't let applications easily know which file is selected on purpose. Because it is such a snooping app dream. We don't need it, if dolphin launches kiview.

Then, later, we might want to provide an API, so that applications can invoke Kiview in a modal window for instance. It would be better integrated in Dolphin than a external app. It could even be used in KMail, krusader, KIO (in the filepicker), ark, or plasma. All the places we have files basically we can potentially make use of it.

By the way, you don't need to have a project name starting with a K. The presence of a k letter is neither mandatory or a advantage. Moving the project to KDE would a opportunity to pick another name of your choosing. It could be named shark-viewer (pun intended in relation with dolphin) or whatever.

@Nyre221
Copy link
Owner

Nyre221 commented Apr 22, 2024

You can what mountain climbers do, go slowing, dividing the steps into smaller individual tasks until you can achieve what you want.
Part of our review process is to teach each others. We don't expect contributors to read all of wiki pages or our API documentation, you learn the skills you need over time.

I agree with you. I've always had a bit of a problem with wanting to do everything at once and not dividing the workload into steps.

From now on, in fact, I want to go much slower than what I did in the first months when I rewrote the program in C++.

What I suggest we do, is:
You or I create a fork repo on invent.kde.org for kiview.
You create a KDE Identity (https://identity.kde.org/index.php?r=registration/index). It is a single-sign-on with our wiki and more.
you read the KDE community manifesto and make sure you adhere with it.

The thing is, I would like to review and contribute to it but I'd rather do it on invent.kde.org...

I put the code on Invent and made the incubation request:
https://invent.kde.org/danagost/Kiview/-/issues/1

With git syncing repositories is pretty easy, like we have kde project mirrors on github.

From what I understand Kiview will undergo many changes in the future and so I was thinking that maybe it's better to keep it separate for now (if that's not a problem). In this way, the flatpak version will be able to continue to work even on older versions of Plasma until all users have switched to a more updated version with Kiview incorporated into dolphin.

well, the first thing that's missing in Kiview, I feel, is a command line mode, where you just kiview my-pic.jpg.

This is very easy to do.

By the way, you don't need to have a project name starting with a K. The presence of a k letter is neither mandatory or a >advantage. Moving the project to KDE would a opportunity to pick another name of your choosing. It could be named >shark-viewer (pun intended in relation with dolphin) or whatever.

Personally I like the name Kiview (Kirigami + View), but if I had to choose another name, I think something more self-explanatory like QuickView or QuickLook would be better for clarity.
It probably doesn't matter if Kiview becomes a modal window.

That's fair, here I am proposing to help you in the process and we can go as you want.

I'm really happy about this!

In the next few days I will see what changes I need to make to the Kiview source code to comply with the rules. Since I already tried some time ago to put it on invent, I have already written the licenses and other things.
https://community.kde.org/Policies

I have also read the manifesto and plan to use KDE bugzilla for bug tracking.

@meven
Copy link
Author

meven commented Apr 23, 2024

From what I understand Kiview will undergo many changes in the future and so I was thinking that maybe it's better to keep it separate for now (if that's not a problem). In this way, the flatpak version will be able to continue to work even on older versions of Plasma until all users have switched to a more updated version with Kiview incorporated into dolphin.

flatpack can grab the code from any git repository, this is not at all tied to github.
You can maintain the flatpack from the invent repo.

@Nyre221
Copy link
Owner

Nyre221 commented Apr 23, 2024

You can maintain the flatpack from the invent repo.

I was referring more to the fact that the version on invent will lose dolphinbridge and that sort of hack with which it integrates with dolphin.

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