Need help with Kapidox - messes up my work
Hi everyone, can someone explain me how (not) to use Kapidox? I tried to build Okular class documentation with Kapidox, whether that is easier than with doxygen. So I followed the README on https://cgit.kde.org/kapidox.git/tree/README.md, and got a kapidox_generate in ~/kde/kapidox/src/. 'python setup.py install' and so on. Then I mkdir-cd-ed to html_kapidox/ in the okular base directory, and called kapidox_generate with the okular base directory as argument. Of course, html_kapidox/ was still empty. Results: It complained that it won’t draw graphs, Then it deleted the whole directory instead of building documentation. WTF? See below: david@doro:~/kde/src/konsole/html$ cd ~/Qt/okular david@doro:~/Qt/okular$ mkdir html_kapidox david@doro:~/Qt/okular$ cd html_kapidox/ david@doro:~/Qt/okular/html_kapidox$ ~/kde/kapidox/src/ka bash: /home/david/kde/kapidox/src/ka: No such file or directory david@doro:~/Qt/okular/html_kapidox$ ~/kde/kapidox/src/kapidox_generate .. 16:42:48 WARNING Missing Graphviz dependency: diagrams will not be generated. 16:42:48 DEBUG Found cached identities file at /home/david/.cache/kapidox/kde- accounts 16:42:49 INFO # Generating doc for Okular 16:42:50 INFO Running Doxygen 16:43:05 INFO # Rebuilding Okular for interdependencies Traceback (most recent call last): File "/home/david/kde/kapidox/src/kapidox_generate", line 110, in main() File "/home/david/kde/kapidox/src/kapidox_generate", line 106, in main copyright=kde_copyright) File "/home/david/kde/kapidox/src/kapidox/hlfunctions.py", line 126, in do_it shutil.rmtree(lib.outputdir) File "/usr/lib/python2.7/shutil.py", line 270, in rmtree onerror(os.rmdir, path, sys.exc_info()) File "/usr/lib/python2.7/shutil.py", line 268, in rmtree os.rmdir(path) OSError: [Errno 39] Directory not empty: '..' david@doro:~/Qt/okular/html_kapidox$ ls david@doro:~/Qt/okular/html_kapidox$ ls .. david@doro:~/Qt/okular/html_kapidox$ I had already run kapidox_generate in other project directories, where it only generated an index.html with some blue navigation bars (like on api.kde.org). This is probably not the intended behaviour. Am I stupid? If yes/no/else: What am I doing wrong? Which information do you need to help? Cheers, David
Automatic scrolling when dragging in views
Hi everyone, in https://phabricator.kde.org/T11093#192549 (Consistency, one of the goal proposals for this year) I presented a small overview of different auto scrolling behaviours across KDE applications. - Some views already start auto scrolling when you drag something inside them /near/ the edges, others start when you drag /beyond/ the edges. - Some views do fast autoscrolling, others slow. - Some views scroll pixel-wise, others item-wise. - Some views scroll with 60 fps, others with 33 fps... Does someone know more about this topic (implementation details, intentions,...)? Would it make sense to define a common behaviour, so automatic scrolling feels more intuitive? Would it make sense to write a common class (maybe a virtual subclass of QAbstractScrollArea) in KWidgetsAddons for that? Cheers, David
New utility for easier breeze monochrome icon creation
Hi everyone, as indicated in https://phabricator.kde.org/D22617#502629, I have created an application “breeze-icon-cleaner”, which shall help with creating breeze monochrome icons. If you feel like testing/trying, it is now available at https://invent.kde.org/davidhurka/breeze-icon-cleaner. It is a simple qmake project. == Description == The current workflow involves manual editing of the icon SVG files to add the stylesheet and remove clutter. I found that confusing, because it had to be repeated every time the icon is edited. The new application takes the SVG file, collects the graphical elements (naturally, only paths are supported), and creates a new SVG file from them. It has minimal clutter, and the breeze stylesheet is added automatically. $ breeze-icon-cleaner --sizes 16 --names icon path/to/inputfile.svg It can also read multiple icons in multiple sizes from one input file, and split them. $ breeze-icon-cleaner --sizes '16 22' --names 'aaa bbb ccc' inputfile.svg It can also generate a template, so you know where to draw the icons in the input file. $ breeze-icon-cleaner --sizes '16 22' --count 3 template.svg # draw on file $ breeze-icon-cleaner --sizes '16 22' --names 'aaa bbb ccc' template.svg # Outputs these files: # 16/aaa.svg # 16/bbb.svg # 16/ccc.svg # 22/aaa.svg # 22/bbb.svg # 22/ccc.svg Cheers, David
Re: Spectacle: selecting a region in an already taken screenshot
Hi Clemens, I’m not responsible for Spectacle stuff, but as a user I would really like it. I often want to take a screenshot of some small detail, and taking the screenshot twice feels not optimal. The existing rectangle function is nice for repeated screenshots of the same detail, because it remembers the rectangle. We already have Gwenview and Okular, where one can crop and make annotations, so implementing editing functionality in Spectacle would be a bit redundant. But I think that cropping is so simple that it can be added to Spectacle. Cheers, David On 4/11/20 12:40 PM Clemens Zeidler wrote: > I am a KDE user over 10 years and I first like to thank everybody > involved for their great work and for improving my productivity in my > daily work! > > I would like to contribute to the KDE project and was looking for a good > issue to start with. One thing that always annoyed me, and I think is a > relative easy task to start with, is the missing functionality to select > parts of an already taken screenshots in Spectacle. For example, after > taking a screenshot I would like to be able to select a portion of the > image to copy it into another application. > > I know that there is the rectangle function to take a screenshot. > However, sometimes you need to take a screenshot quickly with a single > key press and IMHO the rectangle feature is not optimal for that. > Furthermore, I found it a bit difficult to discover this feature (only > noticed it when looking for it just now, normally I always press the > screenshot key and do the detour through an image editor). > > From my point of view its also more natural to first take a full > screenshot and then select the needed region. This would also make it > possible copying multiple parts out of the same screenshot. This feature > would be complementary to the existing rectangle function. > > Do you think being able to select a region in the main window would be a > good addition? I haven't thought about any details yet since I first > like to get some feedback if this feature is desirable at all or if it > already has been rejected for other reasons. > > Best, > Clemens
Re: Update on Status of Gitlab Migration
On 4/13/20 5:34 PM Nate Graham wrote: > On 4/13/20 4:44 AM, Albert Vaca Cintora wrote: > > Regarding this: is the subdomain going to stay invent.kde.org once we > > have officially moved? I find it's a bit confusing to use that instead > > of gitlab.kde.org > > I agree. gitlab.kde.org would make more sense to me, mirroring > phabricator.kde.org. > > Nate Yes, I thought the same. But we have used “Invent” often in our discussions, so I think it’s too late to change.
Disable shortcuts in GitLab invent.kde.org
According to this help page, it should be possible to disable shortcuts in gitlab: https://docs.gitlab.com/ee/user/shortcuts.html But the said option is not available in our GitLab instance. Is there any way to disable shortcuts? I really want to disable them, because they don’t have any advantage over Falkons spatial navigation, and do a lot of harm. It happens so often to me that I unfocus the text boxes for some reason, and then trigger various of these shortcuts instead. :(
Re: Information regarding upcoming Gitlab Migration: clarifications
> On 30 April 2020 21:15 Albert Astals Cid wrote: > Am I the only person that just has all the repos on the same folder? I > thought it was the common thing to do :? Me too. I think that there is no solution to group repositories by purpose category. There is too much overlap, and there may be many categories with only one repository. Maybe it is easier to group by the build target. If the main build target is an executable, the repository goes to Applications. If the target is a .a or .so, the repository goes to Libraries. If the repository is a website, it goes to Website. Etc. There would be overlap too, and related repositories would end up in different categories. I think the only way is to group repositories by organisation. I. e. all our applications go to KDE, if we incubate Microsoft, their applications could go to Microsoft. For some reason, that is how we currently do it, and how others (e. g. GitHub) do it. Cheers (There is an “if” in “if we incubate Microsoft”.)
Re: Context information needed for isolated words
> Hi, Hi! > It would be highly desirable that all the words that appear isolated had a > context to ease the > task of the translators. For all these words, I would advise against using > i18n() and would > prefer using i18nc() in source code (or using disambiguation comments in UI > files). I think you are totally right here. Any developer who wants its application to be translated should care about this, and should use i18nc() instead of i18n() everywhere. I mean everywhere. Even if the context appears clear from the message, a single UI marker as context is little work compared to writing the message itself. This is my opinion as someone who sometimes writes application code, and never translated anything. Honestly, I don’t understand why we have i18n() without c. Do you agree as translator? > Going back to the case of the aforementioned cascade menu, the solution would > be to use > other words: > > Create > New folder > New file If I understand you right, the original translation could stay New->Folder, New->File, but with i18nc it would be possible to use this alternative in other languages. Is that what you mean? And for this example, I think it should be the same in English. First, “create” appears more specific than “new”, and an action called “Folder” makes very little sense itself. Many menu actions can appear alone somewhere, and if Dolphin had a toolbar button called just “Folder”, that would be nonsense. Same for “New”. Cheers, David
Re: Context information needed for isolated words
> On 2 May 2020 12:02 Friedrich W. H. Kossebau wrote: > And yes, most of the code written in recent years seems to have missed to add > context in the i18n calls. The older among us have failed here to properly > teach the new generations of contributors about good i18n code. :) Time to > improve. I expected that somehow. With the new pre-commit CI in GitLab, could we teach one of the code checkers to complain about new i18n() without c? Maybe by deprecating i18n()? And if the string to be translated has only one word (like in the example of “New” or “New...”), it may make sense to require more context than just a UI marker. Yes, I am suggesting to forbid i18n() without c.
Re: Discontinuing legacy infrastructure
Hi Sysadmin, thanks for the update and for requiring https. I noticed that Reviewboard has been shut down. How much time will we have to migrate my junk from Phabricator? On 6/11/20 7:16 PM Albert Astals Cid wrote: > Could we make cgit.kde.org/* redirect to https://invent.kde.org/ (just the > homepage) Personally I don’t like homepage redirects, but better than nothing. Of course it would be nice to let GitLab search for a commit hash. Doesn’t appear to be possible, right? Redirect to a page that describes how to search for commits?
Re: KDiff3 1.8.3 Release Notes
> I see a version is available in the Microsoft Store. Do you know who > published that? > > https://www.microsoft.com/en-gb/p/kdiff-3-diff-utility/9ndvvx243rfh?activeta > b=pivot:overviewtab# > > Jonathan Isn’t this funny? If I can’t figure out who put something in the Store, why can I trust that, so should I pay money for that? Well, Store says it is “Published by: Dev Packager”. I’m just a silly observer, but it seems to me like Dev Packager takes money for wrapping the publicly available installer .exe into the Store. I wouldn’t consider that a reliable release service. ;) I think my last sentence above is interesting for your task: > I'm writing up the app updates for July and want to include kdiff3. Cheers, David
CI jobs
Hi everyone, I’m interested in how the CI jobs work. I expected that they are virtual machines, set up to build the respective commit of the respective repository. I looked at the command line output of some Okular CI jobs, and they don’t appear to be set up to build something. For each run, they appear to install everything needed from apt, then build the whole repository in every detail. This is not how I usually build stuff at home; my system already has everything installed, and I only need to rebuild what has changed. Is all that computation needed? Seems like a waste of CI minutes to me. clang_format makes this output: @ Get:1 http://deb.debian.org/debian testing/main amd64 perl-modules [...] @ Looks terrifying. Do CI jobs fetch stuff from lokal mirrors in their virtual environment, or is it terrifying? Cheers, David
Re: CI jobs
> Hi David, Hi Ben, > The official CI jobs at https://build.kde.org/ work in different ways > depending on the type of build [...] Jobs running on Gitlab are for > experimental purposes only and should never be relied upon for any purposes. Yes, I am talking about Gitlab CI jobs. I wasn’t aware of build.kde.org that moment, sorry for being unprecise. :)
Re: CI jobs
On 7/22/20 10:56 PM Nicolas Fella wrote: > On 22.07.20 22:13, David Hurka wrote: > > @ Get:1 http://deb.debian.org/debian testing/main amd64 perl-modules [...] > > @ > > > > Looks terrifying. Do CI jobs fetch stuff from lokal mirrors in their > > virtual environment, or is it terrifying? > > That should be answered in https://whydoesaptnotusehttps.com Thanks, nice to know!
Unsubscribing from mailing list (was: Re: Porting a project to KDE)
Send a mail with subject “help” to kde-devel-requ...@kde.org. That should give you instructions. You will need the “password” command and then the “unsubscribe” command. At least this is how I am used to work with mailing lists run by mailman. On 8/16/20 3:12 PM Yiqing Yu wrote: > I have sent an email to kde-devel-unsubscr...@kde.org, but it was > undeliverable. This address is invalid. > Is there an alternative to unsubscribe me from the mailing list? Thanks. > > On Sun, Aug 16, 2020 at 6:02 PM Ben Cooksley wrote: > > On Sun, Aug 16, 2020 at 3:45 PM Yiqing Yu wrote: > > > Please unsubscribe me from the list. Thanks! > > > > Hi Yiqing, > > > > You can do this on a self-service basis by sending an email to > > kde-devel-unsubscr...@kde.org. > > > > Following this you will receive an email with a link you need to click > > to complete the unsubscription process. > > > > Regards, > > Ben Cooksley > > KDE Sysadmin > > > > > On Sun, Aug 16, 2020 at 11:30 AM Francois Blanchette < > > > > cfrankb.2...@gmail.com> wrote: > > >> On 8/15/20, Albert Astals Cid wrote: > > >> > El divendres, 14 d’agost de 2020, a les 15:07:40 CEST, Francois > > > > Blanchette > > > > >> > va escriure: > > >> >> Hi > > >> >> > > >> >> My project is call LGCK builder. It is a Game Construction Kit > > >> >> written in C++ using a combination of Qt5, OpenGL and SDL. In > > > > addition > > > > >> >> to the main IDE there is also a standalone Sprite Editor. The main > > >> >> engine implements the graphics, inputs and sounds components via a > > >> >> series of Interfaces which allows different implementers (right now > > >> >> SDL, OpenGL and SFML are fleshed out). Additional back-ends could be > > >> >> added by simply swapping one implementer for another. I think the > > >> >> design is unique because it is object-oriented which frees users > > >> >> from > > >> >> messing around with the old tile-2-tile formula. > > >> >> > > >> >> You can read more about on the official page > > >> >> https://cfrankb.com/lgck?main > > >> >> > > >> >> There is a 5 minute video explaining how to make a game > > >> >> https://www.youtube.com/watch?v=lN3gkZWr-PM > > >> >> > > >> >> The full source code can be found here: > > >> >> https://github.com/cfrankb/lgck-src > > >> > > > >> > You haven't made any commit to that project in the last 2 years, > > > > what's your > > > > >> > plan for it? Are you going to pick it up again? > > >> > > >> Hi Albert, > > >> > > >> The github ui only shows commits from the master branch and this > > >> paints an incomplete picture. I have been cranking out commits like > > >> crazy for past the month. 69 commits in total but they don't show up > > >> on the timeline. > > >> > > >> My plan is to continue cleaning up the code, get it up to standard and > > >> get some feedback. The feedback part is what i really need to work on > > >> because it gets to spend time where it most matter to improve the end > > >> result. > > >> > > >> I have prepare a new video that show case some of these new, up and > > >> coming ui improvements. Here is the 2020 LGCK Builder. > > >> https://www.youtube.com/watch?v=wukMgkmvXAY > > >> > > >> Regards, > > >> Frank B. > > > > > > -- > > > Best Regards, > > > Yiqing
Re: Proposal: make squash-merging the default behavior for gitlab MRs
> [...] > I've been told that our Sysadmins have developed some tooling capable of > checking the "Squash when merging" checkbox by default for new Merge > Requests. [...] > > I'd like to propose [squash-merge] as a sane default for new Merge > Requests. > > [...] > Thoughts? Yes, I would like that, it saves me one or two clicks per month. :) Probably it will save additional one or two MRs per month that just repeat another MR that just misses this option enabled. Related to the this, is it possible to check the "Allow contributions" checkbox by default?
Re: Proposal: make squash-merging the default behavior for gitlab MRs
> > However, it remains a fairly advanced workflow which is challenging for > > newcomers, drive-by-developers, and people not as familiar with git. For > > these people, squash-merging makes much more sense, [...] This workflow is too advanced for me. My commits are usually garbage like “fix pipeline”, and often contain notes on what I was doing and what I still need to do. If I was maintaining a clean history, that wouldn’t be possible. Others of you give me the impression that we are looking for perfect developers who never make mistakes. That’s not me, so there seem to be different opinions. Is it possible to make the default configurable for each user? Then I could simply check “Squash by default” and all my MRs are how I want them.
Re: Proposal: make squash-merging the default behavior for gitlab MRs
> That doesn't prevent me from having a clean history when I finally git-push > to an opened MR, so my colleagues could easily review my code. I know that > if I'd push some "dirty" commits to my "merge request", my colleagues would > unnecessarily spend time navigating these commits, and reviewing code-lines > that were fixed in the further commit. And why? Just because I didn't care > to squash last commit? Why should colleagues navigate through any commits, when the MR is intended to be squashed? Wouldn’t squash merge make it easier to review an MR? > I should note though that while I do a lot of stuff with git as I work > (e.g. swapping commits, amending a commit, going back to a commit in history > then changing it, etc.), I spend minuscule amount of time on it. I think this can not be expected from new contributors. If the default for this checkbox is configurable per user, I would like it when new MRs from new contributors are squash merged by default. New users usually submit easier patches, right? Such patches usually can not be separated into individual, clean commits, unless we want to push broken code to production branches. If we reject a patch submitted a new user with “Thanks, your patch finally fixes this annoying bug, but we can not accept it, because I don’t like your git history. Please learn git first.”, that would IMHO be the first step to make KDE a closed community.
Re: Proposal: make squash-merging the default behavior for gitlab MRs
> Even better might be to force an explicit decision by not having a default > for this at all, e.g. by offering "Rebase" and "Squash + Rebase" actions > next to each other. The squash checkbox is available directly next to the Rebase/Merge button; provided the “Allow Contributions” checkbox was checked when creating the MR.
Re: Proposal: make squash-merging the default behavior for gitlab MRs
On Tuesday, October 6, 2020 4:26:02 PM CEST Nate Graham wrote: > Taking stock of the responses so far, it doesn't seem like there's much > enthusiasm for the original proposal. That's fine, and I can understand > the desire to push people to improve their git skills. Yes, I interpret this thread the same. > It seems like > there is some agreement on an alternative, which various people have > proposed: > > GitLab already *kind of* offers this, in the form of the "Squash > commits" checkbox next to the merge button. Isn’t it true that “Allow contributions” must be checked before the “Squash commits” checkbox is available? (I already wrote that, but I feel people don’t care, so I make it a question now.)
Re: Proposal: make squash-merging the default behavior for gitlab MRs
On Wednesday, October 7, 2020 9:52:41 AM CEST Ben Cooksley wrote: > > Isn’t it true that “Allow contributions” must be checked before the > > “Squash > > commits” checkbox is available? (I already wrote that, but I feel people > > don’t > > care, so I make it a question now.) > > The allow contributions box should always be ticked - we have > infrastructure components that automatically change this in the background > whenever a merge request is created. Oh, nice! This is from a MR from June 2020, which couldn’t be rebased: > You need to force push since you're rewriting history. > > If that doesn't work it means the branch author manually unchecked > the checkbox that enables collaboration and indeed there's not much > we can do other than creating a new branch/MR somewhere else. (https://invent.kde.org/graphics/okular/-/merge_requests/195#note_103948) Is the mentioned infrastructure component newer than that? Then it probably works fine. :)
Re: Proposal: make squash-merging the default behavior for gitlab MRs
On Wednesday, October 7, 2020 5:26:05 PM CEST Thomas Friedrichsmeier wrote: > Probably not something we can easily configure/adjust downstream, > though? What we can easily can change on our level, is to provide a default MR description in every project. (Like the default bug description in Bugzilla.) My theory is that some newcoming contributors already know GitLab, and just create the MR as they are used to, without reading our wiki article. The consequence is that they ignore these checkboxes. About default MR descriptions: https://invent.kde.org/help/user/project/description_templates.md
Re: stale MR triaging - you can help!
> Moin Moin :) > > First list of stale MRs here: > > https://invent.kde.org/sysadmin/gitlab-triaging/-/issues > [ ] https://invent.kde.org/graphics/okular/-/merge_requests/234 Ah, that’s mine. It is listed as “waiting for this” in issue okular#21. What would be the correct way to mark an MR as waiting for something else? AFAIK we can not create dependency trees, like in Phabricator, right?
Re: How do you deal with incomplete commits?
On Saturday, October 31, 2020 4:38:09 PM CET Thomas Baumgart wrote: > Hi, > > On Samstag, 31. Oktober 2020 16:24:51 CET Thomas Friedrichsmeier wrote: > > Hi, > > > > thanks for your answer (also to Nate). But to clarify, my question is > > really: How do I _force_ myself to clean up in time? > > Reading your question over and over, I don't see where git is mentioned :) > This leads to a short answer: self-discipline. > > My impression is that you look for a some magic feature in git that forces > you to clean up in time. Not sure if something like that exists. Maybe you could write your own commit hook, which prevents commiting anything when `git log --oneline` matches, say /\A INCOMPLETE/x.
Re: How do you deal with incomplete commits?
> I ended up writing a local pre-commit hook, which has the advantage of > triggering on the commit directly after "the problem commit", thus > increasing the likelihood there is still a trivial way to sort > things out. It would probably be nice to have some post-checkout commit, with which you can spit you own WIP commit message in your face, right after you switch to your work branch. There are update.sample and post-update.sample, but my git knowledge is missing in this point. What is “update”? And now that we discovered that this is possible: I would like to have the pre-commit hook globally, that would fit my workflow nicely. How can I do that? My home directory is unfortunately not a git repository. ;)
Re: How do you deal with incomplete commits?
On Monday, November 2, 2020 7:00:40 PM CET David Hurka wrote: > It would probably be nice to have some post-checkout commit, with which you > can spit you own WIP commit message in your face, right after you switch to > your work branch. Horrible wording, sorry. It means: It would probably be nice to have some post-checkout hook, which displays your own WIP commit message, right after you switch to your work branch.
CMake question: ki18n_wrap_ui adds .h files as source files to a CMake target, what will happen?
Hi CMake fans: (Skip to the last paragraph for my question.) KI18N provides the CMake macro “ki18n_wrap_ui()”, which is used like this: > ki18n_wrap_ui( myApp_SRCS myApp_dialog.ui ) or like this (since KF 5.62): > ki18n_wrap_ui( myApp myApp_dialog.ui ) In both cases it creates “ui_myApp_dialog.h” using `uic`, which contains a C++ class for this dialog. This header file is added to the list “myApp_SRCS” or to the target “myApp”. Internally, it works roughly as follows: 1. Generate the ui_h filename (in the build/ directory): > get_filename_component(_basename ${_tmp_FILE} NAME_WE) > set(_header ${CMAKE_CURRENT_BINARY_DIR}/ui_${_basename}.h) 2. Create this C++ .h file [...] 3. Add this filename as source file to the target / SRCS list: > if(TARGET ${_sources}) > target_sources(${_sources} PRIVATE ${_header}) > else() > list(APPEND ${_sources} ${_header}) > endif() Now I wonder why this *header file* is added as a *source file* to the target. Other source files will include , so it should be enough when this header file is found somewhere in the include search paths. Is this how source file lists of a CMake target work? .cpp source files are compiled to .o files, and .h source files are only used as #include search path? Cheers, David
Re: Help using KArchive with GZIP files
> The first question " I have tried to do this but there some error that block > me to open a file. I dont know if i am using correctly the class > KCompressionDevice." is related with the code down bellow. > > auto kgzip = KCompressionDevice( > QUrl(where.toString() + “/” + fileName + “.gz”).toLocalFile(), > KCompressionDevice::GZip); > assert(kgzip.isOpen() == true); > > kgzip.write(QString("hello World").toUtf8()); > kgzip.close(); This is probably caused by some auto-correction feature when you pasted your code in the email editor, but: You use both english typographical quotes (“”) and ascii quotes ("). Theoretically your compiler should warn about this, otherwise the code will behave in some strange way.
Re: (someone being interested in GCoC ’21 and Okular)
Hi Bhumit and welcome to KDE! Albert knows a lot about Okular and Poppler, so he will be a good GSoC mentor. I know some parts of okularpart, and would be happy to assist helping you getting familar with it. If you read through the Okular source code, and feel a class misses important API documentation, tell us. Then I can improve the documentation there. If you want, you may write documentation yourself. Then I can help while reviewing it. CC me with @davidhurka. Alternatively, the recommended way is to “scratch your own itch”. [1] There are enough bugs in Okular. ;) Cheers, David [1] https://community.kde.org/Get_Involved/development#Choose_what_to_do On Saturday, December 26, 2020 11:20:37 AM CET Bhumit Attarde wrote: > Hey guys, > > I'm a second year engineering student interested in GSOC '21. > > I've gone through https://community.kde.org/GSoC/2021/Ideas and have zeroed > in on an app I like and know a little about (Okular). I plan to get myself > familiarized with it more over next few days and then try to get my hands > dirty after I'm comfortable. > > Do you guys have any suggestions over how I should proceed? > > -Bhumit Attarde
Re: Accessing a (sub)menu defined in an XmlGui ui.rc file
On Wednesday, January 13, 2021 10:39:48 AM CET Tobias Leupold wrote: > Hi list :-) > > I have a problem with a KXmlGuiWindow and I honestly can't find respective > docs or howtos/tutorials. I hope someone here can help me ... I faced the same problem... :( > It's a allegedly basic task: How can I access a submenu (or better: a > submenu's QAction) for a menu defined in a ...ui.rc file? > > If I define the submenu like so: > > > > > Some text > > > > I probably don’t understand properly what you need. But if you want to modify the action which contains the menu "bar", you could use KActionMenu. Change the ui.rc to: then create a KActionMenu called "bar" in your KActionCollection, set its icon etc., and populate its menu. Of course this moves UI definition from ui.rc to C++ code, but it looks like you want to modify the menu at runtime.
Re: QToolButton not displayed correctly on KDE
> m_newTabAction->setIcon(QIcon(QLatin1String(":graphics/addtab.png"))); First guess: The Breeze icon engine (which enables color schemes to recolor monochrome icons) can not handle Qt ressource paths. Did you try to install the image as ordinary file, and use that file as icon? If that is the problem, a workaround could be to load the ressource through QPixmap instead of QIcon. Or are you sure that the icon is loaded correctly, and just the QToolButton does not show it?
Re: Is there (going to be) an auto-retracer service for KDE?
On Sunday, April 25, 2021 2:09:03 PM CEST Lyubomir Parvanov wrote: > Currently to be able to submit bug reports with stacktraces one has to > install the debug symbols locally for each package. As far as I know Gnome > doesn't suffer from this issue because Apport is invoked and when it > uploads the error report it is automatically retraced with the debug > symbols on Canonical servers. Sounds convenient. As I understand https://wiki.ubuntu.com/ErrorTracker#contributing , this relies on Apport to offer core dumps of the crashed program. I expect that any such technology will collide with some of our policies. Don’t know which policy, but see https://community.kde.org/Policies/Telemetry_Policy#Privacy . If I understand that wrong, can you tell some more details? Cheers, David
Re: Adding a MimeType without breaking existing associations
Do you use Dolphin or the Plasma Desktop, and used the “remember choice” checkbox? Just change it back to wine, the Dolphin context menu will remember Ark as alternative choice.
Looking for an SVGDOM / other SVG library for use with C++ and CMake.
Hi! breeze-icon-cleaner splits one SVG drawing into multiple icon files, where the file names are passed as command line option. I think it would be more convenient to define the file names directly in the SVG drawing. So I am looking for a library that gives me access to text elements in an SVG file. It should be usable from C++ and with CMake. I already use QSvgRenderer, but it paints text only after converting it to paths, so I can not get any text from it. I found wxSVG, a C++ SVGDOM implementation, which is basically perfect. But it fails at the transform attribute, which is relevant here. wxWidgets also does not configure automatically with CMake, which is annoying. I also found SVGpp, a boost.mpl template library. I have no idea how to work with it, and so can’t even tell whether it will be helpful. Documentation is somewhat missing... Compiling with it included takes almost an hour on my computer, and the example projects don’t compile at all. I didn’t find any other SVG library, except dozens which only create a pixmap directly. :( Does someone know another library? Cheers, David
Re: Looking for an SVGDOM / other SVG library for use with C++ and CMake.
Yes, I am about to write a minimal SVG parser with QDomDocument. The result is probably very little code. I would just like to outsource this task to someone who already implemented and tested it. :) On Thursday, June 10, 2021 10:31:26 PM CEST Wolthera wrote: > If you are only looking to batch process SVG files without rendering, > you can just use any XML library. QDomDocument is perfectly fine for > most situations. You can do something like setting a Title tag on the > group or path that represents the icon, you can do this in inkscape > via the 'object properties' dialog, and it will add that value as > text as a child of the XML element represent or > . > > The tricky bit about the SVG spec is getting the rendering right, but > as long as you're not doing that, just use your favourite XML library.
Re: Looking for an SVGDOM / other SVG library for use with C++ and CMake.
On Saturday, June 12, 2021 3:27:47 PM CEST Milian Wolff wrote: > Don't use QDomDocument, Qt XML is deprecated. Use QXmlStreamReader instead. I still can’t find any indication that Qt XML is deprecated. Why do people believe that? It says: > Note: Qt XML will no longer receive additional features. ... But this is just a symptom of DOM. Elsewhere the documentation says: > As SAX classes have been removed from Qt XML, QDomDocument has been > re-implemented using QXmlStreamReader. This causes a few behavioral changes: > > [list of changes] > > If you use QDomDocument and rely on any of these, you must update your > code and XML documents accordingly. If Qt XML really becomes deprecated one day, I can just use another DOM implementation without changing my algorithms. :) So, as long as my code is not finished and shows performance problems, I will use QDomDocument. --- > Alternatively, why not write a simple script for this using Python e.g.? You > could even use XSLT for this purpose. I don't quite see what you need C++ > for here, personally. My project is written in C++, and needs to interface this functionality. So, a library with a C++ interface would be convenient. Transforming the SVG file with XSLT to a list of text occurences sounds like a good idea. Cheers, David
Re: Progress is good for us but bad for documentation
Hi Frederik, here is my report about a negative experience with existing documentation: > So what to report? Documentation that ... > - [...] > - has holes in it. For example a tutorial where you suddenly think, >you skipped an important step. > - you wish was there but you could not find it. When I tried to understand KXmlGui an KParts (about 15 months ago?), I felt left alone from the documentation. KXmlGui: KXmlGui explains itself as user configurable main windows (toolbars, shortcuts), which should be enough for an introduction. But KXmlGui docs didn’t give me examples how to use it. Just creating a KXmlGui main window and putting a KXmlGuiClient in it didn’t work as easy as setting the main widget of a QMainWindow. My experiment application always crashed at startup. Here I would expect some minimal working examples. It also misses an introduction about merging multiple KXmlGuiClients to one user interface. KParts: KParts didn’t tell me what the whole framework is good for. After reading the documentation, I doubted that a KPart is anything more than a KXmlGuiClient with another name or even a QWidget with a list of actions. Why not just instantiate a QWidget derived object from a library, and put that QWidget in my main window? Here I would expect an introduction why I should use KParts. Only KReadOnlyPart and KReadWritePart made some sense for me. These were able to provide reading and writing files through KIO just through the openUrl() and saveAs() methods. And Konqueror can search for a KReadOnlyPart that allows to open a specific document type, and use this part through a common API. Cheers, David
Re: AudioTube in KDEReview
> Hi everyone! > > [...] > > The repository is located here: > https://invent.kde.org/plasma-mobile/audiotube Hi! I was just trying it out. I am using KDE Neon user edition, and building with CMake wasn’t problematic. ytmusicapi could be installed with pip. When I launch it, search something, and try to play one of the results, I get this error: david@doro:~/kde/audiotube/build$ bin/audiotube [youtube] 2ZA27qdiX10: Downloading webpage ERROR: 2ZA27qdiX10: YouTube said: Unable to extract video data DownloadError: ERROR: 2ZA27qdiX10: YouTube said: Unable to extract video data At: /usr/lib/python3/dist-packages/youtube_dl/YoutubeDL.py(595): trouble /usr/lib/python3/dist-packages/youtube_dl/YoutubeDL.py(625): report_error /usr/lib/python3/dist-packages/youtube_dl/YoutubeDL.py(821): extract_info david@doro:~/kde/audiotube/src$ youtube-dl --version 2020.03.24 After updating youtube-dl via pip (was installed via apt), it worked. --- I like the minimalism in the user interface. Overall I don’t like it, because of the typical Qt Quick issues: resizing stuff doesn’t work, missing auto- raise on buttons, ... Unfortunately it does not have a volume control, it can’t pause with the space bar, and it is not controllable through Plasma media player controls. Like already noted, seeking does not work. I don’t understand the playlist(?). When I start a track, I expect it to end at the end. But there is an arrow button in the bottom-right, and when I click that I see the album art and something like a playlist with my track at the top, followed by tons of completely unrelated videos. I can remove videos from the playlist, but I can’t add videos? I also can’t reorder it. Can I make it play only the video I have selected? I suggest to make the user interface a bit more descriptive. When I select a video from the search results, there is a question box like “Video playback not supported [play only audio]”. These boxes are accumulating. If I scroll through the results list by click-and-drag, every touched video adds such a box. When I click it, it appears to attempt to play all these videos. (But without telling me which.) --- I am currently searching for an alternative to YouTube in the web browser, because of this auto-pause feature for music videos. If I can’t use the web interface with ads because of this, well, I use your new program. :) Cheers, David
Re: AudioTube in KDEReview
Hi. > > david@doro:~/kde/audiotube/src$ youtube-dl --version > > 2020.03.24 > > > > After updating youtube-dl via pip (was installed via apt), it worked. > > Just to make sure, the application didn't crash but just displayed the > error message and also printed it on the command line? Yes, it didn’t crash but displayed an error message. > I've been working on packaging a flatpak version that I'm personally > using most of the time. It will allow to have an up-to-date version of > youtube-dl even on stable distributions without having to install > packages using pip. Cool, that would be very convenient. :) > > I don’t understand the playlist(?). When I start a track, I expect it > > to end > > at the end. But there is an arrow button in the bottom-right, and when > > I click > > that I see the album art and something like a playlist with my track > > at the > > top, followed by tons of completely unrelated videos. I can remove > > videos from > > the playlist, but I can’t add videos? I also can’t reorder it. Can I > > make it > > play only the video I have selected? > > Youtube Music works by trying to find similar tracks that you might like > too, to make it easy to discover new music. > > Unfortunately it seems like the algorithm on Youtube's side didn't work > too well in your case, and that partly comes from their usual tracking > of course not working in AudioTube, so it can only give you music that > other people who liked the track you initially played listened to, > instead of adapting to your personal taste. > > If you want to put the playlist together yourself, you can use the "Add > to Playlist" button on the right. The other button is "Play Next", which > will put the song into the playlist immediately after the currently > playing one. Ok, I found the Add to Playlist and Play Next buttons. They only appear sometimes on only some search results. Play Next works. I don’t understant Add to Playlist. It appends the track to the end of YouTube’s suggestions, which means I have to listen that unrelated stuff before I can listen to this track. Maybe split the playlist in two sections? The ordinary playlist, and after that a “Suggested automatically:” section? The second section could maybe have a checkbox to disable it. > The button "play only audio" only plays the audio of the video the > message was triggered by. I can add the title to the message to make it > clearer. Yes, that should be fine. But I think there should only be the last message visible. Offering to play more than one track at once does not seem useful to me. It’s a similar problem with the “Search wrapped” message in Kate. If I quickly jump from the last occurence to the first occurence (I actually had to do that in a database dump), these messages queue and then they appear and disappear one after another for several minutes. Originally, they were placed in the center of the view, covering the search result, which made Kate unusable for me in that case. :( Thanks for placing your message in a sensible place. :) --- AudioTube apparently plays only videos that are meant to be music. I can’t play ambient sound videos, like I sometimes want to do. Is that an intentional limitation? (Ok, I can play these in the browser, because they don’t have auto-pause.) Cheers, David
Re: AudioTube in KDEReview
> Hi everyone! > > I would like to move AudioTube to KDEReview. [...] Hi again! It crashes every time I try to search when the network is disconnected. > [...] > Thread 8 (Thread 0x7fd22f7fe700 (LWP 48286)): > [KCrash Handler] > #4 __new_sem_wait_fast (definitive_result=0, sem=0x0) > at sem_waitcommon.c:137 > #5 __new_sem_wait (sem=0x0) at sem_wait.c:39 > #6 0x7fd24ceea3b7 in PyThread_acquire_lock_timed () > at /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > [...] > #14 0x55ad5dcf5d45 in AsyncYTMusic::internalSearch(QString const&) > (this=0x55ad5ddb8030 , query=...) > at ../src/asyncytmusic.cpp:66 > [...] And when the network is connected, it often has trouble with playing the music without interruptions. If a track played for 5 minutes, it starts to pause for some seconds every 20 seconds. youtube-dl is not limiting here. If invoked manually, it downloads the whole video in a few seconds. Cheers, DavidApplication: AudioTube (audiotube), signal: Segmentation fault [New LWP 48280] [New LWP 48281] [New LWP 48282] [New LWP 48283] [New LWP 48284] [New LWP 48285] [New LWP 48286] [New LWP 48289] [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". futex_wait_cancelable (private=, expected=0, futex_word=0x55ad5eb62884) at ../sysdeps/nptl/futex-internal.h:183 [Current thread is 1 (Thread 0x7fd249301cc0 (LWP 48278))] Thread 9 (Thread 0x7fd22e94c700 (LWP 48289)): #0 0x7fd24ca92aff in __GI___poll (fds=0x7fd22e94ac88, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:29 #1 0x7fd24b558c1a in () at /lib/x86_64-linux-gnu/libxcb.so.1 #2 0x7fd24b55aa02 in xcb_wait_for_special_event () at /lib/x86_64-linux-gnu/libxcb.so.1 #3 0x7fd236e01096 in glPrimitiveBoundingBox () at /lib/x86_64-linux-gnu/libGLX_mesa.so.0 #4 0x7fd236e0141a in glPrimitiveBoundingBox () at /lib/x86_64-linux-gnu/libGLX_mesa.so.0 #5 0x7fd236e025ae in glPrimitiveBoundingBox () at /lib/x86_64-linux-gnu/libGLX_mesa.so.0 #6 0x7fd236e0365c in glPrimitiveBoundingBox () at /lib/x86_64-linux-gnu/libGLX_mesa.so.0 #7 0x7fd235e0fa4c in () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so #8 0x7fd235e101d9 in () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so #9 0x7fd235e0c697 in () at /usr/lib/x86_64-linux-gnu/dri/i965_dri.so #10 0x7fd24696cb0a in QSGBatchRenderer::Renderer::renderBatches() () at /lib/x86_64-linux-gnu/libQt5Quick.so.5 #11 0x7fd24696d22a in QSGBatchRenderer::Renderer::render() () at /lib/x86_64-linux-gnu/libQt5Quick.so.5 #12 0x7fd246950de4 in QSGRenderer::renderScene(QSGBindable const&) () at /lib/x86_64-linux-gnu/libQt5Quick.so.5 #13 0x7fd2469512b3 in QSGRenderer::renderScene(unsigned int) () at /lib/x86_64-linux-gnu/libQt5Quick.so.5 #14 0x7fd2469bffa7 in QSGDefaultRenderContext::renderNextFrame(QSGRenderer*, unsigned int) () at /lib/x86_64-linux-gnu/libQt5Quick.so.5 #15 0x7fd246a2d8f9 in QQuickWindowPrivate::renderSceneGraph(QSize const&, QSize const&) () at /lib/x86_64-linux-gnu/libQt5Quick.so.5 #16 0x7fd2469cdae9 in () at /lib/x86_64-linux-gnu/libQt5Quick.so.5 #17 0x7fd2469d1f77 in () at /lib/x86_64-linux-gnu/libQt5Quick.so.5 #18 0x7fd24d391d4c in QThreadPrivate::start(void*) (arg=0x55ad5fe5a2d0) at thread/qthread_unix.cpp:329 #19 0x7fd24bf33609 in start_thread (arg=) at pthread_create.c:477 #20 0x7fd24ca9f293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Thread 8 (Thread 0x7fd22f7fe700 (LWP 48286)): [KCrash Handler] #4 __new_sem_wait_fast (definitive_result=0, sem=0x0) at sem_waitcommon.c:137 #5 __new_sem_wait (sem=0x0) at sem_wait.c:39 #6 0x7fd24ceea3b7 in PyThread_acquire_lock_timed () at /lib/x86_64-linux-gnu/libpython3.8.so.1.0 #7 0x7fd24cefb7f9 in PyThreadState_New () at /lib/x86_64-linux-gnu/libpython3.8.so.1.0 #8 0x7fd24cefb8b4 in PyGILState_Ensure () at /lib/x86_64-linux-gnu/libpython3.8.so.1.0 #9 0x55ad5dd325fd in pybind11::detail::get_internals()::gil_scoped_acquire_local::gil_scoped_acquire_local() (this=0x7fd22f7fd554) at /usr/include/pybind11/detail/internals.h:240 #10 0x55ad5dd33139 in pybind11::detail::get_internals() () at /usr/include/pybind11/detail/internals.h:243 #11 0x55ad5dd3ab62 in pybind11::gil_scoped_acquire::gil_scoped_acquire() (this=0x7fd22f7fd640) at /usr/include/pybind11/pybind11.h:1896 #12 0x55ad5dd3adbb in pybind11::error_already_set::~error_already_set() (this=0x7fd2202ce490, __in_chrg=) at /usr/include/pybind11/pybind11.h:2016 #13 0x7fd24cc345f3 in () at /lib/x86_64-linux-gnu/libstdc++.so.6 #14 0x55ad5dcf5d45 in AsyncYTMusic::internalSearch(QString const&) (this=0x55ad5ddb8030 , query=...) at ../src/asyncytmusic.cpp:66 #15 0x55ad5dcfadb3 in QtPrivate::FunctorCall, QtPrivate::List, void, void (AsyncYTMusic::*)(QString const&)>::call(void (AsyncYTMusic::*)(QString const&), AsyncYTMusic*, void**) (f=(void (AsyncYTMusic::*)(class AsyncYTMusic *
Re: Resource and energy efficiency of KDE applications
On Wednesday, June 30, 2021 12:57:48 AM CEST Cornelius Schumacher wrote: > On 29.06.21 19:38, Arjun AK wrote: > > I don't think measuring current on a Desktop is the right way to do > > this. Your desktop is going to be too "noisy" when it comes to power > > measurements. Activity from components like hard disk, WiFi/BT, Ethernet > > or other software during the testing would end up affecting the > > measurements. Like noticed in the measurements at Umweltcampus, this noise can be filtered out by running multiple tests. > > It would be better off doing this on a SBC (maybe a PI2?), > > with as much hardware turned off as possible and running a minimum set > > of software. Measurements could be done with a multimeter[1] or maybe > > even a INA219[2]. > > Part of the measurement is to also record system utilisation such as > harddisk or network activity. That makes it possible to at least to some > degree account for the noisy part. Indeed. And on a typical desktop computer we still have the opportunity to measure power consumption of individual components. > It's also a tradeoff between measuring in a realistic scenario which is > close to normal use and a prepared setup which is aimed at getting more > exact numbers. > > I think it would be interesting to do both and see what the numbers say. I think it would also make sense to compare direct power measurements to software metrics, like tick counters or the power display in KSysguard. > There certainly is a lot to be learned and to be improved here. For me > the most important step is to be more aware of energy consumption and to > try to get numbers at all. Any insight is welcome :-) +1 :) Cheers, David
Re: Progress is good for us but bad for documentation
On Thursday, July 1, 2021 12:03:44 AM CEST Frederik Schwarzer wrote: > Hi everyone, > > thank you for your input and sorry it took me a while to reply. > > For now I have created a list of issues on gitlab to be reminded. > https://invent.kde.org/teams/documentation/sprints/-/issues > > [...] Cool, thanks for your efforts! :) Cheers, David
Re: RFC: Konsole profile groups
> > > Is anyone using Konsole profile groups? [...] > No, "profile groups" are a different concept; from reading the code in > ProfileGroup.cpp it's like a group of profiles having one parent profile, > and when you change the settings it can be applied to all the child > profiles, or to specific ones... I use profiles to distinguish different windows by background color. I have some application menu entries that launch Konsole with a specific command to execute, and these windows will use a profile with a different background color, so I will know later what this window is good for. I am not aware of any way to use profile groups, or how to create them. There is no such button in “Manage Profiles...”. So I guess, if you remove this feature, users will not notice it. :D
Re: KDE development on main laptop
Hello! I started the same way. I can say that building Okular on the main work system does not cause problems. If you build and install a broken version of Okular, you loose your document viewer. But if you follow the guidelines for kdesrc-build, you can install compiled versions in a different place (like ~/bin instead of /usr/bin), so you have both the broken and the original version of Okular, and the original one stays intact. I don’t know what happens with Akonadi, since it is some kind of background service. Ideally you look at each project’s documentation, there should be some instructions for starting development. On Saturday, September 18, 2021 4:19:53 PM CEST Sławek Kapłoński wrote: > Hi, > > I'm totally new to the KDE development but I want to start with it. > I'm using KDE daily on my main work laptop. Is it 100% safe to build e.g. > Akonadi or Kmail or other software using kdesrc-build script on my laptop > and it will not interact (and break) something in my software installed > from packages for sure? Or is it better to play with it on e.g. different > machine?
Re: kio man + khelpcenter
On Sunday, September 26, 2021 6:54:29 PM CEST Martin Koller wrote: > Hi, > > a recent update (openSuse TW, kio-extras5 Version: 21.08.1) had the effect > that whenever I want to view a man page via Alt-F2 (Krunner) and e.g. > "#ls", now khelpcenter is opened, instead konqueror, which I had before. > What defines which application is started an how can I change this back to > konqueror ? Hi, I think it is covered in this thread: https://mail.kde.org/pipermail/kde-devel/2021-September/000674.html So there is right now no way to change it back as a user.
Re: Rollout of Gitlab CI
On Thursday, September 30, 2021 10:12:35 PM CEST Albert Astals Cid wrote: > Does this means we can no longer have interesting CI like > "install this special distro that has openssl3 so that the QCA code > doesn't regress" or > "install this old Ubuntu since we still want to code to build in an older > Qt version" ? Yeah, the “GitLab CI” that comes with GitLab will probably stay, and just the CI templates in the sysadmin repositories will be removed? .gitlab-ci.yml allows to define quite flexible scenarios, but most KDE repositories which I have seen just include a few templates from the sysadmin repositories, so I assume you are talking about the latter. :) > Cheers, > Albert > > > Thanks, > > Ben Cheers, David
Re: Greetings from Berlin
Hi Joseph! I left you my phone number, but thanks for the email anyway. :) Right now I am in the xHain hackerspace, which I managed to find, and therefore have good internet for a few hours. :) Cheers, David On Monday, October 25, 2021 5:14:21 PM CEST Joseph P. De Veaugh-Geiss wrote: > Hi David, > > great to hear from you and welcome (back) to Berlin! I just wrote KDAB > to ask if they would like to have an informal meetup tomorrow (Tuesday) > afternoon. I will be in touch as soon as I hear back from them :-) > > Cheers, > Joseph > > David Hurka: > > Hi Joseph, > > > > as you might not know, I am currently in Berlin for a short time, until > > tomorrow noon or Wednesday noon, with no more fixed schedules. > > > > KDAB, which is the place where we will meet for the measure-athon in > > February, is in Berlin. Do you think it makes sense to use my opportunity > > for an informal meeting with KDAB at this place? > > > > I did not reach them by phone. In case you like to contact KDAB on a > > different way to announce me, you may call me at +49 178 4537763. (My > > internet access is limited here.) :) > > > > Cheers, David
Re: SPDX and docbook documentation, how to do properly?
> how to add SPDX tags. Aren’t docbooks just XML files? The reuse tool would add them as XML comment. Approximately like this: $ reuse addheader --style xml --copyright ... index.docbook > predefined docbook tags, Do you think it is important to not duplicate authors in the license statement and in the section? I think just duplicating this makes it easier for the reuse tool.
Re: Tips in splash screen on startup (suggestion)
On Monday, September 19, 2022 6:40:42 PM CEST samuel ammonius wrote: > Hello everyone, > > KDE has a lot of features that most people don't know about, so what if a > tip was shown on the splash screen during each startup? There is an implementation for such tips for applications: https://api.kde.org/frameworks/kconfigwidgets/html/classKTipDialog.html According to lxr.kde.org, no application uses it. The documentation also mentions this sentence: “Since 5.83, write the information to the handbook instead”
Re: Retirement of Capacity
> following sites still rely on Capacity in some form or another: > > kpdf.kde.org > okular.kde.org > Hey, okular.kde.org looked very similar to kpdf.kde.org until recently (April 2021) https://invent.kde.org/websites/okular-kde-org/-/merge_requests/4 Now it looks like kde.org and uses Hugo; Capacity was not mentioned anywhere. I believe Capacity can be turned off on okular.kde.org, while kpdf.kde.org is only of historical interest. (I didn’t even know it is still online.) (For those who don’t know: KPdf turned into Okular with KDE 4, so it is mostly the same product but just older.)
Re: Retirement of Capacity
On Monday, January 16, 2023 10:33:47 PM CET Albert Astals Cid wrote: > > > > kpdf.kde.org > > I think there's historical value in KPDF site. > > Maybe we can just save the generated html and serve that? Saving the HTML gets my vote. :) There was a time when a majority of websites looked like that, and I like this design. :D A soft redirect to okular.kde.org is already present on the home page, so the website it is not even outdated. David
Re: Easy mouse settings changing from right- to left-handed
On Saturday, February 18, 2023 1:09:22 PM CET Tobias Leupold wrote: > Hi all! > > My little son starts to use a computer for school, so I currently share my > notebook with him. He's left-handed (and I'm right-handed), so I searched > for a convenient way to switch the mouse settings from right-handed to > left-handed and vice versa, like with a small systray icon and just one > click to do. Hi, just want to add: There is a systray icon for the keyboard that appears automatically when you configure more than one keyboard layout. Now you need the same for the “mouse layout”, right? That seems perfectly reasonable to me, and I support this wish! :)
Re: MR Gardening - A discussion, please leave your input!
On Thursday, March 9, 2023 9:40:47 AM CET Méven wrote: > We could use a "stale" label for MR to allow maintainers to see the > script's results. > And even a "closing-soon" label, for MR not-update in the last 12 months. Is there a rule that all open merge requests need care? I would expect that it is enough to label an open merge request as “stale”. Merge requests are usually closed because they are bad. Stale merge requests are probably good, otherwise they would have been closed intentionally. David
Re: How to share Baloo index in a network.
On Sunday, March 12, 2023 2:47:18 PM CET Zener wrote: > Hi. > > I've got some computer in a network, each one with its files and baloo > daemon active. > > Can I share each baloo index along with each computer? > > Thanks. I don’t know. But I like the idea and I think KDE Connect is appropriate to allow this.
Re: Retiring Phabricator - Migrating tasks to Gitlab
> > Also, in Phabricator, Tasks have no real "home"; they just have project > > tags, and they can have multiple such tags to be able to belong to > > multiple projects. For example "VDG" and also "Plasma". Such a Task > > shows up in both projects' workboards. But in GitLab, Issues need to > > live in one place and only one place. So for such Phab tasks, we would > > need a way to determine the single new home of the Task in GitLab, and > > perhaps tag them with global-scope labels or something? > > Yes, we would need to do a deconflicting process there. > Any thoughts on the best approach to that? > > The simplest would be to consider some projects to be the natural "home" > for tasks (likely the app in question) while meta groups (such as VDG / > Windows / Flatpak / etc) would only get a task if it was the only project > on a task. For Phabricator tasks or Bugzilla tickets, it is obvious how to move them to another issue. Their numbers are also counted globally. I learned that it is also not difficult to move issues in Gitlab: https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#move-an-issue
Re: Per project repository snapcraft files?
On Sunday, August 20, 2023 12:47:10 PM CEST Ben Cooksley wrote: > On Sun, Aug 20, 2023 at 12:43 PM Scarlett Moore < > > scarlett.gately.mo...@gmail.com> wrote: > > Only on release! We will not be building from master! We don't want > > unstable snaps. > > Thanks, > > Scarlett > > In that particular case the jobs should be manually triggered only. > > Gitlab CI is really made for building artifacts for a given commit rather > than for a specified version though, so this is definitely going to be a > case of things not fitting quite right. > > Cheers, > Ben > [...] This confuses me too. It seems Scarlett wants to use a “deploy” stage [1] and a job rule [2] to run snap build&release jobs automatically when the release is done. If you mean that Gitlab CI should not be used to automate release jobs, you should elaborate more how binary-factory is meant to be replaced. Otherwise, do you just note that Gitlab CI is suboptimal, or do you recommend to use something else? Like: “Release build: automatic is fine. Release publish: please only manual”? Cheers, David [1] https://docs.gitlab.com/ee/ci/yaml/#stages [2] like this: snap-release-job: rules: -if: $CI_COMMIT_TAG =~ /^v[0-9][0-9]\.[0-9][0-9]\.[0-9][0-9]$/ [...] see also: https://docs.gitlab.com/ee/ci/jobs/job_control.html#use-predefined-cicd-variables-to-run-jobs-only-in-specific-pipeline-types
Re: Let's reserve F10 and Shift+F10 for accessibility
Hi Felix, thanks for this discussion! On Wednesday, September 6, 2023 11:27:34 AM CEST Felix Ernst wrote: > [1] I propose that we reserve the F10 key in most/all applications to either > open the first menu in the menu bar or open the hamburger menu (depending > on application). I didn’t know that F10 is standard for the menu bar. I agree that it should work. Applications should not hide the menu bar by default if it contains important actions. Hiding the menu bar requires only 2 clicks or Ctrl+M, and actions can provide the hamburger menu button in the toolbar by default. (Okular does this.) > [2] I propose that we reserve the Shift+F10 key combination to open the > context menu for the item that has keyboard focus. It should have the same > effect as the "Menu" key many keyboards have. Yeah. > About Shift+F10 I am not sure yet at which layer this should be implemented. > Ivan Tkachenko mentioned the idea in chat that it could potentially be > implemented as a Plasma-wide keyboard setting. Pressing Shift+F10 would > then always be identical to pressing the "Menu" key on a keyboard. Qt Widgets applications can use QContextMenuEvent/QWidget::contextMenuEvent(). Qt documentation indicates that the global context menu behavior follows the platform, so Plasma could tell Qt that Shift+F10 shall do the same as Menu. But it seems only some KDE applications support the Menu key. E. g. it works in Konsole, Dolphin, and KMail message view. It doesn’t work in Okular main view and KMail message list. (To try without having a menu key: `sleep 10 && xdotool key Menu` and then focus the relevant widget by clicking it.) Cheers, David
Re: First round of feedback from Fedora 40 KDE Plasma 6 (Wayland-only) discussion
On Monday, September 18, 2023 6:44:28 AM CEST Neal Gompa wrote: > Hey all, > > So unless you've been living under a rock for the past week, you might > have noticed a bunch of buzz about Fedora KDE proposing to drop the > X11 session with Plasma 6. Well, in this respect I am living in a subway tunnel... I knew that this day will come. > Barrier/Input-Leap has come up as well. Seamless keyboard and mouse > handoff across computers is in demand. > * https://discussion.fedoraproject.org/t/89794/6 > * https://invent.kde.org/plasma/xdg-desktop-portal-kde/-/issues/12 > The necessary portal frontends have landed in xdg-desktop-portal and > so we're just missing the requisite backend in xdg-desktop-portal-kde. Besides Barrier, there are also Synergy, x2x, and dozens of actual remote desktop applications. As soon as xdg-desktop-portal(-kde) supports programmatic handling of keyboards and screens, does that mean we can easily make applications like wayland2wayland?
Re: KDE Gear 24.02 bug fix releases and next Gear releases
On Monday, November 27, 2023 8:57:26 AM CET Heiko Becker wrote: > the question of the next Gear release (after 24.02) came up in #kde-devel > yesterday evening. [...] > > a) Continue with the usual dates, eg. 24.04 and 24.08. (or omitting 24.04 > and continue with 24.08 right away) > > b) Continue with the usual interval, so 24.06, 24.10 and so on > > c) Slightly change the interval to come back to the proven schedule with > its nice numbers divisible by 4, so something like, 24.05 and 24.08. Hi, As I remember, there wasn’t a more recent announcement than the below, and the linked wiki page does not discuss releases outside 24.02. So I assume that option a) from above is true. 23.08, 24.02, 24.04, then proceed as usual (every 4 months). But if something has changed since the below announcement, I would be happy to learn it, too. :) On Monday, 2023-09-04T05:50:45z David Edmundson wrote: > [...] > > - The KDE Gear release will move by 2 months to allow for the extra > time needed for testing initial Qt6 changes > > - An Alpha will be made in November (a soft freeze in Plasma terms) > > - Betas/RCs will be made throughout December and January (3 releases, > 3 weeks apart) > > - Final release of all 3 major parts in sync in February > > Due to the delay of KDE Gear by [2 months] an additional patch > release of 23.08 will be made. > > David Edmundson On Saturday, 2023-11-25T11:30:05z Albert Astals Cid wrote: > According to https://community.kde.org/Schedules/February_2024_MegaRelease > feature freeze is 29 November (i.e. next week). > > [...]
Re: KDE Gear 24.02 bug fix releases and next Gear releases
> On Monday, 2023-09-04T05:50:45z David Edmundson wrote: > > [...] The KDE Gear release will move by 2 months [...] I think now I get the confusion: Does this sentence refer to “KDE Gear 23.12” or to the general “KDE Gear release schedule”? I just assumed only 23.12 is delayed, because there was once a discussion about changing the schedule in general, and it was thought to be fine as it is.
Re: Unified internal communications channel
On Thursday, December 7, 2023 6:12:04 PM CET Joshua Goins wrote: > Hi Carl, > > > Adding a new channel that is either a mailing list, rss feed or a forum > > category won't help and will probably only makes it worse. It's also very > > difficult to defines that is an important internal news for the whole > > community is as it will be different for every subproject in KDE. The > > plasma logo discussion would have not been very relevant for any app > > developers. Similarly discussion about the new default database backend > > for > > Akonadi won't be interesting for Plasma developers but might be > > interesting > > for KMyMoney and other non-PIM apps using Akonadi. > > Yeah this is kind of tough to define, and I'm also wondering about the best > way to handle this. Ideally, the communication channel would be low traffic > (hence my suggestion to not allow discussions at all, and point people to a > relevant issue if they're interested) so people won't easily ignore it. I had the idea for such a channel before. But I admit that I did not search whether such a channel already exists. I would subscribe to a channel which is readable via email and has messages like these examples: * KDE Eco project launched. Interesting for developers concerned about ecological impact of KDE software and other software. More info [here]. * KDE community goals: The community goals for [date] to [date] shall be voted on until [date]. Goals can be submitted until [date]. Interesting for anyone seriously involved in the KDE community. More info [here]. * Akademy [year] event announced. This will be a hybrid meeting from [date] to [date], held online and in [place]. Interesting for people interested in KDE’s community and culture, and for those involved in several KDE projects. More info [here]. The four below examples are purely fictional, you did not miss them: * Akademy 2027 event cancelled. Because of urgent issues, Akademy 2027 can not take place. Important for anyone who planned to attend Akademy 2027. More info [here]. This is how an important discussion would be announced: * Discussion about KDE Eco CI jobs: Should energy measurement CI jobs become mandatory for all KDE applications? Interesting for developers and maintainers of KDE software and infrastructure. Join the discussion [here]. * Discussion about KDE Eco CI jobs: The discussion linked at [date] expanded to also cover mandatory energy measurement CI jobs for KDE websites. Interesting for KDE website maintainers. Join the discussion [here]. * Anouncement about KDE Eco CI jobs: Energy measurement CI jobs are now mandatory for most KDE Gear and Plasma projects. Result of the discussion linked at [date]. Interesting for developers and maintainers working on KDE Gear and Plasma. More info [here]. This would probably be a moderated mailing list. Anyone willing to announce something can send an announcement. Moderators only check that the announcement is self-contained, so that all readers can immediately judge the relevance for themselves. > That doesn't solve the scope issue though, but might help anyway. Based on what I have read on kde-devel and kde-community, that gives eligible announcements, the traffic may probably be low enough to ignore the scope issue. After all, you would probably subscribe to this channel to be well informed. I would exclude announcements that fit entirely in the scope of a project with an own communications channel. In my above examples, KDE Eco could not invite to the monthy meetings, and not to discussions about KDE Eco internal stuff of the mentioned CI jobs. Additionally I would put predictable announcements, like all regular releases and KDE Goals and Akademy, in a monthly digest. Cheers, David
Re: Post-MegaRelease projects
On Friday, February 23, 2024 11:12:16 AM CET Sune Vuorela wrote: > On 2024-02-22, Nate Graham wrote: > > I've started pondering post-megarelease projects. We've spent so long on > > porting and bugfixing that I think it might be useful to shift gears to > > feature work, and I'd like to brainstorm potential large-scale projects > > and gauge the level of interest in putting resources into them soon. > > A bit more from the devops end that I'd love to see people tackle: > > - Ensure frameworks and app unit tests interacting with windows can run >on Windows. >More details: The following fails on our windows CI >https://invent.kde.org/sune/windows-test-thingie/-/blob/master/main.cpp >I find it weird that we are spending resources on putting things in >the windows store and making apps available on windows, but we can't >actually have passing tests in our CI. > > - Find a way to run unit tests on android CI. > > - Make autotests guarding on all our CI's. > > - Clazy and clang-tidy and cppcheck on all our repositories in CI > > /Sune To motivate everyone who wants to get into KDE CI, I can report something helpful which I just found: At least since October 2023, there is extensive documentation on the CI system made for KDE projects. If you felt lost before, like me, it is now a good chance to try it again. https://community.kde.org/Infrastructure/Continuous_Integration_System README.md files have also been added to the ci-utilities repository. Thank you for writing this documentation! Cheers, David
Re: resvg
On Thursday, March 14, 2024 2:04:45 PM CET Sune Vuorela wrote: > On 2024-03-14, Igor Mironchik wrote: > > Hello, > > > > What do you think about https://github.com/RazrFalcon/resvg in case of > > processing and rendering SVGs? > > > > Do you have any plans to have this in Craft? > > With the current revitalization of QtSvg, I kind of think we should work > harder with that rather than try to replace it. > It is after all hooked in quite deep in our stuff already, so most of > our svg's needs to be compatible with QtSvg anyways. > > /Sune Well, QtSvg can only render (and create) SVGs, but there is no way to process an SVG document in a different way than to render it on a paint device. For me, this is a good reason to be interested in resvg.