Feed aggregator

KnackForge: Drupal 7 - Hooking Ajax events and views refresh

Planet Drupal - Thu, 16/04/2015 - 15:40
Drupal has a solid Ajax interface, we can hook into the Ajax events at various places. I will explain some 5 important methods,   1) beforeSerialize - called before data is packed and runs before the beforeSend & beforeSubmit 2) beforeSubmit - called before the ajax request 3) beforeSend - called just before the ajax request 4) success - called after ajax event returns data 5) complete - called after the request ends   Lets say you want to capture some ajax event (in built or made by other module) to do some event like Views refresh. We can use a very simple logic to do that.  
Categories: Elsewhere

Pronovix: Prototyping LinkForward with Drupal, a startup case study

Planet Drupal - Thu, 16/04/2015 - 15:10

This is the story of how I built a first prototype for LinkForward, a web application for power networkers, and how I built it in record time using Drupal (12 hours), without a single line of custom code.

Categories: Elsewhere

Andrew Shadura: Power button and logind

Planet Debian - Thu, 16/04/2015 - 14:05

If you have configured your laptop’s power button to act as sleep button using acpid, then installed systemd or systemd-shim and pressed the button only to find your laptop to shut down after it wakes up from sleep, set these options in /etc/systemd/logind.conf:

[Login] HandlePowerKey=ignore HandleSuspendKey=ignore HandleHibernateKey=ignore HandleLidSwitch=ignore
Categories: Elsewhere

Cruiskeen Consulting: Drupal for Developers Second Edition

Planet Drupal - Wed, 15/04/2015 - 23:53

Almost everyone who does any form of Drupal development uses Drush - it's the Swiss Army Knife of the Drupal world. Drush is the Drupal Shell, and it lets you do a whole lot of amazing things with Drupal sites without actually going to the site, logging in, and clicking buttons.  It's a command-line tool (and since I'm an old UNIX hand, it's just right for me.

Categories: Elsewhere

Joachim Breitner: Talk and Article on Monads for Reverse Engineering

Planet Debian - Wed, 15/04/2015 - 23:45

In a recent project of mine, a tool to analyze and create files for the Ravensburger Tiptoi pen, I used two interesting Monads with good results:

  • A parser monad that, while parsing, remembers what part of the file were used for what and provides, for example, an annotated hex dump.
  • A binary writer monad that allows you to reference and write out offsets to positions in the file that are only determined “later” in the monad, using MonadFix.

As that’s quite neat, I write a blog post for the German blog funktionale-programmierung.de about it, and also held a talk at the Karlsruhe functional programmers group. If you know some German, enjoy; if not, wait until I have a reason to hold the talk in English. (As a matter of fact, I did hold the talk in English, but only spontaneously, so the text is in German only so far.)

Categories: Elsewhere

Drupal.org frontpage posts for the Drupal planet: A new way to welcome newcomers on Drupal.org

Planet Drupal - Wed, 15/04/2015 - 22:04

The first initiative on the Drupal.org 2015 roadmap is ‘Better account creation and login’. One of the listed goals for that initiative is “Build a user engagement path which will guide users from fresh empty accounts to active contributors, identifying and preventing spammers from moving further.” This is something Drupal Association team has been focusing on in the last few weeks.

The first change we rolled out a few days ago was a ‘new’ indicator on comments from users whose Drupal.org accounts are fewer than 90 days old. The indicator is displayed on their profile page as well. We hope this will help make conversations in the issue queues and forum comments more welcoming, as people will be able to easily see that someone is new, and probably doesn’t know yet a lot about the way community works.

Today we are taking another step towards making Drupal.org more welcoming environment for new users. But first, a bit of background.

New users and spam

It is not a surprise for anyone that a big number of user accounts registering on the site are spam accounts. To fight that and prevent spam content from appearing on Drupal.org, we have a number of different tools in place. Of course, we don’t want these tools to affect all active, honest users of the site, and make their daily experience more difficult. To separate users we are sure about from those we aren’t sure about yet, we have a special ‘confirmed’ user role.

All new users start without such a role. Their content submissions are checked by Honeypot and Mollom, their profiles are not visible to anonymous visitors of the site, and the types of content they may create are limited. Once a user receives a ‘confirmed’ role, his or her submissions will not be checked by spam fighting tools anymore; their profile page will be visible to everyone, and they will be able to create more different types of content on the site.

This system works pretty well, and our main goal is to ensure that valid new users get the ‘confirmed’ role as quickly as possible, to improve their experience and enable them to fully participate on the site.

The best way to identify someone as not a spammer is have another human look at the content they post and confirm they are not spammers. Previously, we had a very limited number of people who could do that-- about 50. Because of that, it usually took quite some time for new user to get the role. This was especially noticeable during sprints.

Today we’d like to open a process of granting a ‘confirmed’ role to the thousands of active users on the site.

‘Community’ user role

Today, we are introducing a new ‘Community’ role on the site. It will be granted automatically to users who have been around for some time and reached a certain level of participation on Drupal.org. Users who have this role will be able to ‘confirm’ new users on the site. They will see a small button on comments and user profile of any user who has not yet been confirmed. If you are one of the users with ‘Community’ role, look out for this new Confirm button, and when you see one next to a user - take another look at what the person posted. If their content looks valid, just click ‘confirm’. By doing so, you will empower new users to fully participate on Drupal.org and improve their daily experience on the site.

With expect to have at least 10,000 active users with the ‘Community’ role. With so many people to grant the ‘confirmed’ role, new users should be confirmed faster than ever before.

If you aren’t sure if you have the ‘community’ role or not, don’t worry. We will send an email notification to every user whose account receives the new role. The email will have all the information about the role and how to use it.

Thanks for helping us make Drupal.org a better place!

Front page news: Planet Drupal
Categories: Elsewhere

Drupal Watchdog: VIDEO: DrupalCon Amsterdam Interview: MortenDK

Planet Drupal - Wed, 15/04/2015 - 19:39

On a sunny Amsterdam morning, we catch Morten (Tag1 Consulting, Geek Röyale) as he speeds through DrupalCon’s RAI Convention Center on an urgent Viking mission. We waylay him long enough for this brief, Danish-accented, rapid-fire chit-chat.

MORTEN: I am Morten, also known as MortenDK.

RONNIE RAY: You gave a talk this morning?

MORTEN: Yes, I gave a talk about the Drupal 8 Twig project, which is the new theming layer for Drupal. And I gave a demo on all the new and exciting things we have in it.

So that was really good to show off from a front-ender’s perspective everything that was done over the last couple of years and how the new system is going to work in Drupal 8. It was a real gas to finally really show it off. People could see we’re not just lying, but it’s actually real.

RR: So, can I ask you, what are you reading now?


RR: Any books, any magazines?

MORTEN: Ah – oh – uh – (bleep) – what’s the name of it? I actually have it on an audio file, it’s a fantasy story about... uh.. a lot of blood, a lot of personal vendettas. Good clean fun. But actually I haven’t had the time to read for a long time because I’ve been doing so much work on the Drupal project and I’ve been moving. Also, I took up my old hobby of painting miniatures again, just to geek out.

I’m a metal-head so pretty much anything... been into a lot of Opeth, a Swedish metal band – kind of a grown man’s metal. (Indecipherable.)

RR: Do you follow anyone on Twitter or FaceBook?

MORTEN: A couple, but normally not. Interviews with musicians are not always the most interesting thing, it’s the same thing as interviews with sports people, “So how did it go today?” “We played really hard!” “On the new album, we’re going to really show off.” So that’s kind of like... a couple of people... there’s a Swedish band called Arch Enemy I’ve been following closely.

RR: What’s the most exciting thing about Drupal 8 for you?

MORTEN: It is the front-end, the Twig system and the templates, and the way we have shifted focus in the front-end completely around, from being an afterthought to a whole new system that is built for front-enders instead of built by back-enders to front-enders. It’s kind of, we’ve taken control over our own destiny, and that I think is going to be the killer app for Drupal 8.

Tags:  DrupalCon DrupalCon Amsterdam Video Video: 
Categories: Elsewhere

Promet Source: How Drupalers Can Get Organized: Tips From a Librarian

Planet Drupal - Wed, 15/04/2015 - 19:26

Ahh, libraries. The smell of books, the sounds of pages turning, the incessant Karaoke singalongs of the library workers. OK, maybe the last one is a bit far-fetched, but we all know it’s founded in some truth. The fact remains that libraries are a hallowed ground of information consumption and organization.

That organization doesn’t happen by dint of chance. No, there’s a lot of hard work that goes into maintaining a collection, and these steps taken by your local library workers might inspire us to approach our websites with the same set of diligent hands. Get sorting, people!

Categories: Elsewhere

Wellnet Blog: Weekly Module Review - #7 Fast Permissions Administration, insert permissions without issues!

Planet Drupal - Wed, 15/04/2015 - 15:03

This week we’ll talk about FPA (Fast Permissions Administration), a very cute module I only discovered recently.

Categories: Elsewhere

Code Karate: Installing and configuring a Drupal 7 Sub-theme - 3 of 3

Planet Drupal - Wed, 15/04/2015 - 13:44
Episode Number: 202

In the final video of the 3 part series, we look at creating and configuring a Drupal sub-theme. Specifically, we will be created a sub-theme based off of the Zen theme. If you aren’t familiar with Zen, it is a very popular base theme used by thousands of designers as a starting point when building a custom website theme.

Tags: DrupalDrupal 7Theme DevelopmentDrupal Planet
Categories: Elsewhere

Rhonda D'Vine: HollySiz

Planet Debian - Wed, 15/04/2015 - 12:57

Sometimes one stumbles upon stuff that touches one deeply. Granted, the topic of the first video from the artist I want to present you now did touch me naturally. But it made me take a closer look. This is about HollySiz. Yes, yet another French singer, but fortunately (for me) she sings mostly in English. :)

So here are the songs:

  • The Light: At first I wasn't even aware it's a music video. And the story is strong. I'm uncertain on the story of Nils Pickert did inspire the video, but it's lovely to see people getting it right. The parents job is to support their kid in finding their own identity instead of defining it for them.
  • Better Than Yesterday: In the light of The Light everything else looks antique. So what's better as a video that actually does look antique. ;)
  • Tricky Game (feat. Sianna): I somehow like this version of the song better because it contains rap. But that might be just me. A catchy beat anyway.

Like always, enjoy! And take good care of your kids if you happen to have some.

/music | permanent link | Comments: 0 | Flattr this

Categories: Elsewhere

InternetDevels: Drupal for dummies: where and when is Drupal the Best Option?

Planet Drupal - Wed, 15/04/2015 - 12:21

Let us give the floor to Jack Dawson, founder of Big Drop Inc. He shared his thoughts and ideas about Drupal with the readers of our blog.

Drupal is an open source CMS (content management system), which means that its block of code is available for extension and modification by anyone with programming knowledge. This is as opposed to close source/proprietary software, whose creators retain its IP rights. Open source software does not come with any fees, and it is fully modifiable to fit any user requirements.

Read more
Categories: Elsewhere

Michal Čihař: Packaging python-gammu

Planet Debian - Wed, 15/04/2015 - 12:00

After Monday release of separate Gammu and python-gammu, the obvious task was to get the new package to distributions.

First I've started with Debian packages, what was quite easy as from quite complex CMake + Python package it is now purely CMake and it was mostly about removing stuff. Soon the updated Gammu package was uploaded to experimental. Once having that ready, I've also update the backports for Ubuntu and these are available in Gammu PPA. Creating new python-gammu package was a bit harder as this is the first Python 3 compatible package I've created, but it's now ready and sitting in the NEW queue.

While working on python-gammu package, I've realized that some of the data used in testsuite are missing in the tarball. While not being critical, this is definitely not nice, so I've decided to release python-gammu 2.1 today. It also includes fixes for some corner cases found by coverity.

For openSUSE the packaging was quite easy as well, stripping out unneeded parts of Gammu package went smoothly and it's now in hardware project, SR to Factory is pending. With python-gammu it turned out to be much harder as the testsuite had failed there with some strange error coming out of libdbi. After looking deeper into it, the problem is in new return type available in Git snapshot openSUSE is shipping. Fortunately producing fix was quite easy, so next Gammu upstream will handle that properly and package in hardware project is already patched. You can now use python-python-gammu from devel:languages:python and SR to Factory is pending as well.

Filed under: Debian English Gammu python-gammu SUSE Wammu | 0 comments

Categories: Elsewhere

Raphaël Hertzog: Looking back at the Debian Long Term Support project

Planet Debian - Wed, 15/04/2015 - 10:46

On Sunday I gave a talk about Debian LTS during the Mini-DebConf in Lyon. Obviously I presented the project and the way it’s organized, but I also took the opportunity to compute some statistics.

You can watch the presentation (thanks to the video team!) or have a look at the slides to learn more.

Here are some extracts of the statistics I collected:

The number of the uploads per “affiliation” (known affiliations are recorded in the LTS/Team wiki page) is displayed on the graph below. “None” corresponds to packages maintainers taking care of their own packages, “Debian Security” corresponds to members of the security team who also contributed to LTS, “Debian LTS” corresponds to individual members of the LTS team without any explicit affiliation. “Freexian” represents in fact 29 financial sponsors (see detail here).

Top 12 contributors (in number of uploads):

  • Thorsten Alteholz: 66
  • Holger Levsen: 27
  • Raphaël Hertzog: 14
  • Raphaël Geissert: 13
  • Thijs Kinkhorst: 8
  • Kurt Roeck: 7
  • Christoph Biedl: 7
  • Nguyen Cong: 6
  • Ben Hutchings: 6
  • Michael Vogt: 5
  • Moritz Mühlenhoff: 4
  • Matt Palmer: 4

The talk also contains explanations about the current funding setup. Hopefully this clears things up for people who were still wondering how the LTS project is working.

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

Categories: Elsewhere

Free Energy Media: Simple REST API SMS App Integration with Telecom Provider

Planet Drupal - Wed, 15/04/2015 - 10:34

I have been building apps recently that integrate a REST API which subscribes users to a Drupal web app via SMS, they are simultaneously subscribed in the telecom operators database. Conditions must be checked to keep the users status in sync with Drupal and the operator. Other conditions that I won’t cover here include recurring billing or the free trial period.

This is a practical example of how using the REST protocol allows technologies that are completely different to communicate with each other. The technologies in our stack include SMS, mobile billing and a Drupal web app.

First create the URL endpoint by using hook_menu

function my_module_menu() {
$items['my_url/send'] = array(
'title' => 'send',
'page callback' => 'my_module_send_page',
'access callback' => TRUE
return $items;

When a mobile originated text message “MO” is sent from the customer handset to the shortcode created for our app, a relay message is sent from the telecom integrator’s API and hits the endpoint created with hook_menu on our web app. We then use a GET request to get the values from the values posted to our endpoint url. Parameters include product identification information, partner ID, customer MSISDN and subscription method, as well as other info. We also run an additional API call to check if the MSISDN/phone number is valid and if there is enough money on the customer account.

Here we have the beginning of the callback function that runs when our endpoint is hit.

function my_module_send_page() {

if (isset($_GET['Origin'])) {
$mobile = $_GET['Origin'];
$PricePointId = $_GET['PricePointId'];
$prodId = $_GET['ProductId'];
$mtmo = time() . 'MO';

There are many conditions in the business requirements, which determine different messages in the $text variable to the customer. Success/failure, weekly/monthly, arabic/english, below is the case if success and weekly PricePointId is selected. There is also a check for what language is selected, here we use the language value in the user object, we get this from what language the user selects on the registration form. We then pass back the correct language in the $text variable in a post request using CURL with everything else. Here is some more of the callback function.

if ($PricePointId == XXXXXX) {
if($user->language == 'en') {
$text = 'You have successfully subscribed
else {
$text = 'تمّ إشتراكك بملهمتي بنجاح بسعر ‘

$data2 = array(
'Password' => 'test',
'ProductId' => $prodId,
'PricePointId' => $PricePointId,
'SenderId' => 92235,
'OpId' => XXX,
'Destination' => $mobile,
'Text' => $text,
'ExtTxId' => $mtmo,

$qry_str = drupal_http_build_query($data2);
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, 'http://integrator-api-endpoint/sendMT?' . (string) $qry_str);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);

Here we get the result from the CURL post to the telecom API.
If the result is greater than one that is success, so we create the user in Drupal and we send a custom email using drupal_mail().

if($result > 0) {
$obj->field_product = $prodId;
$obj->save(); */
$smart_db->changeUserRoles($user->uid , 'subscribe');
$smart_db->changeplan($user->uid, $prodId, $free = TRUE);
drupal_mail('user', 'register_no_approval_required', $to, user_preferred_language($user, $default = NULL), array('account' => $user), variable_get('site_mail', ''));

Categories: Elsewhere

Vardot: 8 Reasons to Get Excited About Drupal 8

Planet Drupal - Wed, 15/04/2015 - 09:25

As the last barriers to Drupal 8's launch dwindle, 2015 is shaping up to be a good year for the Drupal community. And though its release date isn't confirmed yet, let's take a look at 8 reasons why Drupal developers and anyone who is looking for an improved experience with their website should be excited for the impending arrival of Drupal 8:

1. Drupal 8 is Mobile First: Mobile websites and apps are the new reality, and so for the first time Drupal is addressing this comprehensively; all built-in themes in Drupal 8 are responsive, making it easier to administer on a mobile device. 

2. Drupal 8 Enhances Multilingual Support: Programming languages aren't constrained by geopolitical boundaries, but traditional "human" languages are, creating barriers between developers and users; with Drupal 8, an emphasis on improved multilingual and globalization support has been prioritized to deliver improved web experiences for both users and developers. There are improvements to language maintenance options, site translations and easier-to-customize settings. This bodes well for developers and site users everywhere.

3. Drupal 8 Utilizes the Symfony2 Framework: Drupal 8 has become more object-oriented by utilizing the Symfony2 framework, taking advantage of a stack of standard components used throughout a variety of frameworks; this makes it easier for new developers to learn Drupal and begin building powerful digital products in less time.

4. Drupal 8 Uses Twig: Drupal 8 is also making use of "Twig," an agile and secure template engine for PHP. Twig has been tailored to run smoothly together with Symfony's class-based approach to programming, and it provides a greater separation between logic and display. This also helps boost security, since PHP can no longer be embedded directly in templates. And just like Symfony2, Twig removes barriers to entry for front-end developers new to Drupal, adopting a syntax that should be familiar to developers with experience with Handlebars or other similar systems.

5. Drupal 8 Makes Content Creation Easy: Drupal 8 uses the common WYSIWYG editor (a.k.a What You See is What You Get). This means the process of content creation, from formatting to editing, has been designed to be more user-friendly. Personalization of content is improved by drag and drop buttons that include images with captions, and the editor toolbar is customizable, allowing content authors to add or remove editing buttons based on what they use most. HTML tags will automatically update as well.

6. Improved Configuration Management: Drupal 8 comes with a file system-based configuration management system, which makes it simple to transport configuration changes such as new content types, fields, or views from development to production. It also lets you use version control for your configuration, so you can keep your configured data in files, separate from production data in the database. 

7. Drupal 8 Won't be Wordpress: Despite being considered the most sophisticated CMS out of the 'Big Three' (the other two being Wordpress and Joomla), in recent years Drupal has failed to compete with Wordpress for overall market share. There's a variety of reasons for this, chiefly being Wordpress is less sophisticated and therefore easier to develop. Drupal 8 won't be a watered-down CMS attempting to pander to a wider audience of developers and clients. Drupal 8 will include features like Symfony2 and Twig that should lessen the learning-curve for developers—resulting in growth in the ranks of Drupal developers—but without sacrificing its core capabilities. 

8. Drupal 8 Will be Better for Clients: With Drupal 8, the combination of user-friendly content authoring, multilingual support, and smooth interface features will make using Drupal-built sites easier than ever before, and improved back-end features will mean Drupal will be far more attractive to novice developers. This means it will be cheaper to build website as the Drupal community grows, and that clients will be receiving far more dynamic web solutions than their budgets could've gotten them previously.

So who is going to benefit from Drupal 8? Well, in theory everyone. Without sacrificing the complex architecture that sets it apart from other open source platforms, Drupal 8 should improve both user and developer accessibility, and it does both without becoming more proprietary. And best of all, skilled Drupal development  teams like Vardot—who already build dynamic applications using Drupal 7—will have enhanced tools with which to continue creating beautiful web solutions; and that alone should give anyone who is looking for improved web and mobile experience a 9th reason to be excited for Drupal 8's impending release.

Tags:  Drupal 8 Drupal Development Drupal Planet Title:  8 Reasons to Get Excited About Drupal 8
Categories: Elsewhere

Petter Reinholdtsen: Debian Edu interview: Shirish Agarwal

Planet Debian - Wed, 15/04/2015 - 09:20

It was a surprise to me to learn that project to create a complete computer system for schools I've involved in, Debian Edu / Skolelinux, was being used in India. But apparently it is, and I managed to get an interview with one of the friends of the project there, Shirish Agarwal.

Who are you, and how do you spend your days?

My name is Shirish Agarwal. Based out of the educational and historical city of Pune, from the western state of Maharashtra, India. My bread comes from giving training, giving policy tips, installations on free software to mom and pop shops in different fields from Desktop publishing to retail shops as well as work with few software start-ups as well.

How did you get in contact with the Skolelinux / Debian Edu project?

It started innocently enough. I have been using Debian for a few years and in one local minidebconf / debutsav I was asked if there was anything for schools or education. I had worked / played with free educational softwares such as Gcompris and Stellarium for my many nieces and nephews so researched and found Debian Edu or Skolelinux as it was known then. Since then I have started using the various education meta-packages provided by the project.

What do you see as the advantages of Skolelinux / Debian Edu?

It's closest I have seen where a package full of educational software are packed, which are free and open (both literally and figuratively). Even if I take the simplest software which is gcompris, the number of activities therein are amazing. Another one of the softwares that I have liked for a long time is stellarium. Even pysycache is cool except for couple of issues I encountered #781841 and #781842.

I prefer software installed on the system over web based solutions, as a web site can disappear any time but the software on disk has the possibility of a larger life span. Of course with both it's more a question if it has enough users who make it fun or sustainable or both for the developer per-se.

What do you see as the disadvantages of Skolelinux / Debian Edu?

I do see that the Debian Edu team seems to be short-handed and I think more efforts should be made to make it popular and ask and take help from people and the larger community wherever possible.

I don't see any disadvantage to use Skolelinux apart from the fact that most apps. are generic which is good or bad how you see it. However, saying that I do acknowledge the fact that the canvas is pretty big and there are lot of interesting ideas that could be done but for reasons not known not done or if done I don't know about them. Let me share some of the ideas (these are more upstream based but still) I have had for a long time :

1. Classical maths question of two trains in opposing directions each running @x kmph/mph at y distance, when they will meet and how far would each travel and similar questions like these.

The computer is a fantastic system where questions like these can be drawn, animated and the methodology and answers teased out in interactive manner. While sites such as the Ask Dr. Math FAQ on The Two Trains problem (as an example or point of inspiration) can be used there is lot more that can be done. I dunno if there is a free software which does something like this. The idea being a blend of objects + animation + interaction which does this. The whole interaction could be gamified with points or sounds or colourful celebration whenever the user gets even part of the question or/and methodology right. That would help reinforce good behaviour. This understanding could be used to share/showcase everything from how the first wheel came to be, to evolution to how astronomy started, psychics and everything in-between.

One specific idea in the train part was having the Linux mascot on one train and the BSD or GNU mascot on the other train and they meeting somewhere in-between. Characters from blender movies could also be used.

2. Loads of crossword-puzzles with reference to subjects: We have enormous data sets in Wikipedia and Wikitionary. I don't think it should be a big job to design crossword puzzles. Using categories and sub-categories it should be doable to have Q&A single word answers from the existing data-sets. What would make it easy or hard could be the length of the word + existence of many or few vowels depending on the user's input.

3. Jigsaw puzzles - We already have a great software called palapeli with number of slicers making it pretty interesting. What needs to be done is to download large number of public domain and copyleft images, tease and use IPTC tags to categorise them into nature, history etc. and let it loose. This could turn to be really huge collection of images. One source could be taken from commons.wikimedia.org, others could be huge collection of royalty-free stock photos. Potential is immense.

Apart from this, free software suffers in two directions, we lag both in development (of using new features per-se) and maintenance a lot. This is more so in educational software as these applications need to be timely and the opportunity cost of missing deadlines is immense. If we are able to solve issues of funding for development and maintenance of such software I don't see any big difficulties. I know of few start-ups in and around India who would love to develop and maintain such software if funding issues could be solved.

Which free software do you use daily?

That would be huge list. Some of the softwares are obviously apt, aptitude, debdelta, leafpad, the shell of course (zsh nowadays), quassel for IRC. In games I use shisen-sho while card-games are evenly between kpat and Aiselriot. In desktops it's a tie between gnome-flashback and mate.

Which strategy do you believe is the right one to use to get schools to use free software?

I think it should first start with using specific FOSS apps. in whatever environment they are. If it's MS-Windows or Mac so be it. Once they are habitual with the apps. and there is buy-in from the school management then it could be installed anywhere. Most of the people now understand the concept of a repository because of the various online stores so it isn't hard to convince on that front.

What is harder is having enough people with technical skills and passion to service them. If you get buy-in from one or two teachers then ideas like above could also be asked to be done as a project as well.

I think where we fall short more than anything is in marketing. For instance, Debian has this whole range of fonts in its archive but there isn't even a page where all those different fonts in the La Ipsum format could be tried out for newcomers.

One of the issues faced constantly in installations is with updates and upgrades. People have this myth that each update and upgrade means the user interface will / has to change. I have seen this innumerable times. That perhaps is one of the reasons which browsers like Iceweasel / Firefox change user interfaces so much, not because it might be needed or be functional but because people believe that changed user interfaces are better. This, can easily be pointed with the user interfaces changed with almost every MS-Windows and Mac OS releases.

The problems with Debian Edu for deployment are many. The biggest is the huge gap between what is taught in schools and what Debian Edu is aimed at.

Me and my friends did teach on week-ends in a government school for around 2 years, and gathered some experience there. Some of the things we learnt/discovered there was :

  1. Most of the teachers are very territorial about their subjects and they do not want you to teach anything out of the portion/syllabus given.
  2. They want any activity on the system in accordance to whatever is in the syllabus.
  3. There are huge barriers both with the English language and at times with objects or whatever. An example, let's say in gcompris you have objects falling down and you have to name them and let's say the falling object is a hat or a fedora hat, this would not be as recognizable as say a Puneri Pagdi so there is need to inject local objects, words wherever possible. Especially for word-games there are so many hindi words which have become part of english vocabulary (for instance in parley), those could be made into a hinglish collection or something but that is something for upstream to do.
Categories: Elsewhere

Mike Hommey: Announcing git-cinnabar 0.2.1

Planet Debian - Wed, 15/04/2015 - 04:20

Git-cinnabar is a git remote helper to interact with mercurial repositories. It allows to clone, pull and push from/to mercurial remote repositories, using git.

Get it on github.

What’s new since 0.2.0?

Not much, but this felt important enough to warrant a release, even though the issue has been there since before 0.1.0:

Mercurial can be slower when cloning or pulling a list of “heads” that contain non-topological heads. On repositories like the mercurial repository, it’s not so much of a big deal, taking 7s instead of 4s. But on big repositories like mozilla-central, it’s taking 23 minutes instead of 2 minutes and 20s (on my machine). And that’s with 100% CPU use on the server side.

The problem is that mozilla-central recently merged some old closed heads, such that it now has branch heads that aren’t topological heads. Git-cinnabar, until this release, would request those branch heads, leading the server to use the slow path mentioned above. This release works around the issue.

It also fixes an issue pushing to a remote empty mercurial repository.

Categories: Elsewhere

Steindom LLC: Creating a LESS-based Bootstrap subtheme

Planet Drupal - Wed, 15/04/2015 - 04:10

I've been a long-time Omega themer (and I especially love Omega 4), but outside of Drupal I always use Bootstrap as a starting point for styling a site. The Bootstrap theme has come a long way since I last evaluated it, so I gave it another try recently. It was tricky to set up a subtheme, so I'm sharing my steps here.

I found some clues from this article, but refined the process a bit.

Download the Bootstrap base theme

There hasn't been a stable release of the Bootstrap theme recently (as of the time of this writing), so I grabbed the latest DEV which contains lots of bug fixes and extends Bootstrap theming support into more nooks and crannies of Drupal's interface. If you have drush:

drush dl bootstrap-7.x-3.x-dev Create your sub-theme

You could do this the hard way, by copying the "starterkits/less" folder out of the bootstrap theme folder into your own space (e.g., "sites/default/themes", renaming "less" to something like "bootstrap_subtheme"). Or, just use drush:

drush cc drush
drush dl bootstrap-wizard

(Choose to make it a sub-theme of Bootstrap, using the LESS starterkit.)

Install Bootstrap library source code

Since we're compiling the CSS from LESS, we won't need the Bootstrap distribution, but we will need the source code. Also, the Bootstrap JS files are included via our sub-theme's .info file. So grab the latest Bootstrap 3 release (3.3.4 at the time of this writing) and install it into your sub-theme (in our example above, "bootstrap_subtheme/bootstrap"). The only folders you need are "fonts", "js", and "less".

Tweak the sub-theme LESS

Inside the "less" folder of your sub-theme, there are several .less files. The main one is style.less, which is what you'll compile later. It brings in bootstrap.less (which is a copy of the same file in your bootstrap library folder), and then adds Drupal overrides, and then some blank header, content, and footer files.

You can keep your bootstrap.less file as-is, and comment out the components you don't want. Or you can scrap it all and use something like this:

@import "variables";
@import "../bootstrap/less/bootstrap.less";

This will import your local variables.less file, and then the rest of Bootstrap's source. Speaking of variables.less, the one that shipped with the starterkit at the time of writing had deprecated Bootstrap variables, so I rewrote mine to basically load in the variables from the Bootrap library and then override the ones I care about. That way I can easily upgrade the Bootstrap library at a later date with minimal need to update my sub-theme's LESS. My variables.less looks like this:

// Import Bootstrap's variables, then override them below.
@import "../bootstrap/less/variables.less";

// Update path to fonts.
@icon-font-path: "../bootstrap/fonts/";

Note that I changed the icon path. This fixed the references being broken when my LESS compiled to CSS.

Compile your LESS to CSS

Compiling your LESS is pretty easy. You need to install LESS first, but it should be as simple as:

npm install -g less

Then from your theme's folder, execute the following to compile your LESS into your sub-theme's style.css:

lessc less/style.less > css/style.css

That's it! You now have a LESS-powered sub-theme. Add your custom theming to the built-in header.less, content.less or footer.less files. I usually prefer to create a separate file for each type of thing—content type, navigation, homepage, etc). Just remember to remember to reference any additional files in style.less.

Last thoughts

Unless you already have it a newer version of jQuery on your site somehow, you'll probably want to install jQuery Update and configure it to use at least jQuery 1.9, the minimum requirement for Bootstrap.

Oh, and don't forget to enable your new sub-theme!

Submitted by Joel Stein on April 14, 2015.Tags: Drupal, Drupal 7, Drupal Planet
Categories: Elsewhere

DrupalCon News: Sessions and BoFs are live

Planet Drupal - Wed, 15/04/2015 - 01:28

DrupalCon Los Angeles is less than a month away, and we couldn't be more excited for the great lineup of sessions and training opportunities. We're thrilled to announce that the schedule is now live on the website, so you can begin building your own dream DrupalCon schedule and planning your day. BOFs are also open, so make sure you claim your space soon -- they go quickly!

Categories: Elsewhere


Subscribe to jfhovinne aggregator