Debian Bug report logs - #694259
ITP: photofloat -- Web 2.0 Photo Gallery Done Right via Static JSON & Dynamic Javascript

version graph

Package: wnpp; Maintainer for wnpp is wnpp@debian.org;

Reported by: Antoine Beaupré <anarcat@debian.org>

Date: Sat, 24 Nov 2012 20:00:02 UTC

Owned by: Antoine Beaupré <anarcat@debian.org>

Severity: wishlist

Fixed in version photofloat/0~20120917+dfsg-2

Done: Antoine Beaupré <anarcat@debian.org>

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, jason@zx2c4.com, wnpp@debian.org:
Bug#694259; Package wnpp. (Sat, 24 Nov 2012 20:00:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to Antoine Beaupré <anarcat@debian.org>:
New Bug report received and forwarded. Copy sent to jason@zx2c4.com, wnpp@debian.org. (Sat, 24 Nov 2012 20:00:04 GMT) Full text and rfc822 format available.

Message #5 received at submit@bugs.debian.org (full text, mbox):

From: Antoine Beaupré <anarcat@debian.org>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: RFP: photofloat -- Web 2.0 Photo Gallery Done Right via Static JSON & Dynamic Javascript
Date: Sat, 24 Nov 2012 14:56:30 -0500
Package: wnpp
Severity: wishlist

* Package name    : photofloat
  Version         : 0.0~20121124+f7f92c1-1
  Upstream Author : Jason A. Donenfeld <jason@zx2c4.com>
* URL             : http://zx2c4.com/projects/photofloat/
* License         : GPL3
  Programming Lang: Python, Javascript
  Description     : Web 2.0 Photo Gallery Done Right via Static JSON & Dynamic Javascript

 PhotoFloat is a new open source web photo gallery aimed at sleekness
 and speed. It keeps with an old hat mentality, preferring to work over
 directory structures rather than esoteric photo database management
 software. Everything it generates is static, which means it's extremely
 fast.



Information forwarded to debian-bugs-dist@lists.debian.org, wnpp@debian.org:
Bug#694259; Package wnpp. (Sat, 24 Nov 2012 20:45:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to Antoine Beaupré <anarcat@debian.org>:
Extra info received and forwarded to list. Copy sent to wnpp@debian.org. (Sat, 24 Nov 2012 20:45:05 GMT) Full text and rfc822 format available.

Message #10 received at 694259@bugs.debian.org (full text, mbox):

From: Antoine Beaupré <anarcat@debian.org>
To: Jason@zx2c4.com
Cc: 694259@bugs.debian.org
Subject: things necessary to package photofloat in Debian
Date: Sat, 24 Nov 2012 15:40:53 -0500
[Message part 1 (text/plain, inline)]
Hi Jason,

I think we have talked before about the password-store project. I'm back
again for the Photofloat project, a great tool you have written and I'd
like to see in Debian eventually.

There are a few hurdles to go through unfortunately, on the Debian
side. I write to you to get your feedback about this effort, to see how
you as an upstream can collaborate with this. However, I totally
understand if you do not have time to respond or do not wish to change
photofloat for it to be packaged in Debian, in which case you should
feel free to ignore this email.

Here are the tasks that are necessary for the package to be accepted in
Debian after an inspection of the code.

 0. rename the binary
 1. have numbered releases?
 2. remove external libraries
 3. separate code from data
 4. default gallery and multi-gallery support

I expand each point below.

0. Rename the binary
--------------------

This one is much simpler - the python processor should simply be named
something else than main.py (maybe photofloat.py?) so it can be
installed in the $PATH.

This can be done in the build stages of the Debian package.

1. Numbered releases
--------------------

To simplify packaging and tracking of this software, tags in the git
repository or better tarball releases would be useful.

Otherwise the software will be released based on timestamps, the
proposed first version is for example called 0~20121124+f7f92c1 - not
pretty! :)

2. External libraries
---------------------

The following libraries are shipped with the upstream tarball and will
need to be removed before the upload into Debian:

 * jquery 1.7.2 (already in Debian)
 * jquery-hashchange.js 1.3 (not in Debian, not planned)
 * jquery-fullscreen.js 1.0 (not in Debian, not planned)
 * jquery-mousewheel.js 3.0.4 (already in Debian, as jquery-goodies)
 * yuicompressor 2.4.6 (2.4.7 already in Debian)
 * htmlunit 2.8 (already in Debian)
 * google-compiler (not in Debian, see http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=622928)
 * fonts/* (already in Debian, package lmodern)

Some of those are not problematic, because they are not packaged in
Debian at all, it's technically allowed to ship them. Those are
google-compiler, hashchange, fullscreen and mousewheel. google-compiler
is being packaged however, so that may be a dependency...

Tools like jquery, yuicompressor and HTMLunit will inevitably lead to
the Debian package having special procedures to link against those
builtin packages instead of relying with the upstream
distribution. Those mechanisms can stay in the Debian package, but if
they would be part of upstream, that would be better.

In any case, the Debian package's tarball cannot feature most of those
libraries, since it's part of the Debian policy to avoid shipping
duplicate copies of code, as it makes security maintenance much
harder. The solution for the Debian side is to simply create a new
tarball without those files. For upstream, the solution could be to
remove those and download them on the fly when building.

3. Code and data
----------------

It's pretty cool that you provided instructions to install what is after
all a personnal project. :) However, the way an album is created is not
exactly compatible with Debian's strict file hierarchy standards, which
follow the FHS with exceptions:

http://www.debian.org/doc/debian-policy/ch-opersys

The main problem is within the web/ directory. This directory, in the
default configuration, contains both data (the images and cache) and
code (HTML, javascript and CSS files).

Ideally, a shared copy of the code would sit in (say)
/usr/share/photofloat/web/ and symlinks (or whatever) would be created
to that within the webroot where the gallery data is actually stored.

I don't exactly know how images are loaded, and if it's possible to have
them in a completely different location, so I would welcome your input
on that.

Having this feature would enable administrators to offer a gallery
service to multiple users with minimal maintenance.

4. Default gallery and multi-gallery support
--------------------------------------------

Naturally, this brings us to the idea of having multiple galleries.

I was thinking of providing a default gallery with a cron job to
automatically build it and a entry in the Apache configuration.

Another tool could be one to create a separate gallery, which could be
documented in the README.Debian file.

A.

-- 
Le pouvoir n'est pas à conquérir, il est à détruire
                        - Jean-François Brient, de la servitude moderne
[Message part 2 (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, wnpp@debian.org:
Bug#694259; Package wnpp. (Sat, 24 Nov 2012 20:54:08 GMT) Full text and rfc822 format available.

Acknowledgement sent to Antoine Beaupré <anarcat@debian.org>:
Extra info received and forwarded to list. Copy sent to wnpp@debian.org. (Sat, 24 Nov 2012 20:54:08 GMT) Full text and rfc822 format available.

Message #15 received at 694259@bugs.debian.org (full text, mbox):

From: Antoine Beaupré <anarcat@debian.org>
To: 694259@bugs.debian.org
Subject: Re: Bug#694259: Acknowledgement (RFP: photofloat -- Web 2.0 Photo Gallery Done Right via Static JSON & Dynamic Javascript)
Date: Sat, 24 Nov 2012 15:52:13 -0500
[Message part 1 (text/plain, inline)]
Here's a first stab at the control file:

Source: photofloat
Section: web
Priority: optional
Maintainer: Antoine Beaupré <anarcat@debian.org>
Build-Depends: debhelper (>= 8.0.0), java-compiler
Standards-Version: 3.9.3
Homepage: http://zx2c4.com/projects/photofloat/
#Vcs-Git: git://git.debian.org/collab-maint/photofloat.git
#Vcs-Browser: http://git.debian.org/?p=collab-maint/photofloat.git;a=summary

Package: photofloat
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends},
    python-imaging,
    libjs-jquery,
    libjs-jquery-mousewheel,
    yui-compressor,
    libhtmlunit-java,
    lmodern
Recommends: libapache2-mod-php5 | php5-fpm | php5-cgi, httpd
Description: Web 2.0 Photo Gallery Done Right via Static JSON & Dynamic Javascript
 PhotoFloat is a new open source web photo gallery aimed at sleekness
 and speed. It keeps with an old hat mentality, preferring to work over
 directory structures rather than esoteric photo database management
 software. Everything it generates is static, which means it's extremely
 fast.

A more succint todo:

 1. install main.py as photofloat during build
 2. remove duplicate libraries from tarball and fix the result
 3. install files in the proper places
 4. make a working default gallery

1, 2 and 3 are mandatory, the main work being #2. #3 may also be
difficult, but once it's done #4 is easy.

The files to remove from the tarball are:

web/js/000-jquery-1.7.2.js - symlink to /usr/share/javascript/jquery/jquery.pack.js
web/js/003-mousewheel.js - symlink to /usr/share/javascript/jquery-mousewheel/jquery.mousewheel.js
web/utils/htmlunit-2.8* - remove from source, build against /usr/share/java/htmlunit-core-js.jar
web/utils/yuicompressor* - use during build, consider uglify instead
fonts/* - symlink to /usr/share/texmf/fonts/opentype/public/lm

I also consider removing those:

utils/google-compiler* - replace with uglify/yui-compressor?

This can simply be ignored and installed as an example file, but not
enabled: web/js/999-googletracker.js

Those should also eventually be removed:

web/js/001-hashchange.js
web/js/004-fullscreen.js

... once packaged in Debian.

-- 
Celui qui sait jouir du peu qu'il a est toujours assez riche.
                         - Démocrite
[Message part 2 (application/pgp-signature, inline)]

Changed Bug title to 'ITP: photofloat -- Web 2.0 Photo Gallery Done Right via Static JSON & Dynamic Javascript' from 'RFP: photofloat -- Web 2.0 Photo Gallery Done Right via Static JSON & Dynamic Javascript' Request was from Antoine Beaupré <anarcat@debian.org> to control@bugs.debian.org. (Mon, 03 Jun 2013 00:21:04 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, wnpp@debian.org:
Bug#694259; Package wnpp. (Mon, 03 Jun 2013 02:51:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to Antoine Beaupré <anarcat@orangeseeds.org>:
Extra info received and forwarded to list. Copy sent to wnpp@debian.org. (Mon, 03 Jun 2013 02:51:04 GMT) Full text and rfc822 format available.

Message #22 received at 694259@bugs.debian.org (full text, mbox):

From: Antoine Beaupré <anarcat@orangeseeds.org>
To: photofloat@lists.zx2c4.com
Cc: 694259@bugs.debian.org
Subject: debian package maturing
Date: Sun, 02 Jun 2013 22:49:07 -0400
[Message part 1 (text/plain, inline)]
Hey folks,

I started work on the Debian package. So far, it works well. I had to
strip out a lot of code from the PhotoFloat distribution, as I
mentionned before, to comply with Debian policies, but it seems the
package still works. :)

I also *think* it supports multiple galleries. The shared code is stored
in /usr/share/photofloat, so to create a new gallery symlink needs to be
used, for example, to create my gallery, I did:

    mkdir /var/www/photofloat
    cd !$
    ln -s /usr/share/photofloat/web/*
    mkdir albums cache

Then I can go into /var/www/photofloat and run photofloat as normal.

Things would be much simpler if:

 1. I could pass only the /var/www/photofloat directory to main.py
 2. if main.py would then create albums/ and cache/ automatically for me
 3. if main.py would setup those symlinks automatically
 4. the albums and cache directories would be one level up
 (so that only one symlink would be required, or an Apache Alias directive)

To make things real clear, here's the current hierarchy for a gallery:

$ cd /var/www/photofloat
$ ls -Rl
.:
total 4K
drwxr-xr-x 4 anarcat anarcat 4096 juin   2 22:18 web

./web:
total 76K
drwxr-xr-x 9 anarcat anarcat  4096 mai    5 23:46 albums
drwxr-xr-x 2 anarcat anarcat 73728 juin   2 22:25 cache
lrwxrwxrwx 1 anarcat anarcat    29 juin   2 22:04 css -> /usr/share/photofloat/web/css
lrwxrwxrwx 1 anarcat anarcat    31 juin   2 22:04 fonts -> /usr/share/photofloat/web/fonts
lrwxrwxrwx 1 anarcat anarcat    29 juin   2 22:04 img -> /usr/share/photofloat/web/img
lrwxrwxrwx 1 anarcat anarcat    36 juin   2 22:04 index.html -> /usr/share/photofloat/web/index.html
lrwxrwxrwx 1 anarcat anarcat    28 juin   2 22:04 js -> /usr/share/photofloat/web/js
lrwxrwxrwx 1 anarcat anarcat    38 juin   2 22:04 redirect.php -> /usr/share/photofloat/web/redirect.php
lrwxrwxrwx 1 anarcat anarcat    42 juin   2 22:04 staticrender.php -> /usr/share/photofloat/web/staticrender.php

albums/ and cache/ are what you expect, and are removed from the output
for brievety.

I am not so happy with the "symlink forest" approach, but at least it
works. The #4 mentionned above would mostly fix that, and then the
directory structure would look like:

$ cd /var/www/photofloat
$ ls -Rl
.:
total 4K
drwxr-xr-x 9 anarcat anarcat  4096 mai    5 23:46 albums
drwxr-xr-x 2 anarcat anarcat 73728 juin   2 22:25 cache
drwxr-xr-x 4 anarcat anarcat  4096 juin   2 22:18 web -> /usr/share/photofloat/web

Here we would only have to symlink the web/ directory instead of
symlinking all the contents. Of course, it's tricky because the
index.html needs to be installed somewhere, so maybe a compromise would
be this:

$ cd /var/www/photofloat
$ ls -Rl
.:
total 4K
drwxr-xr-x 9 anarcat anarcat  4096 mai    5 23:46 albums
drwxr-xr-x 2 anarcat anarcat 73728 juin   2 22:25 cache
drwxr-xr-x 4 anarcat anarcat  4096 juin   2 22:18 index.html -> /usr/share/photofloat/index.html
drwxr-xr-x 4 anarcat anarcat  4096 juin   2 22:18 web -> /usr/share/photofloat/web

So here we go... but at least we have photofloat in Debian now!

(Or will soon have, if the FTP masters accept the sanitized package... :)

A.
   
-- 
Imagine a world in which every single person on the planet is given
free access to the sum of all human knowledge.
                         - Jimmy Wales, co-founder of Wikipedia
[Message part 2 (application/pgp-signature, inline)]

Information forwarded to debian-bugs-dist@lists.debian.org, wnpp@debian.org:
Bug#694259; Package wnpp. (Mon, 03 Jun 2013 03:00:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to Antoine Beaupré <anarcat@orangeseeds.org>:
Extra info received and forwarded to list. Copy sent to wnpp@debian.org. (Mon, 03 Jun 2013 03:00:04 GMT) Full text and rfc822 format available.

Message #27 received at 694259@bugs.debian.org (full text, mbox):

From: Antoine Beaupré <anarcat@orangeseeds.org>
To: photofloat@lists.zx2c4.com
Cc: 694259@bugs.debian.org
Subject: Re: debian package maturing
Date: Sun, 02 Jun 2013 22:57:11 -0400
[Message part 1 (text/plain, inline)]
Oh, and I forgot: the debian package is here:

http://anonscm.debian.org/gitweb/?p=collab-maint/photofloat.git;a=summary

That's the source, yes, the binaries will be available once they pass
the NEW queue in Debian (which will take a while). In the meantime, you
can build the package by hand using "git-buildpackage").

A.
-- 
C'est trop facile quand les guerres sont finies
D'aller gueuler que c'était la dernière
Amis bourgeois vous me faites envie
Ne voyez vous pas donc point vos cimetières?
                        - Jaques Brel
[Message part 2 (application/pgp-signature, inline)]

Owner recorded as Antoine Beaupré <anarcat@debian.org>. Request was from Mònica Ramírez Arceda <monica@debian.org> to control@bugs.debian.org. (Mon, 03 Jun 2013 09:39:50 GMT) Full text and rfc822 format available.

Added tag(s) pending. Request was from Anibal Monsalve Salazar <anibal@debian.org> to control@bugs.debian.org. (Mon, 03 Jun 2013 09:39:58 GMT) Full text and rfc822 format available.

Reply sent to Antoine Beaupré <anarcat@debian.org>:
You have taken responsibility. (Sat, 31 Aug 2013 12:03:05 GMT) Full text and rfc822 format available.

Notification sent to Antoine Beaupré <anarcat@debian.org>:
Bug acknowledged by developer. (Sat, 31 Aug 2013 12:03:05 GMT) Full text and rfc822 format available.

Message #36 received at 694259-close@bugs.debian.org (full text, mbox):

From: Antoine Beaupré <anarcat@debian.org>
To: 694259-close@bugs.debian.org
Subject: Bug#694259: fixed in photofloat 0~20120917+dfsg-2
Date: Sat, 31 Aug 2013 12:00:07 +0000
Source: photofloat
Source-Version: 0~20120917+dfsg-2

We believe that the bug you reported is fixed in the latest version of
photofloat, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 694259@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Antoine Beaupré <anarcat@debian.org> (supplier of updated photofloat package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Sun, 21 Jul 2013 09:08:03 -0400
Source: photofloat
Binary: photofloat
Architecture: source amd64
Version: 0~20120917+dfsg-2
Distribution: unstable
Urgency: low
Maintainer: Antoine Beaupré <anarcat@debian.org>
Changed-By: Antoine Beaupré <anarcat@debian.org>
Description: 
 photofloat - Web 2.0 Photo Gallery Done Right via Static JSON & Dynamic Javasc
Closes: 694259
Changes: 
 photofloat (0~20120917+dfsg-2) unstable; urgency=low
 .
   * Add missing copyright notes, try to clarify unclear ones, thanks Luke!
 .
 photofloat (0~20120917+dfsg-1) unstable; urgency=low
 .
   * Initial release (Closes: #694259)
Checksums-Sha1: 
 a2e2b724804c2d20f16a2bb67192c5fa482bc7ac 2006 photofloat_0~20120917+dfsg-2.dsc
 b8d42aa4dbf75d99f5c03d8de26dc29cd12287b8 50954 photofloat_0~20120917+dfsg.orig.tar.gz
 bddd21d8762dbaffedefdbcbb53ddb05b9d08ffd 4090 photofloat_0~20120917+dfsg-2.debian.tar.gz
 8fe93bd8a48d6d40bcb9b801d169b31d09d48714 134966 photofloat_0~20120917+dfsg-2_amd64.deb
Checksums-Sha256: 
 11e6554e81102075adaf42225844f4c293746556f9724057d7b7bfbb24d3bb2d 2006 photofloat_0~20120917+dfsg-2.dsc
 06a016c159f39eb090543d76bd3ec7b4a4c819ce64893436902cb8ce81d25c58 50954 photofloat_0~20120917+dfsg.orig.tar.gz
 7971c8a0319027d875408bd3383cc696b9c7895147a2359634af7b8109e279df 4090 photofloat_0~20120917+dfsg-2.debian.tar.gz
 da6a6246c2a1a9c24b47b5a73e159fed48e492379680e4fd1c9e8fb730c77614 134966 photofloat_0~20120917+dfsg-2_amd64.deb
Files: 
 c3b74895a120e6d17b97e39b8cc626c9 2006 web optional photofloat_0~20120917+dfsg-2.dsc
 a42787fb5918442bbe6c99ba02c85124 50954 web optional photofloat_0~20120917+dfsg.orig.tar.gz
 5c6185e6dd144d5a93da6af419bb6e29 4090 web optional photofloat_0~20120917+dfsg-2.debian.tar.gz
 4c535f1ce943f1fa97863139a3a004c7 134966 web optional photofloat_0~20120917+dfsg-2_amd64.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iQIcBAEBCAAGBQJR7ALgAAoJEHkhUlJ7dZIeSckP/1FtIGidLCbXrPLXB2BDKVOW
i5gSj5qK1+Wk0vTugDPlfqcafTapRFxmPqtsOuWqfTdBVCNf7cSKzpUuLiuBT+mP
S8V/6bJPmkthHK9fH/EW1qeec/46z8Oc4Yxgkn8IAZcL9Lg26ZOk0CYIPNbxga7J
/LYmGVGYOcjb0BgNBFLTb74UpQKjt0Rs3nAR4GUTQxNJIhvBYfkLxQz9596mqSIG
BdHd6AD5+wylYlR4gYGs/jaQof5xkbSfPMXW5SsvExJLFBNMgZaHZEypHVutI6On
LV5lBGS2bLUWgbrnPJb8dOJOv4SHUJyb400+VgzSI/gbu64zcjh4BHWcTnGa9jQz
9qARSqklVVyo75k5lLjsDJ5kGG2Ud6Xp0ftbJLa3fd10SM0/TLMuQRzq5Wb8rMyI
KFO2/9IK2nFsC5zxyOgsIXxkumkmto+dHMcaYoG1xYHTfcRn7DvxxRmARvJfXxT4
fVzOHbplCDViuBeZEpfvxj4c64/zeHaWbn8G7b9tEwfjR4A+HRTbMFSq8a8FKhV0
oahXE5m3tE9C5N4u3lm3gLpXmmcBGG9LtP+1qAusugdrgBz5cnTqMJSzpQkQwXVw
vrGj3kdgK8gm2m9WPq1YQfek1iBIeKPLXBvSfE61dJBqvdyCkUn5AVtLJAjFlHcJ
nD1howHw01XhLL55lI1x
=4PEA
-----END PGP SIGNATURE-----




Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Sun, 29 Sep 2013 07:32:04 GMT) Full text and rfc822 format available.

Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Fri Apr 18 21:56:00 2014; Machine Name: beach.debian.org

Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.