Qubit/Repository for non-code assets

    From The Document Foundation Wiki

    This page will serve as a brainstorming location for a Repository for non-code assets for LibreOffice.

    Why do we need a new tool?

    We're currently trying to store all of our media assets on the wiki. This is problematic for multiple reasons, including:

    • The wiki doesn't handle large images (or other media) well.
    • The wiki isn't the easiest tool for managing large sets of media.
    • The only interface to the wiki is via the web GUI.

    (We may also have large binary source files stored in Silverstripe that would be more suited to organization in this type of repository. Someone who has access to that tool would be better-suited to comment on the topic :-)

    What will the repository store?

    (Subject to approval by whoever makes these decisions), this repository may hold any (all?) source media assets for LibreOffice and ODF projects. This would include:

    • Source media for websites
    • Icons for applications
    • Audio/Video clips

    Depending upon the tool selected we may wish to store some or all audio/video assets in a separate repository, due to space/cloning concerns.

    Derivates of the source files may live in this repository or be stored in other repositories (e.g. icons alongside code in git, images for the website in Silverstripe, embedded help media at ODF Authors, or illustrative screenshots in the TDF wiki or the Help wiki.

    Requirements

    Many of the requirements of this tool are listed in the table below. Other requirements or conditions, especially ones hard to codify in a table, are listed here:

    • People need to use it!
    We need to choose a tool that meets all of our infrastructure needs as well as providing a simple enough interface that the Design Team and other primary users of this tool feel comfortable using it.

    Feature comparisons

    This section displays a feature comparison between possible software candidates. It also displays the features provided by existing tools including MediaWiki and Silverstripe.-

    Color Importance
    Must have!
    Pretty Important
    Nice to have
    (todo)
    Feature Importance Media Wiki Silverstripe Git WebDAV ownCloud Alfresco
    Versioning Green tickY Green tickY[1] Green tickY Green tickY[2] Green tickY[3]
    WebDAV Green tickY[4] (Pages; What about File access?) Red XN(looks like no) {{Y}[5] Green tickY Green tickYOwnCloud#FeaturesWikipedia logo v3.svg Green tickY [6], [7]
    CMIS[8]Content Management Interoperability ServicesWikipedia logo v3.svg Red XN Red XN Red XN Red XN Red XN Green tickY[9]
    Command-line access Maybe [10], Subversion? Red XN (unlikely) Green tickY Green tickYcadaver, WebDAV + SVN Some [11], [12]
    Distributed Versioning/
    Local Edits
    Red XN Red XN(unlikely) Green tickY Maybe: WebDAV + SVN + git-svn Kind of (data is synchronized, but no local edits) ?
    Web Interface Read ? Green tickY Green tickY Green tickY (git web) ? Green tickY[13] Green tickY[14]
    Write ? Green tickY Green tickY Red XN Green tickY[15] Green tickY[16]
    GUI Green tickY Online Green tickY Online Green tickY (gitk, TortoiseGit, etc..) Green tickY Online Green tickY Online
    Shallow clone/checkout Red XN No local checkout Red XN[17] Green tickY (with caveats) Green tickY (by default) ?
    Checkout part of tree Red XN No local checkout Red XN? Red XN Green tickY Red XN Can checkout on per document basis
    Online gallery of media Green tickY (needs better nav tools) Green tickY Red XN (could export to other tool) Green tickYOwnCloud#FeaturesWikipedia logo v3.svg Green tickY Repository Browser
    Search/Filter by name/extension Green tickY (Search; Search -> Multimedia) Green tickY[18] Green tickY (find; git grep for full-text) Green tickY (but no full text search yet) Green tickYNote mimetype search
    Metadata management Green tickY (partial) Green tickYadd-on ? Green tickY[19]
    License mangagement Green tickY Maybe [20] Green tickY[21]
    Branching ? Green tickY Unlikely Maybe (TONS of outdated docs on their wiki; features are unclear)
    Track authorship/edits Green tickY Green tickY Green tickY Unknown Green tickY[22]
    Tags Green tickY ("Categories") Green tickY (cumbersome) No? Green tickY[23], [24]
    Easy to learn? Green tickY Green tickY Red XN Green tickY (probably) ?
    De-duplication Green tickY (prompt when same file uploaded) Green tickY ? Red XN? (couldn't find any mention)
    Checksums Green tickY ? Red XN? [25]

    Use Cases

    Here are some use cases for the repository:

    Case 1: Get images of computers to Design Team for website

    WHAT WE DID:

    • Uploaded images to wiki
    • Problem: Had to specify author and license (and then upload each file) individually.
    • Problem: Ran into some filesize issues
    • Problem: Limits on filesize

    IDEAL:

    • Batch-upload...
    • ...in the background
    • Option to choose existing license + author, or specify new ones

    Case 2: Get Impress Remote icon for the BSA

    WHAT WE DID:

    • Found an icon compiled from the source (??)
    • Problem: 3D-looking icon does not fit in with the other icons used in the BSA
    • Problem: No source file on hand for the icon

    IDEAL:

    • Source files for the Impress Remote icon would live in the repository
    • When a 2D-looking icon is needed, one may be rendered out (by the Design Team, BSA devs, etc..)

    Similar: Someone wanted an image component from the new LO 4.0 splash pages, but had to send a request for that content, rather than being able to access it directly.

    Case 3: Screenshots of the program are needed for our websites, manuals, etc..

    WHAT WE DO:

    IDEAL:

    • Store high-res screenshots in the repository.


    Decisions

    As of Mid-2013, we've deployed ownCloud.

    Meetings and Schedules

    This section contains notes from our meetings, and schedules/scheduled items:

    Meeting April 1, 2013

    This meeting is tentatively scheduled for the end of the week (Friday). In reality, it will take place whenever @qubit + @eagles0513875 are on IRC and have some time to chat :-)

    AGENDA:

    • Investigate current status of GUIs for Git
      • Is there equal/equivalent support on GNU/Linux, Mac, and Windows?
    • Find some testers
    • Get content for our test repo
      • We could use made-up or simulated data from Wikicommons (or similar).
      • Ideally we would use actual data from LibreOffice. (Perhaps @floeff can give us a dump of media from the Wiki)

    Meeting March 26, 2013

    AGENDA:

    • None :-)

    MINUTES:

    • Impromptu meeting on IRC (@qubit, @eagles0513875)
    • MediaWiki <-> Git bridges are immature and do not currently provide a useful tool for us.
      • (We could hack on these tools ourselves, but that could take an unknown amount of time)
    • What about just Git?
      • Git is mature and works.
      • CLI and GUI clients available
      • QUESTION: What about web interface(s)?
        • Specifically, what about being able to download a file or directory of content from the web interface?

    ACTION ITEMS:

    • @eagles0513875 will install git and git-web on the test server
    • @qubit will investigate web front-ends to git

    Also see

    • Discussion about this repo on the website mailing list here, here, etc.. (archive threading isn't perfect)