Wednesday, September 25, 2019

Milanese Akademics

Each year, the KDE community puts on one of the best tech conferences in the world, and people from around the globe congregate in, usually, a university to talk about all the things that happened over the last year (or decade, or indeed sometimes longer, usually referring to a certain David's t-shirts), and to show off the shiny things people have been working on, or take those discussions which fall into the overlap between "too awkward to take over the internet" and "can wait a few months for a resolution".

We even managed to do a short stop at a cafe near Paris Gare de Lyon for lunch, and for a slightly tired Jonathan to do a quick unboxing of a shiny new piece of kit donated to the cause by Tuxedo Computers

Last year, my attendance was cut short due to a stressful situation (entirely of my own making, or rather my builders' making - house renovation work is at least as stressful people tell you it is), but this year i was able to stay for the duration. It started in London, where three of us caught the Eurostar to Paris, and then a TGV from there to Milan. A lovely, relaxed sort of trip, with considerably less hassle than any flight i've taken. Highly recommend it if you have a few more hours available to spend. Oh, and it's way better for the environment than flying, which when the option exists in a reasonable capacity is just a lovely side effect (still no tunnels between the Americas and the Eurasian land mass ;) ).

Delightful food, and impressively made ales and beers, hosted by Je Suis Jambon.

Tradition dictates that the evening before the first day of Akademy is spent at some place somewhere in the host city, where a registration station is available for people to drop by and get their badge, and some refreshments. In this case, it was a delightful place with craft beers on tap, and some absolutely wonderful fingerfoods, in the shape of cheeses, cured meats, and a variety of bread based delights. Also while there, i was reminded that i had quite entirely forgotten to bring my sound recorder, and so the video of Jonathan installing KDE Neon on the new laptop was not particularly useful. Note to self: Bring sound recorder next year.

A Panel of Goals. One old and shiny, and one new and also shiny.

The first day of Akademy was full of all manner of amazing talks, and not just the always-brilliant hallway track. A great keynote by Lars Knoll, talking about shiny things in the pipeline for Qt 6, followed by several talks, all about the goals the community have been focused on furthering the most over the last couple of years, and the announcement of new goals alongside that. As with all such things, that does not mean the old goals have been reached, not by far, and they are continuing to be worked on. It means that there is recognition that there is sufficient progress that we can bring focus onto other parts of our community as well.

Italians take their coffee breaks seriously

Sunday was my own sort of "big day", and so i managed to get precisely zero pictures of the goings-on during that day - though of course i did manage to get in the group photo along with most everybody else. What i did instead of taking photos of people being engaged in eating tasty treats and generally being amazing was to do two presentations.

The social event Sunday night had tasty food, enthusiastic and skilled bar staff, and great company. Also a Kirigami-powered tail (sorry, no pictures, i was busy wearing it ;) )

The first of these was a panel, where we first presented the various ways in which KDE gets its software to users. The second half was the panel round, in which the panel took questions from a an audience so engaged we entirely ran out of time. Some really great questions, too, and i personally look forward to looking through the video of it when those are released, as i feel like there were definitely things that i have forgotten and which need following up on. Thank you to all who attended, and to the panel participants.

The social event venue was in what i can only describe as an eclectic, and delightful location.

The second of these was a much more traditional presentation, in which i went through my work on KNewStuff's Qt Quick components over the last few months. The patch is currently still in review (please do take time to give that a once-over, if you've got the time), but feels very much like it wants to get merged. The whole point of the exercise is to make KNewStuff work in a Qt Quick world, and generally make everything look and feel modern. The old widget based components have done their job well, and continue to do so (in fact, i have spent not inconsiderable time to ensure they still work), but everybody wants things that are more touch friendly, and while that could be done with widgets, it would just be shoehorning something in, and that's just not how we roll. The new ones are new and shiny, and all 'round lovely, if one does say so themselves.

The BoF sessions during the week were sometimes intense, sometimes intimate, and always interesting.

During the week, alongside the KDE e.V. AGM on Monday, it was time for the other, meatier part of the conference: The BoF sessions. Those things i mentioned earlier, which are awkward or difficult to discuss online for various reasons, that's what the BoF sessions are for. I didn't host any myself this year, but I did attend a great many. A small sample includes the Maui and Kirigami sessions on the Monday morning, which put the two teams in the same room, allowing them to take on those seemingly contentious topics of "why?", giving the team the ability turn that into the more immediately useful "how". Much progress was made there, that i very much look forward to seeing continuing.

Plasma is always a big topic, so one room was mostly dedicated to that.

Tuesday evening, the LGBTQ+ Meal event, hosted by the already busy Kenny D at his apartment near the university. As it turned out, the food was delicious, the wine and beer tasty, and sufficient enough that we all made it to the university the day after, and the chat ended up more or less centered around books, mostly science fiction, with a hint of fantasy mixed in, and just how incredibly powerfully the genre has changed recently. Sorry, no pictures from that, we were too busy being excited about C. J. Cherryh, Iain M. Banks, Ada Palmer, and a bunch of other amazing writers doing the good work. At this point i should perhaps mention that i sometimes make words, which other people think are sufficiently skilfully put together that they are ok to be published. If you'd like to see some of those, my Goodreads profile has links to those books.

Narrow passages, tiny cafes with tiny terraces, and church towers behind flowers

Along with more BoFs, Wednesday brought us the day trip, which this year was to Lake Como, a place to which the approach by coach is so steep several people very near to panic. We did all make it down intact, however, and we were greeted by the most delightful village of Varenna, with its steep, cliff side built houses, with their narrow passageways and immaculately presented, well, everything.

Nights are beautiful as well, even when just hanging out in a parking lot waiting for a coach to arrive

Thursday was the end of BoFs, and in the past this day has sometimes been more lightly dusted with sessions. This year, however, the spread was much more thorough, with many of the sessions from the previous days having had to be cut short, resulting in another sessions being desirable. It was exciting to me for two reasons: Firstly that it meant we understand limits and don't just keep going when someone else wants to start their BoF, which definitely is a positive. Secondly, it means we are getting good at picking things up in a more organised fashion, which might otherwise have just ended up either discarded, or being handled in the hallway track. While that of course is an endlessly useful not-really-track, if things are handled there, it makes those group chats much more difficult to achieve, compared to a room with a topic and (most often) an agenda. In short: We're getting good at this conferency thing. Kudos to everybody on that, this in itself has been nifty to witness.

Gelato? Gelato. Also, just someone's house, half way up a steep cliff face, with a lovely, little outlook space next to it.

Friday for me was travel day. Similarly no pictures of this, but it started with a nice, leisurely breakfast at the hotel, followed by a train all the way from Milan to London, via Paris (top tip: don't exit Paris Gare du Nord if you aren't keen on very busy streets), and finally a train from London and most of the way home. Bus finished it off, and i was home in time for perfectly normal bedtime. Oh, and i ported most of Calligra Gemini's welcome pages to Kirigami while we were sat on a comfortable and spacious train. Definitely doing that again :D

Calligra Gemini's alive?! </BrianBlessed>

Thank you to everybody involved in making Akademy such a huge success every year i've attended, it is never not a great event to attend!


The word of the day is: Umbrella. Because apparently the need for that sometimes occurs in Milan ;) (as well as here in the UK)

Labels: , ,

Thursday, August 17, 2017

Services Collaborating Openly at Akademy 2017

At the recently concluded Akademy 2017 in the incredibly hot but lovely Almería, yours truly went and did something a little silly: Submitted both a talk (which got accepted) and hosted a BoF, both about Open Collaboration Services, and the software stack which KDE builds to support that API in the software we produce. The whole thing was amazing. A great deal of work, very tiring, but all 'round amazing. I even managed to find time to hack a little bit on Calligra Gemini, which was really nice.

This blog entry collects the results from the presentation and the BoF. I realise this is quite long, but i hope that you stick with it. In the BoF rundown, i have highlighted the specific results, so hopefully you'll be able to skim-and-detail-read your specific interest areas ;)

First, A Thank You In Big Letters

Before we get to that, though, i thought i'd quickly touch on something which i've seen brought up about what the social media presence of the attendees looks like during the event: If you didn't know better, you might imagine we did nothing but eat, party and go on tours. My personal take on that is, we post those pictures to say thank you to the amazing people who provide us with the possibility to get together and talk endlessly about all those things we do. We post those pictures, at least in part, because a hundred shots of a group of people in an auditorium get a bit samey, and while the discussions are amazing, and the talks are great, they don't often make for exciting still photography. Video, however, certainly does that, and those, i hear, are under way for the presentations, and the bof wrapups are here right now :)

Nothing will stop our hackers. And this is before registration and the first presentation!

Presenting Presentations

Firstly, it felt like the presentation went reasonably well, and while i am not able to show you the video, i'll give you a quick run-down of the main topic covered in it. Our very hard working media team is working on the videos at the moment, though, so keep your eyes on the KDE Community YouTube channel to catch those when they're released.

The intention of the presentation was to introduce the idea that just because we are making Free software, that does not mean we can survive without money. Consequently, we need some way to feed funds back to the wildly creative members of our community who produce the content you can find on the KDE Store. To help work out a way of doing this in a fashion that fits in with our ideals, described by the KDE Vision, i laid out what we want to attempt to achieve in five bullet points, tongue-in-cheek called Principia pene Premium, or the principles of almost accidental reward:
  • Financial support for creators
  • Not pay-for-content
  • Easy
  • Predictable
  • Almost (but not quite) accidental
The initial point is the problem itself, that we want the creators of the content on the store to be financially rewarded somehow. The rest are limiting factors on that:

Not pay-for-content alludes to the fact that we don't want to encourage paywalls. The same way we make our software available under Free licenses of various types, we want to encourage the creators of the content used in it to release their work in similarly free ways.

Easy means easy for our creators, as well as the consumers of the content they produce. We don't want either them to have to jump through hoops to receive the funds, or to send it.

Predictable means that we want it to be reasonably predictable for those who give funds out to the creators. If we can ensure that there are stable outgoings for them, say some set amount each month or year, then it makes it easier to budget, and not have to worry. Similarly, we want to try and make it reasonably predictable for our creators, and this is where the suggestion about Liberapay made by several audience members comes in, and i will return to this in the next section.

Finally, perhaps the most core concept here is that we want to make it possible to almost (but not quite) accidentally send one of the creators funds. Almost, because of course we don't want to actually do so accidentally. If that were the case, the point of being predictable would fly right out the window. We do, however, want to make it so easy that it is practically automatically done.

All of this put together brings us to the current state of the KDE Store's financial support system: Plings. These are an automatic repayment system, which the store handles for every creator who has added PayPal account information to their profile. It is paid out monthly, and the amount is based on the Pling Factor, which is (at the time of writing) a count of how many downloads the creator has accumulated over all content items over course of the month, and each of those is counted as $0.01 USD.

Space-age looking crazy things at the Almería Solar Platform. Amazing place. Wow. So science.

Birds of a Feather Discuss Together

On Wednesday, a little while before lunch, it was time for me to attend my final BoF session of the week (as i would be leaving early Thursday). This one was slightly different, of course, because i was the host. The topic was listed as Open Collaboration Service 1.7 Preparation, but ended up being more of a discussion of what people wanted to be able to achieve with the store integration points we have available.

Most of the items which were identified were points about KNewStuff, our framework designed for easy integration of remote content using either OCS, or static sources (used by e.g. KStars for their star catalogues).

Content from alternate locations was the first item to be mentioned, which suggests a slight misunderstanding about the framework's abilities. The discussion revealed that what was needed was less a question of being able to replace existing sources in various applications, so much as needing the ability to control the access to KNewStuff more granularly. Specifically, being able to enable/disable specific sources was highlighted, perhaps through using Kiosk. It might still make sense to be able to overlay sources - one example given was the ability to overlay the wallpapers source (used in Plasma's Get New Wallpapers) with something pointing to a static archive of wallpapers (so users might be able to get a set of corporate-vetted backgrounds, rather than just one). This exact use case should already be possible, simply by providing a static XML source, and then replacing the wallpapers.knsrc file normally shipped by Plasma with another, pointing to that source.

A more complete set of Qt Quick components was requested, and certainly this would be very useful. As it stands, the components are very minimal and really only provide a way to list available items, and install/update/remove them. In particular two things were pointed out: There is no current equivalent of KNS3::Button in the components, and further no Kiosk support, both of which were mentioned as highly desired by the Limux project.

Signing and Security was highlighted as an issue. Currently, KNSCore::Security exists as a class, however it is marked as "Do not use, non-functional, internal and deprecated." However, it has no replacement that i am myself aware of, and needs attention by someone who, well, frankly knows anything of actual value about signing. OCS itself has the information and KNS does consume this and make it available, it simply seems to not be used by the framework. So, if you feel strongly about signing and security issues, and feel like getting into KNewStuff, this is a pretty good place to jump in.

Individual download item install/uninstall was mentioned as well, as something which would be distinctly useful for many things (as a simple example, you might want more than one variant of a wallpaper installed). Right now, Entries are marked as installed when one download item is installed, and uninstalling implicitly uninstalls that download item. There is a task on the KNewStuff workboard which has collected information about how to adapt the framework to support this.

But KNewStuff wasn't the only bit to get some attention. Our server-side software stack had a few comments along the way as well.

One was support for Liberapay which is a way to distribute monetary wealth between people pretty much automatically, which fits very nicely into the vision of creator support put forward in my presentation. In short, what it allows us to do

One topic which comes up regularly is adding support for the upload part of the OCS API to our server-side stack. Now, the reason for this lack is not that simply adding that is difficult at all, because it certainly isn't - quite the contrary, the functionality practically exists already. The problem here is much more a case of vetting: How do we ensure that this will not end up abused by spammers? The store already has spam entries to be handled every day, and we really want to avoid opening up a shiny, new vector for those (insert your own choice of colloquialism here) spammers to send us things we want to not have on the store. Really this deserves a write-up of its own, on account of the sheer scope of what might be done to alleviate the issues, but what we spoke about essentially came down the following:

  • Tight control of who can upload, so people have to manually be accepted by an administration/editors team as uploaders before they are given the right to do so through the API. In essence, this would be possible through establishing a network of trust, and through people using the web interface first. As we also want people to approach without necessarily knowing people who know people, a method for putting yourself up for API upload permission approval will also be needed. This might possibly be done through setting a requirement for people who have not yet contributed in other ways to do so (that is, upload some content through the web first, and then request api upload access). Finally, since we already have a process in place for KDE contributors, matching accounts with KDE commit access might also be another way to achieve a short-cut (you already have access to KDE's repositories, ability to publish things on the store would likely not be too far a stretch).
  • Quality control of the content itself. This is something which has been commented on before. Essentially, it has been discussed that having linting tools that people can use locally before uploading things would be useful (for example, to ensure that a kpackage for a Plasma applet is correct, or that a wallpaper is correctly packaged, or that there is correct data in a Krita brush resource bundle, or that an AppImage or Flatpak or Snap is what it says it is, just to mention a few). These tools might then also be used on the server-side, to ensure that uploaded content is correctly packaged. In the case of the API, what might be done is to return the result of such a process in the error message field of a potentially failed OCS content/add or content/edit call, which then in turn would be something useful to present to the user (in place of a basic "sorry, upload failed" message). 

For OCS itself, adding mimetype as an explicit way to search and filter entries and downloaditems was suggested. As it stands, it could arguably be implemented by clients and servers, however having it explicitly stated in the API would seem to make good sense.

The proposal to add tagging support to OCS currently awaiting responses on the OCS Webserver phabricator was brought up. In short, while there are review requests open for adding support for the proposal to Attica and KNewStuff respectively, the web server needs the support added as well, and further the proposal itself needs review by someone who is not me. No-one who attended the BoF felt safe in being able to review this in any sensible way, and so: If you feel like you are able to help with this, please do take part and make comments if you think something is wrong.

Finally, both at the BoF and outside of it, one idea that has been kicked around for a while and got some attention was the idea of being able to easily port and share settings between installations of our software. To be able to store some central settings remotely, such as wallpaper, Plasma theme and so on, and then apply those to a new installation of our software. OCS would be able to do this (using its key/value store), and what is needed here is integration into Plasma. However, as with many such things, this is less a technical issue (we have most of the technology in place already), and more a question of design and messaging. Those of you who have ever moved from one Windows 10 installation to another using a Microsoft account will recognise the slightly chilling feeling of the sudden, seemingly magical appearance of all your previous settings on the machine. As much as the functionality is very nifty, that feeling is certainly not.

Solar powered sun-shade platform outside the university building. With fancy steps. And KDE people on top ;)

Another Thank You, and a Wish

Akademy is not the only event KDE hosts, and very soon there is going to be another one, in Randa in the Swiss alps, this year about accessibility. I will not delve into why this topic is so important, and can only suggest you read the article describing it. It has been my enormous privilege to be a part of that several years, and while i won't be there this year, i hope you will join in and add your support.


The word of the day is: Aircon. Because the first night at the Residencia Civitas the air conditioning unit in the room i shared with Scarlett Clark did not work, making us very, very happy when it was fixed for the second night ;)

Labels: , ,

Monday, June 13, 2016

Randa Meetings 2016 is go!

After a nice, mostly uneventful trip to Randa, which involved picking up David on the way to the airport and then a long train trip on the very pleasant Swiss trains, we are now settled into the computer room and ready to get on with this year's meeting.


So, what will i be doing this year? Well, a few things, really:
  1. Hopefully we (that is myself and my better half Chris Hills, who has come with me this year) will succeed in getting him embedded in one of the teams, which is something we've wanted to do for ages, and this year it just seemed the time to get it under way for reals yo(tm). This is already well under way as i write these words, and that's pretty neat :) Thank you for being such a welcoming community! :D
  2. Get the first real release version done of the Peruse comic book reader app, which is based on KDE Frameworks 5 and the Kirigami Qt Quick 2 UX components
  3. Begin work on the content store support in Peruse.
  4. Hopefully get the Gemini microframework whipped into some semblance of usable shape (it would be nice to be able to use Calligra Gemini 3.0 for writing). This, however, is less critical than the others, for reasons which will become clear in the hopefully not too distant future. Very positive reasons. Keep your eyes peeled ;)
Points 3 and 4 above are... well, if you have followed me since i left university, and in part even during, you will know i've been involved with a fair few of the odd supporting fringe bits of the KDE community, and... it seems like i am going to be able to tie a few of those together into something coherent and functional. So, yes, watch this spot ;)

Now, do you like what we do at these sprints? Help us keep going! Sponsor it with any amount you can, or if you can't spare any funds, spread the word :)


The word of the day is: tea. Because that is totally a thing we can have here :)

Labels: , ,

Wednesday, August 26, 2015

Gemini at Randa 2015

Last year, I wrote a blog entry about the iminent release of Calligra 2.9 and the Calligra Gemini application which became a fully fletched member of the suite. In the latter half of that entry, I touched on what the future might potentially hold, and I mentioned the possibility of extending the concept from the application level to the complete system.

This future has, finally, arrived: We are now approaching the KDE Randa Meetings 2015, whose main topic this year is bringing touch to our software. In the spirit of KDE's software being something which integrates deeply between applications and with everywhere the applications run, the Gemini concept is in my personal, and of course biased, opinion a perfect match. In a world where our software runs on devices which, effectively, fit into three basic categories (that I will outline below), it would seem silly to not attempt this adaptation.


Create, Edit and View Presentations with Calligra Gemini
by Dan Leinir Turthra Jensen

The Gemini Device Categories

On the first, we find what we have become used to calling "the desktop", but which seems to be mostly laptops these days. These are devices where we have very detailed and fine grained interaction available, with a mouse and a keyboard, or some variation on those. In short, these are devices where we can perform intricate motions with a high level of precision; the sort of interaction required to create new content from scratch. These are devices in the Create category. In Plasma terms, this is the Plasma Desktop shell.

On the second, we have our various touch based devices. Recently there has been a great many attempts to create solutions to create content on these devices, but except for a very narrow range of situations, it turns out to be awkward and cumbersome. I am not talking about the attempts where you use a stylus to paint on a tablet screen, or a bluetooth keyboard to write text here. All that does is turn the previously simple-interaction device into a precise-interaction device as described above. What I mean here is a device with only a touch screen available, be it a tablet or a phone. These do not lend themselves well to creation of new content, but what they do lend themselves to is modification of existing content, which puts them very nicely into the Edit category. For Plasma, this would be Plasma Mobile, the shell created for phones, but which runs just fine on larger touch devices as well.

The final category are those devices which have extremely limited interaction available. There are a fair few of them out there, but without getting too deep here, let's say these are devices like an eBook reader (with the slow screen refresh and in some cases very limited input in the form of arrow keys and a select button), or TVs (where we can really only depend on input in the form of numbers and sometimes not even the arrow keys and select button that we might otherwise expect). Fairly obviously, these devices are not suitable for creation of new content, and really they are not well suited to even editing of it. They are, however, uniquely suited to consumption of content. This, in Gemini terms, puts them into the View category. This would be Plasma Media Center in the Plasma world.

What can you do to help?

In essence, as you can tell, we already have the bits available. Plasma is even able to switch its shell at runtime. Thought need to be put into getting the transitioning to work right. Not on a technical level, but on a human level. How can this be done without getting in the way? It is doable, but discussion must happen, and it is exactly the sort of thing which is done best face to face, and with prototypes made with pencils, paper and scissors, not with digital tools, simply because, well, once the code is written, people get attached: Paper is simple, and clearly not supposed to be final. This is why sprints and meetings like those held in Randa are so important.

As other blog entries on Planet KDE and elsewhere have suggested, the most immediately effective way to ensure that we can do this is to help with the fundraiser, which will allow the Randa Meetings and other sprints to happen in the best way possible. As i write these words, we have currently raised €10690 of our €38500 goal, so please, donate what you can, and spread the word far and wide. This year's hash tag is #KDEsprints, if you like that sort of thing - let's try and get this thing trending! I like aiming for the stars, won't you join me? :D


Donate to the KDE Sprints 2015 fundraising campaign

The word of the day is: Donations (because we need them!)

Labels: , ,

Friday, November 21, 2014

Only Tangentially Related To The Stars


It's a scary moment, that time when you reach the conclusion of something which has taken up a considerable chunk of your life for months. Not a bad kind of scary, really, more a sort of exciting, i-wonder-what-others-think kind of scary. For me, this is a moment i've reached now that Calligra Gemini has been merged into the master branch of Calligra, and is scheduled to be shipped with Calligra 2.9. Another reason it's scary is that, given this is sort of my baby, and have found it's something i use actively pretty much every day now, i am now also the official maintainer of that application, which is kind of a new thing for me. If you're wondering what this whole thing is about, there's a rundown of the news over on the Dot.

At the beginning of this project it was a fairly straight forward thing for me, very similar to the Krita Gemini project in which i was sort of a code monkey, with some marketing thrown in for good measure (i produced the videos used to show off Krita Gemini for the Steam Greenlight campaign, which culminated in Krita Gemini being, to our knowledge, the first piece of free/libre software launched on the platform). I had a manager, who did the majority of the liaising with our customer, Intel, and i provided technical commentary and timelining for the features which were suggested for the application.

As the project progressed, however, the manager in charge of the project ended up taking long term ill (the background story for which is all long and sad and not really relevant here), which essentially landed me with his responsibilities as well. This is not to say it was a bad thing, really - the illness obviously was, but me ending up with those responsibilities wasn't. It meant that i became the client liaison, and the person responsible for packaging Calligra Gemini for Windows, using the same WiX based system created by Stuart Dickson and used for Krita Gemini, and for generally just keeping the project running. In short, everything to do with it bar billing the customer for the work. This was also the time during which i decided we needed to tell more people about the project, and so came the idea to OBS our way to that, and produce some packages for openSuse at least - since, well, that is what i've packaged for in the past, and OBS is just so pleasant to work with that it'd be silly not to.

And now, we stand at the point of concluding the project itself. Not completing, not finishing by a long way, this really is just the start of the journey for Calligra Gemini, and but a small step on the journey of the whole Gemini thing. Really, what Gemini is is just an interpretation of the responsive design concept, which describes how your application should fit the device you're on. What we're doing here is implementing, in the real world, applications which don't simply look and feel right, but which will adapt at runtime to changing device conditions.

Where do we go from here?

This is what my interpretation of responsive design is. Not something which looks sort of ok everywhere, but something which adapts the entire experience to give you the options which make sense where you are. For Calligra Gemini that means the three-tiered approach of Create (desktop and laptops), Edit (all touch) and View (minimally interactive devices like televisions and other infotainment style devices), or indeed any of these when the user specifically requests it.

As the world fills with all sorts of strange device form factors, we have to be able to work well on them. Laptops and desktops, phones, tablets, televisions, cars, airplanes, even fridges and all sorts of other places. Another piece of software created by KDE which takes this head on is Plasma. The people behind it have, since some time now, been working on creating a variety of frontends for it which scale to various form factors, and a chat with one developer there a short while ago made me think that well, it would be brilliant to see that adaptability happen at runtime, the way Krita and Calligra Gemini do it.

What he could tell me was that, technically speaking, it was possible to do it, but that the code path had been untested and such. This is something nobody else has done. Other shells have tried to create one thing which fits everything (calling it convergence), where KDE has realised, as a community, that the way forward is to adapt to each, not to work with the assumption that a single size fits everybody.

So, what stars is it this is tangentially related to? Easy, the ones we're shooting for ;)

The word of the day is: writing
(as in, in bed, the way i do the majority of it ;) )

Labels: , ,

Sunday, October 19, 2014

Calligra Gemini - now also for Linux :)


Some people may remember earlier this year when Krita Gemini became (to my knowledge) the first open source software to become greenlit on Steam. For those who don't, yeah, that really happened ;) Krita Gemini was a project created in cooperation between the KDE community's Calligra team, the little software consultancy KO GmbH, and a large semiconductor manufacturer named Intel, who had some devices they needed to be able to show off. Krita Gemini is available on the Steam store, though not yet for Linux (as it turns out, Steam packaging for Linux is even more awkward than building stand-alone installers for Windows, an odd sort of situation for us used to sensible package managers)


Earlier this year (late April 2014) the team from KO and Calligra which built Krita Gemini had a teleconference with the Intel team, and we agreed that other applications would be well suited to a similar attention, and we came up with the idea of building Calligra Gemini, an application which would encapsulate Words and Stage, Calligra's word processor and presentation tool respectively, in the same way that Krita Gemini encapsulates Krita, with automatic switching between the existing desktop UX and a new touch friendly UX created for the purpose. Over the last little while, i've been posting builds on the project minisite (along with release notes and screenshots and such).


So now, with the initial work on that project reaching its conclusion, i decided that it was time to expose a few more people to it than what's been the case so far. So, over the course of this weekend, between making some tasty bread, cleaning and cooking dinner, i have been working on some packages for people who don't run Windows. Specifically, i have made a set of packages for openSUSE (just 13.1, in various guises, for now - others will follow), and they're available right here (and also shown on the project's minisite linked above)


Finally, i also released a short story i've been writing over the last couple of weeks (while waiting on the editors to get back to me on the novel i've also been working on). This is relevant here because i have been dogfooding; it was written entirely using Calligra Gemini, and the pdf and ePub versions were produced using the Calligra features as well. Finally, the work is stored in a git repository, which is also controlled by Calligra Gemini's support for using Git as cloud storage. The story is available as pdf and ePub on my deviantArt page :)

The word of the day is: Geiko

Labels: , ,