FLOSS Project Planets

Kubuntu Paddleboard Club

Planet KDE - Fri, 2015-07-31 11:30

I always say the best way to tour a city is from the water

by
Categories: FLOSS Project Planets

InternetDevels: Lviv Euro DrupalCamp 2015: the best choice for your awesome autumn!

Planet Drupal - Fri, 2015-07-31 10:57

Hi, drupalers! Enjoying your summer? Time to make plans for your awesome autumn! We have checked the forecasts, analyzed the position of stars, written php scripts to define the luckiest date and place for you. Here you go, the answer is: October 17-18, Lviv Euro DrupalCamp. The time and place cannot be changed ;)

Read more
Categories: FLOSS Project Planets

Raphaël Hertzog: My Free Software Activities in July 2015

Planet Debian - Fri, 2015-07-31 10:45

My monthly report covers a large part of what I have been doing in the free software world. I write it for my donators (thanks to them!) but also for the wider Debian community because it can give ideas to newcomers and it’s one of the best ways to find volunteers to work with me on projects that matter to me.

Debian LTS

This month I have been paid to work 15 hours on Debian LTS. In that time I did the following:

  • Finished the work on tracker.debian.org to make it display detailed security status on each supported release (example).
  • Prepared and released DLA-261-2 fixing a regression in the aptdaemon security update (happening only when you have python 2.5 installed).
  • Prepared and released DLA-272-1 fixing 3 CVE in python-django.
  • Prepared and released DLA-286-1 fixing 1 CVE in squid3. The patch was rather hard to backport. Thankfully upstream was very helpful, he reviewed and tested my patch.
  • Did one week of “LTS Frontdesk” with CVE triaging. I pushed 19 commits to the security tracker.
Kali Linux / Debian Stretch work

Kali Linux wants to experiment something close to Debian Constantly Usable Testing: we have a kali-rolling release that is based on Debian Testing and we want to take a new snapshot every 4 months (in order to have 3 releases per year).

More specifically we have a kali-dev repository which is exactly Debian Stretch + our own Kali packages (the kali package take precedence) updated 4 times a day, just like testing is. And we have a britney2 setup that generates kali-rolling out of kali-dev (without any requirement in terms of delay/RC bugs, it just ensures that dependencies are not broken), also 4 times a day.

We have jenkins job that ensures that our metapackages are installable in kali-dev (and kali-rolling) and that we can build our ISO images. When things break, I have to fix them and I try to fix them on the Debian side first. So here are some examples of stuff I did in response to various failures:

  • Reported #791588 on texinfo. It was missing a versioned dependency on tex-common and migrated too early. The package was uninstallable in testing for a few days.
  • Reported #791591 on pinba-engine-mysql-5.5: package was uninstallable (had to be rebuilt). It appeared on output files of our britney instance.
  • I made a non-maintainer upload (NMU) of chkrootkit to fix two RC bugs so that the package can go back to testing. The package is installed by our metapackages.
  • Reported #791647: debtags no longer supports “debtags update –local” (a feature that went away but that is used by Kali).
  • I made a NMU of debtags to fix a release critical bug (#791561 debtags: Missing dependency on python3-apt and python3-debian). kali-debtags was uninstallable because it calls debtags in its postinst.
  • Reported #791874 on python-guess-language: Please add a python 2 library package. We have that package in Kali and when I tried to sync it from Debian I broke something else in Kali which depends on the Python 2 version of the package.
  • I made a NMU of tcpick to fix a build failure with GCC5 so that the package could go back to testing (it’s part of our metapackages).
  • I requested a bin-NMU of jemalloc and a give-back of hiredis on powerpc in #792246 to fix #788591 (hiredis build failure on powerpc). I also downgraded the severity of #784768 to important so that the package could go back to testing. Hiredis is a dependency of OpenVAS and we need the package in testing.

If you analyze this list, you will see that a large part of the issues we had come down to package getting removed from testing due to RC bugs. We should be able to anticipate those issues and monitor the packages that have an impact on Kali. We will probably add new jenkins job that installs all the metapackages and then run how-can-i-help -s testing-autorm --old… I just submitted #794238 as a wishlist against how-can-i-help.

At the same time, there are bugs that make it into testing and that I fix / work around on the Kali side. But those fixes / work around might be more useful if they were pushed to testing via testing-proposed-updates. I tried to see whether other derivatives had similar needs to see if derivatives could join their efforts at this level but it does not look like so for now.

Last but not least, bugs reported on the Kali side also resulted in Debian improvements:

  • I reported #793360 on apt: APT::Never-MarkAuto-Sections not working as advertised. And I submitted a patch.
  • I orphaned dnswalk and made a QA upload to fix its only bug.
  • We wanted a newer version of the nvidia drivers. I filed #793079 requesting the new upstream release and the maintainer quickly uploaded it to experimental. I imported it on the Kali side but discovered that it was not working on i386 so I submitted #793160 with a patch.
  • I noticed that Kali build daemons tend to accumulate many /dev/shm mounts and tracked this down to schroot. I reported it as #793081.
Other Debian work

Sponsorship. I sponsored multiple packages for Daniel Stender who is packaging prospector, a software that I requested earlier (through RFP bug). So I reviewed and uploaded python-requirements-detector, python-setoptconf, pylint-celery and pylint-common. During a review I also discovered a nice bug in dh-python (#793609a comment in the middle of a Build-Depends could break a package). I also sponsored an upload of notmuch-addrlookup (new package requested by a Freexian customer).

Packaging. I uploaded python-django 1.7.9 in unstable and 1.8.3 in experimental to fix security issues. I uploaded a new upstream release of ditaa through a non-maintainer uploaded (again at the request of a Freexian customer).

Distro Tracker. Beside the work to integrate detailed security status, I fixed the code to be compatible with Django 1.8 and modified the tox configuration to ensure that the test suite is regularly run against Django 1.8. I also merged multiple patches of Christophe Siraut (cf #784151 and #754413).

Thanks

See you next month for a new summary of my activities.

One comment | Liked this article? Click here. | My blog is Flattr-enabled.

Categories: FLOSS Project Planets

Mike Crittenden: Drupal 7 Deconstructed

Planet Drupal - Fri, 2015-07-31 09:40
How does Drupal work? Let's find out.

For years now I've wanted to dig through Drupal core, line by line, and understand how the big pieces do what they do. I'm finally doing that, and writing up my notes as I go.

Drupal 7 Deconstructed is the in-progress result of that.

If you've ever wondered what happens in the bootstrap process, or how Drupal's Form API works, or how exactly Drupal figures out which menu callback to run per page request, then this is the place to go.

It's just getting started, and so far I've only gone through the bootstrap process and the menu router, but I'm having a great time and learning a ton, so I expect to fill it up quickly.

Who could benefit from this?

Any developer who has ever wondered how Drupal works could get some value out of reading this. You'll need to know at least a little about Drupal development to understand parts (for example, I don't explain what hook_menu() is when talking about the menu router), but you shouldn't need to be an expert or anything.

If you feel like that describes you, but you don't understand a part, please let me know so that I can make it more approachable.

Want to help?

If you're interested in helping out, the best thing to do would be to keep an eye on the repo and proofread or review things as they're written.

Pull requests are also greatly appreciated, whether you want to fix a typo or submit a whole new chapter.

Or, if nothing else, just let me know if you like this idea! Knowing that this could be helpful to people besides just me is a huge motivational boost to keep things moving.

What's the end game?

I don't know. I could see this staying on GitHub forever, or being published on Leanpub, or ending up as a blog series.

Any suggestions?

Why Drupal 7? What about Drupal 8?

I chose Drupal 7 because it still has a pretty long shelf life left. Drupal 8 Deconstructed definitely needs to be written though, and I'd love to dive into that after 7 is complete.

What about contrib?

I would love to take apart some of the more commonly used contrib modules like Views, CTools, Panels, Webform, Pathauto, etc., as well, but one step at a time!

Please check out Drupal 7 Deconstructed and let me know what you think so far!

Read this next: I wrote a book for O'Reilly: "Responsive Theming for Drupal"
Categories: FLOSS Project Planets

Paul Bissex: Does Python scale?

Planet Python - Fri, 2015-07-31 06:47

(This is another thing I found myself writing on Quora and wanted to keep. The question was "Does Python have any scalability limitations?")

"Scalability" is a term people like to throw around, but the less specific you are as to what you mean by it, the less substantial the answers will be. It is not a simple linear measure on which languages can be given some numerical score.

Languages and their implementations do have certain inherent performance characteristics, but in order to understand their relevance to your needs you have to get specific about your needs.

You will always be able to find stories where people used technology X and found it "didn't scale". Sometimes this is because they didn't know, or chose not to pursue, certain performance optimizations. Sometimes this is because technology X was a poor fit for their problem.

(If you're into programming language esoterica, the technical feature of Python that gets the most attention in performance discussions is the Global Interpreter Lock.)

If it suits your project, use it. There's not some hidden performance ceiling that's going to suddenly appear and crush you. The Python system I work on serves 20+ million pages per day.

Categories: FLOSS Project Planets

Drupal core announcements: Recording from July 31st 2015 Drupal 8 critical issues discussion

Planet Drupal - Fri, 2015-07-31 06:29

We met again today to discuss critical issues blocking Drupal 8's release (candidate). (See all prior recordings). Here is the recording of the meeting video and chat from today in the hope that it helps more than just those who were on the meeting:

If you also have significant time to work on critical issues in Drupal 8 and we did not include you, let me know as soon as possible.

The meeting log is as follows (all times are CEST real time at the meeting):


[11:03am] jibran: I think it is sorted by name
[11:03am] jibran: the order in the hangout
[11:03am] WimLeers: y
[11:07am] jibran: We have to look at google hangout code base for that.
[11:08am] WimLeers: https://www.drupal.org/node/2499157#comment-10172426
[11:08am] Druplicon: https://www.drupal.org/node/2499157 => [meta] Auto-placeholdering [#2499157] => 5 comments, 4 IRC mentions
[11:11am] WimLeers: amateescu's issue link: https://www.drupal.org/node/2336627#comment-10160850
[11:11am] Druplicon: https://www.drupal.org/node/2336627 => Deadlock on cache_config (DatabaseBackend::setMultiple()) [#2336627] => 39 comments, 24 IRC mentions
[11:12am] WimLeers: plach: yay for vacation :D
[11:12am] GaborHojtsy: VACATIOOOOOON!
[11:12am] GaborHojtsy: sometime, sometime :)
[11:12am] alexpott: https://www.drupal.org/node/2542762 is the nearly ready issue
[11:12am] Druplicon: https://www.drupal.org/node/2542762 => hook_entity_type_update doesn't get the entity in the new revision after addTranslation and setNewRevision [#2542762] => 11 comments, 4 IRC mentions
[11:13am] alexpott: https://www.drupal.org/node/2542748 is the gnarly update issue
[11:13am] Druplicon: https://www.drupal.org/node/2542748 => Automatic entity updates are not safe to run on update.php by default [#2542748] => 21 comments, 7 IRC mentions
[11:15am] plach: WimLeers: :)
[11:15am] WimLeers: alexpott: yay :)
[11:15am] dawehner: https://www.drupal.org/node/2540416
[11:15am] Druplicon: https://www.drupal.org/node/2540416 => Decide whether we need hook_upgrade_N()/upgrade.php front controller [#2540416] => 27 comments, 4 IRC mentions
[11:16am] WimLeers: dawehner: cache tables are auto-created
[11:16am] naveenvalecha|af left the chat room. (Read error: Connection reset by peer)
[11:16am] WimLeers: but yeah, router table etc… #sadpanda
[11:19am] WimLeers: The issue that originally turned it from a separate PHP file into a route + controller: https://www.drupal.org/node/2250119
[11:19am] Druplicon: https://www.drupal.org/node/2250119 => Run updates in a full environment [#2250119] => 21 comments, 1 IRC mention
[11:34am] WimLeers: plach: ROFL
[11:34am] WimLeers: plach++
[11:43am] WimLeers: "a foam of circles" lol
[11:48am] alexpott: https://www.drupal.org/node/2542748
[11:48am] Druplicon: https://www.drupal.org/node/2542748 => Automatic entity updates are not safe to run on update.php by default [#2542748] => 21 comments, 8 IRC mentions
[11:55am] dawehner: WimLeers: well but those tables aren't auto fixed
[11:56am] dawehner: WimLeers: so just imagine what happens if you need to change the cache_ tables
[12:00pm] WimLeers: dawehner: ohhh!
[12:02pm] WimLeers: plach: is that the church bells in Venice that I'm hearing?
[12:03pm] WimLeers: dawehner: lol
[12:03pm] WimLeers: :)
[12:05pm] plach: WimLeers: yeah, sorry :)
[12:05pm] WimLeers: plach: made me feel like I was on vacation, ever so briefly
[12:05pm] WimLeers: :D
[12:05pm] plach: :)
[12:23pm] dawehner: alexpott: are the issues the new thing or the solutions ;)
[12:24pm] alexpott: dawehner: well we have better ideas

Categories: FLOSS Project Planets

Akademy 2015 & Kate

Planet KDE - Fri, 2015-07-31 04:53

Today, I will travel back home from Akademy 2015.

I must say, it was really a nice KDE meeting and I had a lot of fun ;=)
The first day the KDE e.V. general assembly did take place, then two days of actually interesting talks (including the great announcement of Plasma Mobile). After some more days with interesting BoFs and hacking, Akademy is now ending for me.

I didn’t do that much work on Kate, I mostly did small bugfixes for the applications bundled with the KDE Applications releases regarding their HiDPI support, finally no Konsole that can’t redraw correctly on scrolling on a HiDPI screen with scaling activated!

For Kate, the most stuff I did was porting one more plugin (the text filter plugin), fixing some small bugs and rearranging the search bars for in document and in files search. I hope it now is a bit nicer to use, still that is not the final state and I guess we will ask the VDG for more input later on. (btw., if you see any HiDPI glitches in Kate/KTextEditor master, please inform me, I really want to have non-pixelated output ;=)

A big thanks to all organizers & helpers of Akademy 2015! You did a great job, it was a lot of fun, the location was nice, the social event + day trip was good, all fine One of the nicer Akademy experiences! Lets hope that the flight home works out, as Dominik is taking the same plane, otherwise the Kate workforce will be seriously diminished.

Categories: FLOSS Project Planets

Simon Kainz: DUCK challenge: week 4

Planet Debian - Fri, 2015-07-31 03:15

The DUCK challenge is making a quite stable progress: in the last 4 weeks there were approximately 12.25 packages fixed and uploaded per week. In the current week the following packages were fixed and uploaded into unstable:

So we had 14 packages fixed and uploaded by 10 different uploaders. A big "Thank You" to you!!

Since the start of this challenge, a total of 49 packages, uploaded by 31 different persons were fixed.

Here is a quick overview:

Week 1 Week 2 Week 3 Week 4 Week 5 Week 6 Week 7 # Packages 10 15 10 14 - - - Total 10 25 35 49 - - -

The list of the fixed and updated packages is availabe here. I will try to update this ~daily. If I missed one of your uploads, please drop me a line.

DebConf15 is approaching quite fast, so please get involved: The DUCK Challenge is running until end of DebConf15!

Pevious articles are here: Week 1, Week 2, Week 3.

Categories: FLOSS Project Planets

OpenStack Summit Tokyo 2015: Vote for Ceph Presentations

Planet KDE - Fri, 2015-07-31 02:24
In a few hours the voting period for the next OpenStack Summit in Tokyo ends at 30. July, 11:59 PDT (31. July  6:59 UTC / 08:59 CEST).
Here a some interesting talks regarding Ceph you may would like to vote for (this list is not intended to be exhaustive):
Categories: FLOSS Project Planets

Plasma Mobile References Images by Kubuntu

Planet KDE - Thu, 2015-07-30 21:32

We launched Plasma Mobile at KDE’s Akademy conference, a free, open and community made mobile platform.

Kubuntu has made some reference images which can be installed on a Nexus 5 phone.

More information is on the Plasma Mobile wiki pages.

Reporting includes:

Categories: FLOSS Project Planets

Justin Mason: Links for 2015-07-30

Planet Apache - Thu, 2015-07-30 19:58
  • danilop/yas3fs · GitHub

    YAS3FS (Yet Another S3-backed File System) is a Filesystem in Userspace (FUSE) interface to Amazon S3. It was inspired by s3fs but rewritten from scratch to implement a distributed cache synchronized by Amazon SNS notifications. A web console is provided to easily monitor the nodes of a cluster.

    (tags: aws s3 s3fs yas3fs filesystems fuse sns)

  • danilop/runjop · GitHub

    RunJOP (Run Just Once Please) is a distributed execution framework to run a command (i.e. a job) only once in a group of servers [built using AWS DynamoDB and S3]. nifty! Distributed cron is pretty easy when you’ve got Dynamo doing the heavy lifting.

    (tags: dynamodb cron distributed-cron scheduling runjop danilop hacks aws ops)

Categories: FLOSS Project Planets

OSTraining: Using Theme Developer and Firebug to Debug Drupal Themes

Planet Drupal - Thu, 2015-07-30 18:47

There are several tools that that makes designing for Drupal much, much easier.

In particular, we recommend the Theme developer module and also Firebug.

Many of you may know about Firebug already. It's a browser tool that allows you to inspect any CSS, HTML or JavaScript elements.

Think of Theme developer as a Drupal-specific version of Firebug. Using Theme developer you can click on any element of your Drupal site and get a breakdown of how it was built.

Categories: FLOSS Project Planets

FSF News: The FSF's statement on Windows 10

GNU Planet! - Thu, 2015-07-30 17:35

Microsoft uses draconian laws to prevent anyone from popping the hood on Windows and studying the source code that underlies it. Because of this, the world's most widespread computer system is completely outside the control of its users. This puts Microsoft in a dominant position over its customers, which it takes advantage of to treat them as a product. In fact, Microsoft announced that, with Windows 10, it will begin forcing lower-paying users to test less-secure new updates before giving higher-paying users the option of whether or not to adopt them.

Increased public scrutiny has forced Microsoft to adjust its advertising to focus on how secure it is and how well it protects privacy. But who does it secure and protect? Certainly not the user. Since Windows 10 is nonfree software, users and independent security experts can't access the source code, so they are forced to take Microsoft's word for it that their computers are safe and their data is being used responsibly. And it hardly seems warranted to trust a company that is reported to give the NSA special security tip-offs that it could use to crack into Windows computers.

Advertising companies are surely licking their chops over Windows 10's new privacy policy, which asserts the privilege to sell almost any information it wants about users, even creating a unique advertising ID for each user to sweeten the deal.

By contrast, free software like the GNU/Linux operating system is developed by professional and volunteer communities working transparently, freely sharing their work with each other and the world. Users have meaningful influence over the software development process and complete choice over what code they run. This means the software usually treats them with respect. Even if a free software developer took a page from Microsoft's book and began abusing its users, it would have no way to keep them locked in -- when this happens, independent experts copy the source code, remove the offending bits and help people switch to the user-respecting version.

Because it is fundamentally insecure and scoffs at privacy, Windows is an open window onto you. Because it locks users and independent experts out of the development process, it is also a locked door to your computer, and only Microsoft has the key. If you are considering replacing your operating system with Windows 10, we hope you switch to GNU/Linux instead. Join thousands of others and pledge to try GNU/Linux today.

The FSF maintains a list of endorsed GNU/Linux distributions, and there are myriad resources online for getting started. If you want to try free software but you can't be persuaded to leave Windows quite yet, try these free programs that work on Windows. If you are thinking about buying a new computer, check out the laptops we certify through our Respects Your Freedom program. If you're the type that builds their own computer, use h-node, the community-maintained database of computer components that work well with free software.

We can't hope to match Microsoft's huge advertising budget, but if you're on social media (see our recommendations for user-respecting social media systems) you can help raise awareness of Windows' abuses and encourage people to switch, in your own words. Help us jam Microsoft's ridiculous #UpgradeYourWorld hashtag by including it in your posts encouraging people to steer clear of Windows.

Media Contacts

Zak Rogoff
Campaigns Manager
Free Software Foundation
+1 (617) 542 5942
campaigns@fsf.org

Categories: FLOSS Project Planets

The Sun Sets on KDE-Solaris

Planet KDE - Thu, 2015-07-30 16:07

[[ No stories at Akademy this year — well, not by me. Maybe Kevin will write down how he got his students to sleep this year. Heck, I didn’t even put together a not-going-to-Akademy badge this year, and I see it’s been almost a year since my last post, which was after-Akademy-Brno. ]]

The KDE-Solaris site has been shuttered. The subdomain now redirects to KDE techbase, which documents the last efforts related to KDE on then-OpenSolaris. From the year 2000 or earlier until 2013, you could run KDE — two, three or four — on Solaris, either SPARC or (later) x86. I remember doing packaging for my university, way back when, on a Sun Enterprise 10000 with some ridiculous amount of memory — maybe 24GB, which was ridiculous for that time. This led — together with some guy somewhere who had a DEC Alpha — to the first 64-bitness patches in KDE. Solaris gave way to OpenSolaris, and Stefan Teleman rebooted the packaging efforts in cooperation with Sun, using the Sun Studio compiler. This led to a lot of work in the KDE codebase in fixing up gcc-isms. I’d like to think that that evened up the road a little for other non-gcc compilers later.

But OpenSolaris was removed from circulation, and Illumos hasn’t really got much in the way of desktop. The team kind of fell apart as the OS shifted underneath. The mailing list was shut down over a year ago.

This week, the site closed down as well.

So I’d like to take a moment to thank Stefan, hajma, Eva, Gerard, Joep, Alan for their work on  or support of KDE on Solaris over the years. Many others contributed as well — I don’t, and didn’t, know everyone involved, but I’d still like to say thank you.

As one roadway is abandoned, another pathway is cleared. And of course the ruins are still there, lurking in the shrubbery, for anyone with a machete and a Solaris-derivative-OS to rediscover and rebuild, should they so feel inclined. There’s gold (at least dtraces of gold) in them thar hills.

Categories: FLOSS Project Planets

Sina Salek Official Site: Drupal Module: CSS JS Total Control is here to rescue the themers

Planet Drupal - Thu, 2015-07-30 15:46

When we create themes in Drupal, there are great number of reoccurring tasks that we have to do like adding IE conditional comments, remove or replace some core or contributed modules CSS/JS files to prevent conflict with the theme, putting some JavaScript at the bottom of the page or even adding inline CSS or JS files. The module which i'm going to introduce, makes it possible to take care of all those tasks and even more with no special knowledge and no programming.

read more

Categories: FLOSS Project Planets

DebConf team: DebConf15 Schedule Published and Additional Featured Speakers Announced (Posted by DebConf Content Team)

Planet Debian - Thu, 2015-07-30 15:09

DebConf15 Schedule

The DebConf content team is pleased to announce the schedule of DebConf15, the forthcoming Debian Developers Conference. From a total of nearly 100 talk submissions, the team selected 75 talks. Due to the high number of submissions, several talks had to be shortened to 20 minute slots, of which a total of 30 talks have made it to the schedule.

In addition, around 50 meetings and discussions (BoFs) have been submitted so far, as well as several other events like lightning talk sessions, live demos, a movie screening, a poetry night or stand-up comedy.

The Schedule is available online at the DebConf15 conference site.

Further changes to the schedule can and will be made, but today’s announcement represents the first stable version.

Featured Speakers

In addition to the previously announced invited speakers, the content team also announces the following list of additional featured speakers:

The full list of invited and featured speakers, including the invited speakers profiles and the titles of their talks is available here.

Categories: FLOSS Project Planets

Robert Burrell Donkin: Nóirín Plunkett

Planet Apache - Thu, 2015-07-30 15:05


https://www.flickr.com/photos/robertburrelldonkin/5729816462

smiles and socks retreating in co. wicklow now empty

whiskey and secrets bar camping in oxford

much too much for more

why was our world too small a space for you...?

my only hope is that you've finally found the peace you've always deserved http://t.co/d361Qzdzf2 https://t.co/66b9PnWQDt

gone all gone but not forgotten, never forgotten

https://twitter.com/noirinp

Nóirín Plunkett


Categories: FLOSS Project Planets

Kubuntu Wily Alpha 2

Planet KDE - Thu, 2015-07-30 13:51

The Second Alpha of Wily (to become 15.10) has now been released!

The Alpha-2 images can be downloaded from: http://cdimage.ubuntu.com/kubuntu/releases/wily/alpha-2/

More information on Kubuntu Alpha-2 can be found here: https://wiki.kubuntu.org/WilyWerewolf/Alpha2/Kubuntu

Categories: FLOSS Project Planets

Isovera Ideas & Insights: Does Your Drupal Site Pass the 2-3 Second Test?

Planet Drupal - Thu, 2015-07-30 12:56
At Isovera, we like to build websites that people like to use. One of the best ways to enhance a user's experience is to give them what they are looking for fast! Site performance is often overlooked or relegated to the end of a project; but, it could be the most important factor in the success of your project.
Categories: FLOSS Project Planets
Syndicate content