Coder Social home page Coder Social logo

Comments (4)

hnesk avatar hnesk commented on June 18, 2024 2

Oh, wow, I'm honored!
I just tested it from a fresh ubuntu-18.04.4-desktop-amd64.iso installation and I needed these packages:
CUSTOM_DEPS += libcairo2-dev libgtk-3-dev libglib2.0-dev libgtksourceview-3.0-dev libgirepository1.0-dev pkg-config cmake
pkg-config and cmake were needed for opencv-python-headless and everything else for GTK. After that pip install browse-ocrd succeeded.

I have some hesitations about the inclusion in ocrd_all:

  • I was wondering if it is a good idea to include browse-ocrd in ocrd_all, because it will drag in a lot of GTK/desktop package dependencies to ocrd_all, and that might become annoying for pure server usage (but with OCRD_MODULES it's easy to select/deselect modules, so maybe that's ok).
  • I have absolutely no idea if this can work in a Windows or macOS environment, and I won't be able to maintain this. Actually it's only ever tested on Ubuntu18.04 and 20.04
  • I'm not sure if the code is mature enough, I'm still trying a lot of things, restructuring the code, there are unimplemented things and quite some possibilities for crashes
  • Also I'm still not sure if it should become more of a mets.xml viewer or editor. My use case as a scan/preview tool needs some editing capabilities (that is: delete via right-click in the pagebrowser), but I don't want to take the responsibility for broken mets files ;)

So, with that said, if it is ok for you, it's ok for me. And I would be happy if more people would use it.

from ocrd_all.

kba avatar kba commented on June 18, 2024

ping @hnesk

from ocrd_all.

kba avatar kba commented on June 18, 2024

I understand and share your concerns @hnesk, appreciate your pragmatism. But let's keep this issue open and revisit later once the tool has matured and we have discussed how ocrd-browse would fit into the ocrd_all stack.

from ocrd_all.

bertsky avatar bertsky commented on June 18, 2024

@hnesk thanks for your thorough explanation!

* I was wondering if it is a good idea to include browse-ocrd in ocrd_all, because it will drag in a lot of GTK/desktop package dependencies to ocrd_all, and that might become annoying for pure server usage (but with OCRD_MODULES it's easy to select/deselect modules, so maybe that's ok).

That's a good point. So far we have tried to eliminate X11 dependencies whereever we can (e.g. prefering opencv-python-headless over opencv-python). But we never had any actual dedicated GUIs to begin with (except for debugging facilities).

We could include your module in such a way that unsupported platforms don't install it when using ocrd_all natively (see conceptual discussion in #147). For our Docker prebuilds, we should probably exclude it.

* I have absolutely no idea if this can work in a Windows or macOS environment, and I won't be able to maintain this. Actually it's only ever tested on Ubuntu18.04 and 20.04

Understood. Don't bother!

  • I'm not sure if the code is mature enough, I'm still trying a lot of things, restructuring the code, there are unimplemented things and quite some possibilities for crashes

That's true for most modules though (except for the crashes). But since will not be part of the productive processes, and already has value, I don't think we should be too concerned about this.

* Also I'm still not sure if it should become more of a mets.xml viewer or editor. My use case as a [scan/preview tool](https://github.com/hnesk/browse-ocrd-physical-import) needs some editing capabilities (that is: delete via right-click in the pagebrowser), but I don't want to take the responsibility for broken mets files ;)

Of course. If users change their METS with anything other than a processor, they must be sure to keep backups etc. This is similar to the case with ocrd-sanitize.

So, if there are no other objections, I'll make a PR along those lines.

from ocrd_all.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.