Dec 152018
 

I've got a disc drive mounted in a caddy that uses linux to communicate with the (home, Windows) network. The drive has been failing to mount, usually returning a message like "wrong fs type, bad option, bad superblock on /dev/sdb1, missing codepage or helper program, or other error".

The drive contains recent work, so I want to recover data rather than simply reformat.

I've run fsck and done the automatic repair of inodes and blocks. I'm supposing the superblocks have been repaired, and…

troubleshooting sdb1/ext3 that fails to mount
troubleshooting sdb1/ext3 that fails to mount
Source: Linux.org

Dec 152018
 

I woke up early this morning, and those of you live above 45 parallel
north or so are used to the “I’m wide awake but it’s still dark as
night” feeling in the winter. I usually don’t turn on the lights,
wander into my office, and just bring my computer out of hibernate; that
takes a bit as my 100% Free-Software-only computer is old and slow, so I
usually go to make coffee while that happens.

As I came back in my office this morning I was a bit struck by both
displays with the huge Debian screen lock image, and it got me thinking of
how Debian has been my companion for so many years.
I spoke about this at
DebConf
15
a bit, and wrote
about a similar concept years before
. I realize that it’s been almost
nine years that I’ve been thinking rather deeply about my personal
relationship with Debian and why it matters.

This morning, I was inspired to post this because, echoing back to my
thoughts at my DebConf 15 talk, that I can’t actually do the work I do
without Debian. I thought this morning about a few simple things that
Debian gets done for me that are essential:

  • Licensing assurance. I really can trust that Debian will not put
    something in main that fails to respect my software
    freedom. Given my lifelong work on Free Software licensing, yes, I can
    vet a codebase to search for hidden proprietary software among the Free,
    but it’s so convenient to have another group of people gladly do that job
    for me and other users.
  • Curated and configured software, with connection to the
    expert
    . Some days it seems none of the new generation of
    developers are a fan of software packaging anymore. Anytime you want to
    run something new these days, someone is trying to convince you to
    download some docker image or something like that. It’s not that I don’t
    see the value in that, but what I usually want is that software I just
    read about installed on my machine as quickly as possible. Debian’s
    repository is huge, and the setup of Debian as a project allows for each
    package maintainer to work in relative independence to make the software
    of their interest run correctly as part of the whole. For the user, that
    means when I hear about some interesting software, Debian immediately
    connects me, via apt, with the individual expert who knows about that
    software
    and my operating system /
    distribution
    both. Apt, Debian’s Bug Tracker, etc. are actually a
    rudimentary but very usable form of a social networking that allows me to
    find the person who did the job to get this software actually working on
    my system. That’s a professional community that’s amazing
  • Stability. It’s rather amusing, All the Debian
    developers I know run testing on their laptop and stable only on their
    servers. I run stable on my laptop. I have a hectic schedule and always
    lots of work to do that, sadly, does not usually include “making my
    personal infrastructure setup do new things”. While I enjoy that
    sort of work, it’s a rabbit hole that I rarely have the luxury to enter.
    Running Debian stable on my laptop means I am (almost) never surprised by
    any behavior of my equipment. In the last nine years, if my computer does
    something weird, it’s basically always a hardware problem.

Sure, maybe you can get the last two mostly with other
distributions, but I don’t think you can get the first one anywhere
better. Anyway, I’ve gotta get to work for the day, but those of you out
there that make Debian happen, perhaps you’ll see a bit of a thank you from
me today. While I’ve thanked you all before, I think that no one does it
enough.

Bradley M. Kuhn: What Debian Does For Me
Source: Planet Gnome

Dec 152018
 

Are you a Plasma fan? And you want to develop KDE applications? This has just become easier and more fun than ever before.

In early November, we hosted a Snapcraft Summit in our London offices, a forward-thinking software workshop attended by major software vendors and Snapcraft engineers working at every level of the stack. Together, we sat down and helped bootstrap snaps of some really amazing products.

One of the participants was Harald Sitter, a longtime KDE developer and enthusiast. With more than one notch of experience on his snap belt, Harald joined us to think of innovative ways of making the publication of Qt and KDE applications easier and faster both for experienced developers as well as those just getting involved in this domain. Together, we came up with some really cool concepts and implementations for the KDE development stack, based on snaps:

  • Build-snap – this package is an essential snap that includes all the different build dependencies needed for KDE development – specifically the KDE Frameworks 5. If you want to create a new KDE application, this snap comes with the necessary libraries and tools for development. You can use the build-snap on any system, without having to worry whether your system satisfies the dependencies, or having to run virtualization, containers or other complex setups. You can also develop with the latest, bleeding-edge Qt, Qt Quick, Kirigami and Plasma toolkits without using any custom repositories. This approach also cuts down on boilerplate definitions that you normally have to put into the snapcraft.yaml file.
parts:

    kblocks:

        source: https://anongit.kde.org/kblocks.git

        plugin: cmake

        build-snaps: [kde-frameworks-5-core18-sdk]

Speaking to Harald, he elaborated on his experience and his take on the build snap:

With the new build snap technology, KDE application snapping is much easier than before as less obscure code needs to be added to make a snap actually use the correct development files to build software against the content snap. Previously, we had to resort to manually creating tarballs with all necessary assets and then instruct snapcraft to unpack them correctly. Now, snapcraft takes care of setting this up, and the build snaps, by virtue of being snaps, can make use of all the goodness of the Snap Store (e.g. clear revisions, easy rollback). The build snaps, together with the forthcoming extension, will make snapping KDE software super easy by moving all cruft behind the scenes, and a simple snapcraft.yaml will know how to properly build KDE software.

  • Content snap – this package is an essential snap that includes all the runtime libraries for KDE applications. The use of the content snap will make your KDE experience consistent, both in looks and functionality. It allows multiple applications to share the same runtime libraries, reducing the effective disk footprint by up to 99%!The full stack for Qt (3D acceleration middleware, translations, etc.), on top of the core snap, weighs somewhere between 100 and 200 MB, while most applications (including translations, documentation, artwork) are below 10 MB. A good example is Kcalc. If one were to put all the absolutely necessary requirements for Kcalc into one snap it’d be about 90 or 100 MB in size. With the content snap, Kcalc weighs only 500 KB, and the rest is shared through the content snap.Again, much like the build snap, it allows for modular usage, without having to maintain complex work setups.
apps:

    kblocks:

        command: kf5-launch kblocks

        plugs:

        - kde-frameworks-5-plug

        - home

        - x11

        - opengl

        - desktop

plugs:

    kde-frameworks-5-plug:

        content: kde-frameworks-5-all

        interface: content

        default-provider: kde-frameworks-5

        target: kf5
  • CMake improvements – the snapcraft CMake plugin is more generic. We have removed the reliance on make as the underlying build system, which enables the use of other build systems such as ninja. Several KDE snaps were refactored and successfully used build-snaps, including several games (KAtomic, Granatier and Bovo), utilities (for instance, the aforementioned Kcalc) and education programs (like KmPlot and KGeography). A number of other KDE application snaps were fixed or improved, and published in the store.

For instance, instead of:

parts:

    kblocks:

        source: https://anongit.kde.org/kblocks.git

        plugin: cmake

        build-snaps: [kde-frameworks-5-core18-sdk]

        configflags:

            - -DCMAKE_FIND_ROOT_PATH=/snap/kde-frameworks-5-core18-sdk/current

One can write:

parts:

    kblocks:

        source: https://anongit.kde.org/kblocks.git

        plugin: cmake

        build-snaps: [kde-frameworks-5-core18-sdk]

We also worked with Harald to reason through what would be contained in a snapcraft extension for KDE. This is currently work in progress, but should bring about some really useful features for developers.

KDevelop & Kirigami

Looking to the future, with cmake changes and the KDE extension in place, KDevelop will come with an integrated snap functionality. Developers who want to develop new applications using the KDE Frameworks will not need to worry about manually collecting and satisfying dependencies and putting everything together anymore.

Speaking of the future, while you’re waiting, you might want to check out the demo snap that showcases the new converged Kirigami framework, and allows both developers and users a taste of the new KDE using the new responsive, elegant, and open cross-platform QML-based toolkit.

Kirigami

There’s more! Plasma as a snap!

If you find the build and content snaps interesting, wait until you try the ENTIRE Plasma desktop. As a snap. The desktop comes as a standalone application, which you can run without making any changes to your underlying system. You also do not need to have the latest and greatest Linux distribution version to run the snap. If the system supports snaps, it will run the Plasma desktop.

Please note that this is still a tech preview and should not be considered for production. Because you’re installing in “devmode” it will have unfettered access to your system, much like a classically-packaged application. But you can install and test it easily:

snap install --edge --devmode plasma-desktop

You can test the desktop environment even on older systems. You can also test multiple versions in parallel, and have stable and bleeding-edge versions of the desktop living happily side by side without any library conflicts or clashes. The snap also integrates nicely into the SDDM login manager, so you have a seamless experience.

Plasma desktop

These are some of the many new features coming into the KDE world. Over the coming weeks, as we roll up improvements, you will be able to use the build and content snaps, which should make the development easier and faster. End users can already test some of the hot new stuff through the edge and beta channels in the Snap Store.

Stay tuned for updates.

The post KDE apps at the snap of your fingers appeared first on Ubuntu Blog.

KDE apps at the snap of your fingers
Source: ubuntu.com