ideascube issueshttps://framagit.org/groups/ideascube/-/issues2017-08-17T13:17:21Zhttps://framagit.org/ideascube/ideascube/-/issues/534Catalog: DownloadCheck.checksum_mismatch2017-08-17T13:17:21ZYohanCatalog: DownloadCheck.checksum_mismatchFrom time to time the download fails in the middle:
```
ideascube@idb-jor-zaatari-52:~$ sudo ideascube catalog install tedscience.en
IDEASCUBE_ID=idb_jor_zaatari
Importing settings from ideascube.conf.idb_jor_zaatari
Download: 45.17% |...From time to time the download fails in the middle:
```
ideascube@idb-jor-zaatari-52:~$ sudo ideascube catalog install tedscience.en
IDEASCUBE_ID=idb_jor_zaatari
Importing settings from ideascube.conf.idb_jor_zaatari
Download: 45.17% |⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛⬛ | 5.2 GiB/11.4 GiB (377.3 KiB/s) | ETA: 05:07:01Failed downloading tedscience.en
DownloadCheck.checksum_mismatch
```
Not sure what can cause such an error in the middle of the download. Seems like, for some reason, somehow we consider that the dl is finished and then do a checksum, which of course cannot be correct.
https://framagit.org/ideascube/ideascube/-/issues/532Scheduled shutdown2016-10-04T19:41:04ZVincent AgnanoScheduled shutdownA feature request was to enable a shutdown at a configurable time.
The interest is to make sure one does not forget to switch it off in the evening and runs out of battery.
A side effect might be that adminsitrator leave the habit of shu...A feature request was to enable a shutdown at a configurable time.
The interest is to make sure one does not forget to switch it off in the evening and runs out of battery.
A side effect might be that adminsitrator leave the habit of shutting down the computer from the interface and accidentally switch off the generator without prior manual shutdown of the computer.
Opinions are welcome.
https://framagit.org/ideascube/ideascube/-/issues/529Tag cloud: CSS glitch when latin and arabic tags follow each others2016-10-04T17:02:48ZYohanTag cloud: CSS glitch when latin and arabic tags follow each others![screenshot from 2016-10-04 19-01-23](https://cloud.githubusercontent.com/assets/146023/19084052/1ec8cd78-8a65-11e6-9908-b97290d35ed1.png)
![screenshot from 2016-10-04 19-01-23](https://cloud.githubusercontent.com/assets/146023/19084052/1ec8cd78-8a65-11e6-9908-b97290d35ed1.png)
https://framagit.org/ideascube/ideascube/-/issues/521SIGPIPE error in uwsgi log2017-06-15T17:00:30ZFlorian HESLOUINSIGPIPE error in uwsgi logWhen 12 devices are connected to the KoomBook (pulling http://ideascube.lan every 6s) uwsgi loose control and start giving these errors.
Nginx return 502 bad gateway on it side.
```
switches on core 0)
Tue Oct 4 10:34:15 2016 - SIGPI...When 12 devices are connected to the KoomBook (pulling http://ideascube.lan every 6s) uwsgi loose control and start giving these errors.
Nginx return 502 bad gateway on it side.
```
switches on core 0)
Tue Oct 4 10:34:15 2016 - SIGPIPE: writing to a closed pipe/socket/fd (probably the client disconnected) on request /fr/mediacenter/ (ip 192.168.2.212) !!!
Tue Oct 4 10:34:15 2016 - uwsgi_response_writev_headers_and_body_do(): Broken pipe [core/writer.c line 287] during GET /fr/mediacenter/ (192.168.2.212)
OSError: write error
[pid: 6661|app: 0|req: 186/690] 192.168.2.212 () {44 vars in 875 bytes} [Tue Oct 4 10:34:14 2016] GET /fr/mediacenter/ => generated 0 bytes in 1747 msecs (HTTP/1.1 200) 5 headers in 0 bytes (0 switches on core 0)
Tue Oct 4 10:34:15 2016 - SIGPIPE: writing to a closed pipe/socket/fd (probably the client disconnected) on request /fr/mediacenter/ (ip 192.168.2.115) !!!
Tue Oct 4 10:34:15 2016 - uwsgi_response_writev_headers_and_body_do(): Broken pipe [core/writer.c line 287] during GET /fr/mediacenter/ (192.168.2.115)
OSError: write error
[pid: 6660|app: 0|req: 224/691] 192.168.2.115 () {46 vars in 807 bytes} [Tue Oct 4 10:34:14 2016] GET /fr/mediacenter/ => generated 0 bytes in 1742 msecs (HTTP/1.1 200) 5 headers in 0 bytes (0 switches on core 0)
Tue Oct 4 10:34:16 2016 - SIGPIPE: writing to a closed pipe/socket/fd (probably the client disconnected) on request /fr/mediacenter/ (ip 192.168.2.214) !!!
Tue Oct 4 10:34:16 2016 - uwsgi_response_writev_headers_and_body_do(): Broken pipe [core/writer.c line 287] during GET /fr/mediacenter/ (192.168.2.214)
OSError: write error
[pid: 6659|app: 0|req: 154/692] 192.168.2.214 () {44 vars in 875 bytes} [Tue Oct 4 10:34:14 2016] GET /fr/mediacenter/ => generated 0 bytes in 1744 msecs (HTTP/1.1 200) 5 headers in 0 bytes (0 switches on core 0)
```
I'll try to tweak Nginx/Uwsgi to avoid this kind of error
https://framagit.org/ideascube/ideascube/-/issues/488Try and move our `tags` command upstream2016-09-16T09:52:06ZMathieu BridonTry and move our `tags` command upstreamThat command is great, but it's not specific to ideascube.
Maybe we should try and send that upstream to Taggit?
(originally from a comment I made on #464)
That command is great, but it's not specific to ideascube.
Maybe we should try and send that upstream to Taggit?
(originally from a comment I made on #464)
https://framagit.org/ideascube/ideascube/-/issues/487The catalog remote file format should be (more) compatilbe with the "Esino" c...2017-08-17T13:17:08ZMatthieu GautierThe catalog remote file format should be (more) compatilbe with the "Esino" catalog specification.During the kiwix sprint at Esino Lario, we defined a catalog specification for the metadatas associated to a package : http://wiki.kiwix.org/wiki/Catalog
At a point, we will make ideascube compatible with the Esino specification.
We sho...During the kiwix sprint at Esino Lario, we defined a catalog specification for the metadatas associated to a package : http://wiki.kiwix.org/wiki/Catalog
At a point, we will make ideascube compatible with the Esino specification.
We should start to slowly change the way we name things in ideascube to be more compatible with the
Esino specification and so reduce the gap.
This issue is here to open a discussion to decide how we do thing. (And as a remainder for the future)
Here a first sight of the differences between the two catalog specifications :
| Ideascube | Esino | Comments |
| --- | --- | --- |
| id | id | Some bsf catalog has id in there metadata |
| key | name | The 'keys' in the bsf yaml files are used as name in ideascube. However, it doesn't follow the exact same semantic than Esino spec* |
| version | version | |
| name | title | We could simply rename the 'name' attribute to 'title' |
| description | description | |
| language | languages | Only one in ideascube, may contains more languages in Esino (ISO 639-3) |
| sha256sum | checksum | It has been proposed to rename checksum to sha256sum in Esino to explicit that we use sha256 for the checksum. Maybe nothing to do on our side. |
| url | url | |
| size | size | |
| | mimetype | |
| type | intended_use | Names let us think it is not the same, but we use it for the same thing : How to use the content. |
| | thumbnail_urls | To be defined in (in Esino as in ideascube) |
| | requires | |
| | tags | |
| | extra_fields | |
| | content_group | Could be used by ideascube to define how we display cards. |
| | variants | |
| | altenate_urls | |
| | authors | Could simply be added to the ideascube metadata |
| | publisher | Could simply be added to the ideascube metadata |
| | packager | Could simply be added to the ideascube metadata |
| | licences | Could simply be added to the ideascube metadata |
\* The name in Esino follow the `source.resource_name.variants` format (the lang potentially being part of the resource_name)
At bsf we follow the `name.lang` format.
https://framagit.org/ideascube/ideascube/-/issues/483Add several media to one media-center entry2017-09-21T11:59:23ZFlorian HESLOUINAdd several media to one media-center entryWe had recurrent questions about the way to had several media to one media-center entry.
For instance, we can have an audio file link to a pdf file or several versions of a same software (for windows, mac, linux). Currently we have to m...We had recurrent questions about the way to had several media to one media-center entry.
For instance, we can have an audio file link to a pdf file or several versions of a same software (for windows, mac, linux). Currently we have to make one post per file which is not really convenient.
Could we find a way to create this feature ?
https://framagit.org/ideascube/ideascube/-/issues/480Ideascube catalog install fail with wrong locale2017-10-24T08:22:22ZFlorian HESLOUINIdeascube catalog install fail with wrong localeIdeascube catalog fail when installing package with wrong locale
```
# Pastebin bfe4Ggtl
Rebuilding the Kiwix library
Traceback (most recent call last):
File "/usr/share/python/ideascube/bin/django-admin", line 9, in <module>
loa...Ideascube catalog fail when installing package with wrong locale
```
# Pastebin bfe4Ggtl
Rebuilding the Kiwix library
Traceback (most recent call last):
File "/usr/share/python/ideascube/bin/django-admin", line 9, in <module>
load_entry_point('Django==1.9.8', 'console_scripts', 'django-admin')()
File "/usr/share/python/ideascube/lib/python3.4/site-packages/django/core/management/__init__.py", line 353, in execute_from_command_line
utility.execute()
File "/usr/share/python/ideascube/lib/python3.4/site-packages/django/core/management/__init__.py", line 345, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/share/python/ideascube/lib/python3.4/site-packages/django/core/management/base.py", line 348, in run_from_argv
self.execute(*args, **cmd_options)
File "/usr/share/python/ideascube/lib/python3.4/site-packages/django/core/management/base.py", line 399, in execute
output = self.handle(*args, **options)
File "/usr/share/python/ideascube/lib/python3.4/site-packages/ideascube/serveradmin/management/commands/catalog.py", line 116, in handle
options['func'](options)
File "/usr/share/python/ideascube/lib/python3.4/site-packages/ideascube/serveradmin/management/commands/catalog.py", line 175, in install_packages
self.catalog.install_packages(options['ids'])
File "/usr/share/python/ideascube/lib/python3.4/site-packages/ideascube/serveradmin/catalog.py", line 626, in install_packages
handler.commit()
File "/usr/share/python/ideascube/lib/python3.4/site-packages/ideascube/serveradmin/catalog.py", line 155, in commit
et = etree.parse(f)
File "src/lxml/lxml.etree.pyx", line 3427, in lxml.etree.parse (src/lxml/lxml.etree.c:79840)
File "src/lxml/parser.pxi", line 1814, in lxml.etree._parseDocument (src/lxml/lxml.etree.c:116442)
File "src/lxml/parser.pxi", line 1834, in lxml.etree._parseFilelikeDocument (src/lxml/lxml.etree.c:116734)
File "src/lxml/parser.pxi", line 1729, in lxml.etree._parseDocFromFilelike (src/lxml/lxml.etree.c:115495)
File "src/lxml/parser.pxi", line 1150, in lxml.etree._BaseParser._parseDocFromFilelike (src/lxml/lxml.etree.c:110369)
File "src/lxml/parser.pxi", line 584, in lxml.etree._ParserContext._handleParseResultDoc (src/lxml/lxml.etree.c:103583)
File "src/lxml/parser.pxi", line 690, in lxml.etree._handleParseResult (src/lxml/lxml.etree.c:105196)
File "src/lxml/lxml.etree.pyx", line 324, in lxml.etree._ExceptionContext._raise_if_stored (src/lxml/lxml.etree.c:10740)
File "src/lxml/parser.pxi", line 362, in lxml.etree._FileReaderContext.copyToBuffer (src/lxml/lxml.etree.c:100948)
File "/usr/share/python/ideascube/lib/python3.4/encodings/ascii.py", line 26, in decode
return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd9 in position 232: ordinal not in range(128)
```
Mathieu BridonMathieu Bridonhttps://framagit.org/ideascube/ideascube/-/issues/474Responsive design for the forms2016-09-07T18:50:09ZbarbayellowResponsive design for the formsWhen the sreen is resized, the user interface is less usable. Since many projects include tablets, this is something that is important to improve.
![colombia - mozilla firefox_003](https://cloud.githubusercontent.com/assets/4816690/1832...When the sreen is resized, the user interface is less usable. Since many projects include tablets, this is something that is important to improve.
![colombia - mozilla firefox_003](https://cloud.githubusercontent.com/assets/4816690/18321451/50bd2f0a-752e-11e6-8219-8fac9158fa87.png)
https://framagit.org/ideascube/ideascube/-/issues/458See the list of devices connected on the hotspot2016-09-01T15:45:11ZYohanSee the list of devices connected on the hotspotRequest from the Azraq team: list the devices currently connected to the hotspot.
Not a huge priority but it could be nice to at least have an idea how hard would it be to have it.
Request from the Azraq team: list the devices currently connected to the hotspot.
Not a huge priority but it could be nice to at least have an idea how hard would it be to have it.
https://framagit.org/ideascube/ideascube/-/issues/453Try moving our pytest/logging workaround into pytest proper2022-11-29T13:36:40ZMathieu BridonTry moving our pytest/logging workaround into pytest proper#452 added some code to our pytest initialization which works around what seems like a glaring bug in pytest at first sight.
I merged the pull request to move forward (I needed it in the configuration branches), but let's keep it in min...#452 added some code to our pytest initialization which works around what seems like a glaring bug in pytest at first sight.
I merged the pull request to move forward (I needed it in the configuration branches), but let's keep it in mind.
Code is here: https://github.com/ideascube/ideascube/blob/master/conftest.py#L10-L14https://framagit.org/ideascube/ideascube/-/issues/448Weird button in the top bar of kiwix content2022-11-29T13:36:45ZbarbayellowWeird button in the top bar of kiwix contentwhen browsing content from a zim file using kiwix, for instance http://kiwix.demo.ideascube.lan/vikidia.en/, a top bar is automatically added. It contains a search field and 3 buttons :
- library
- home
- random
The home button links t...when browsing content from a zim file using kiwix, for instance http://kiwix.demo.ideascube.lan/vikidia.en/, a top bar is automatically added. It contains a search field and 3 buttons :
- library
- home
- random
The home button links to the home of the zim file -> cool
The random button leads to a random page -> cool
The library button leads to the list of all the zim files -> weird
Is there a way to remove the library button from the top bar ? A setting in kiwix for instance ?
![selection_007](https://cloud.githubusercontent.com/assets/4816690/17963057/fe8d0f04-6ab3-11e6-88ce-e5cb7b8cb7bf.jpg)https://framagit.org/ideascube/ideascube/-/issues/443Don't let staff lock themselves out2016-08-19T14:46:22ZMathieu BridonDon't let staff lock themselves outI just realized I could remove the staff status from my user.
So I tried it. :)
Of course, that was the only user on the system, so now there's no more staff user.
Sure, when I try opening a page at that point, I get prompted to creat...I just realized I could remove the staff status from my user.
So I tried it. :)
Of course, that was the only user on the system, so now there's no more staff user.
Sure, when I try opening a page at that point, I get prompted to create a staff user, but it would probably better to not let staff remove staff status from the only staff user in the first place.
I assume that when creating the first staff user (i.e booting to Ideascube for the first time), nobody is connecting to the app yet, so the first staff creation is relatively safe.
However, once the thing has been deployed for some time, and people connect to it, I could imagine a nasty race between the staffs rushing to create a new staff user after locking themselves out, and the users who would be asked to create one (and might comply even without bad intentions).
https://framagit.org/ideascube/ideascube/-/issues/418Generate "latin written name" from "full name" input2016-07-27T07:37:21ZYohanGenerate "latin written name" from "full name" inputIn non latin writting countries, the user form contain a "latin written name".
Now they are written by hand, and it takes time for people not used to write in this alphabet.
We could generate it from "full name" with `unidecode` module.
...In non latin writting countries, the user form contain a "latin written name".
Now they are written by hand, and it takes time for people not used to write in this alphabet.
We could generate it from "full name" with `unidecode` module.
Not sure we have a way not to generate it for already latin written name, but that's not a big issue at the end.
https://framagit.org/ideascube/ideascube/-/issues/414New card "out of the box"2016-07-27T03:51:17ZbarbayellowNew card "out of the box"We need a new kind of card on the home of ideascube : a direct access to the website of the ideascube community : http://www.ideas-box.org/index.php/fr/communaute. This website is available in English, French, Spanish and Portuguese. Ide...We need a new kind of card on the home of ideascube : a direct access to the website of the ideascube community : http://www.ideas-box.org/index.php/fr/communaute. This website is available in English, French, Spanish and Portuguese. Ideally, depending on the ideascube context and the selected language, the user is redirected to the relevant language. Default being English.
Since this is a website, we would need to hide this card if there is no Internet connection. This feature could be useful for some other website : display or not a card depending on the Internet connection.
barbayellowbarbayellowhttps://framagit.org/ideascube/ideascube/-/issues/406Improve the catalog tests2017-08-17T13:16:32ZMathieu BridonImprove the catalog testsThere's a lot of coverage missing in the catalog management command, and we've seen errors in there that would have been caught by tests (e.g `oprions`).
In addition, there's a lot of cargo-culting of the very inelegant succession of mu...There's a lot of coverage missing in the catalog management command, and we've seen errors in there that would have been caught by tests (e.g `oprions`).
In addition, there's a lot of cargo-culting of the very inelegant succession of multiple `f.write(...)` calls.
Let's fix all that.
https://framagit.org/ideascube/ideascube/-/issues/396Actually prevent editing/deleting packaged content from the mediacenter2016-07-13T12:08:04ZMathieu BridonActually prevent editing/deleting packaged content from the mediacenterSee https://github.com/ideascube/ideascube/pull/391#issuecomment-232328514
See https://github.com/ideascube/ideascube/pull/391#issuecomment-232328514
https://framagit.org/ideascube/ideascube/-/issues/394Improve the setup_dirs fixture2016-07-13T08:19:54ZMathieu BridonImprove the setup_dirs fixtureRight now it sets up all the directories declared in settings, for all tests.
This slows down the tests a bit, as it does unnecessary work for many tests.
We could split it up into one fixture per directory (with proper dependencies), ...Right now it sets up all the directories declared in settings, for all tests.
This slows down the tests a bit, as it does unnecessary work for many tests.
We could split it up into one fixture per directory (with proper dependencies), and only use the necessary one for each test.
However, I strongly feel that at least the `STORAGE_ROOT` needs to be done in the `pytest.ini` file, so it's done for all tests automatically.
https://framagit.org/ideascube/ideascube/-/issues/392Completely drop support for Zip backups2017-09-21T12:26:45ZMathieu BridonCompletely drop support for Zip backupsWe are [dropping support for creating Zip backups](https://github.com/ideascube/ideascube/pull/387).
Eventually, after a sufficiently long grace period, let's drop all support for Zip backups, even restoring.
We are [dropping support for creating Zip backups](https://github.com/ideascube/ideascube/pull/387).
Eventually, after a sufficiently long grace period, let's drop all support for Zip backups, even restoring.
https://framagit.org/ideascube/ideascube/-/issues/385Tags could be translated2017-09-21T12:19:12ZToMTags could be translatedA non english speaker might be unable to find anything since tags are mostly written in english.
Would that make sense to use some tool like `getext` to automatically build a translated tags list, so one can search (and find!) some arab...A non english speaker might be unable to find anything since tags are mostly written in english.
Would that make sense to use some tool like `getext` to automatically build a translated tags list, so one can search (and find!) some arabic words, for example?