Search Results: "ag"

4 July 2015

Guido G nther: Debian work in June 2015

June was the second month I contributed to Debian LTS under the Freexian umbrella. In total I spent ten hours working on: Besides that I did CVE triaging of 17 CVEs to check if and how they affect oldoldstable security. The information provided by the Security team on these issues in data/CVE/list is an awesome help here. So I tried to be as verbose when triaging CVEs that weren't looked at for Wheezy or Jessie yet. On non LTS time I patched our lts-cve-triage tool to allow to skip packages that are already in dla-needed.txt. This avoids wasting time on CVEs that were already triaged.

3 July 2015

Norbert Preining: Debian/TeX Live 2015.20150703-1

The first upload of new packages after TeX Live 2015 hit unstable. Against my expectations, the bugs didn t come in in the thousands, more or less there were only some fixes necessary in the binary package, which lead to a few updates over the last week. This upload fixes an RC bug (missing replaces), and also takes a step further in the Debianization of the packages: I finally removed texconfig and texlinks programs, as they are not useful on Debian, and should actually not be used. Debian - TeX Live 2015 Besides a few other fixes, of course there was the usual chore of package updates. Updated packages babel-french, biblatex-fiwi, biblatex-opcit-booktitle, c90, chemformula, chemgreek, cjkutils, ctex, curve2e, dozenal, eledmac, elements, enotez, garuda-c90, koma-script, l3build, latex, leadsheets, norasi-c90, pkuthss, poemscol, pstricks, pst-solides3d, siunitx, termmenu, texlive-scripts, tudscr, upmethodology, xindy. New packages arabi-add, br-lex. Enjoy.

2 July 2015

Enrico Zini: italian-fattura-elettronica

Billing an Italian public administration Here's a simple guide for how I managed to bill one of my customers as is now mandated by law in Italy. Create a new virtualbox machine I would never do any of this to any system I would ever want to use for anything else, so it's virtual machine time. Install smart card software into it Descent into darkness Set up things for fattura-pa Set up things for signing locally with dike Set up things for signing locally with ArubaSign Try fattura-pa again Maybe fattura-pa would work with Oracle's Java plugin? Aftermath I shut down that virtual machine and I'm making sure I never run anything important on it. Except, of course, generating legally binding signatures as required by the Italian government. What could possibly go wrong?

Antonio Terceiro: Upgrades to Jessie, Ruby 2.2 transition, and chef update

Last month I started to track all the small Debian-related things that I do. My initial motivation was to be concious about how often I spend short periods of time working on Debian. Sometimes it s during lunch breaks, weekends, first thing in the morning before regular work, after I am done for the day with regular work, or even during regular work, since I do have the chance of doing Debian work as part of my regular work occasionally. Now that I have this information, I need to do something with it. So this is probably the first of monthly updates I will post about my Debian work. Hopefully it won t be the last. Upgrades to Jessie I (finally) upgraded my two servers to Jessie. The first one, my home server, is a Utilite which is a quite nice ARM box. It is silent and consumes very little power. The only problem I had with it is that the vendor-provided kernel is too old, so I couldn t upgrade udev, and therefore couldn t switch to systemd. I had to force systemv for now, until I can manage to upgrade the kernel and configure uboot to properly boot the official Debian kernel. On my VPS things are way better. I was able to upgrade nicely, and it is now running a stock Jessie system. fixed https on ci.debian.net pabs had let me know on IRC of an issue with the TLS certificate for ci.debian.net, which took me a few iterations to get right. It was missing the intermediate certificates, and is now fixed. You can now enjoy Debian CI under https . Ruby 2.2 transition I was able to start the Ruby 2.2 transition, which has the goal of switch to Ruby 2.2 on unstable. The first step was updating ruby-defaults adding support to build Ruby packgaes for both Ruby 2.1 and Ruby 2.2. This was followed by updates to gem2deb (0.18, 0.18.1, 0.18.2, and 0.18.3) and rubygems-integration . At this point, after a few rebuild requests only 50 out of 137 packages need to be looked at; some of them just use the default Ruby, so a rebuild once we switch the default will be enough to make it use Ruby 2.2, while others, specially Ruby libraries, will still need porting work or other fixes. Updated the Chef stack Bringing chef to the very latest upstream release into unstable was quite some work. I had to update: In the middle I also had to package a new dependency, ruby-ffi-yajl, which was very quickly ACCEPTED thanks to the awesome work of the ftp-master team. Random bits

Christoph Berg: PostgreSQL 9.5 in Debian

Today saw the release of PostgreSQL 9.5 Alpha 1. Packages for all supported Debian and Ubuntu releases are available on apt.postgresql.org: deb http://apt.postgresql.org/pub/repos/apt/ YOUR_RELEASE_HERE-pgdg main 9.5 The package is also waiting in NEW to be accepted for Debian experimental. Being curious which PostgreSQL releases have been in use over time, I pulled some graphics from Debian's popularity contest data: Before we included the PostgreSQL major version in the package name, "postgresql" contained the server, so that line represents the installation count of the pre-7.4 releases at the left end of the graph. Interestingly, 7.4 reached its installation peak well past 8.1's. Does anyone have an idea why that happened?

Simon Kainz: DUCK challenge at DebConf15

New features in DUCK Carnivore-* data DUCK now uses carnivore- names,email tables from UDD, giving a nice list of packages grouped by Maintainer/Uploader names. Domain grouping A per-domain-listing is now also available here. DUCK challenge at DebConf15 After announcing DUCK in mid-june 2012, the number of source packages with issues is still somewhat stable around 1700. After a recent update of the curl libs, i also managed to get rid of 200 false positives, caused by SSL-verification issues, as can be seen here. To speed things up a bit and lower the number of broken links, i hereby propose the following challenge: The first 99 persons who fix at least 1 broken URL and upload the fixed package before end of DebConf15 will get an awesome "200 OK" DUCK-branded lighter at DebConf15! Lighter Army of Lighters The challenge starts right now! I will try hard to not forget anyone who fixes packages (note the s ;-), but if you feel missed out, please contact me at DC15. Also, please remember that this is not a valid excuse to NMU packages ;-). su

Ritesh Raj Sarraf: Laptop Mode Tools 1.67

I am pleased to announce the release of Laptop Mode Tools, version 1.67. This release has many important bug fixes, and everyone is recommended to upgrade. Of the many, one important fix is to, more reliably check for Device Mapper based devices, which is common these days with Crypt and LVM. For the summary of changes to quote from git log:
1.67 - Thu Jul  2 17:05:07 IST 2015
    * Relax minimum window size to accomodate low res screens
    * Fix variable name to comply with our "constants" assuptions
    * Get more aggressive in power saving for Intel HD Audio
    * Account Device Mapper devices
    * Add swsusp freeze support
    * Switch battery-level-polling default to True
    * Detect ethernet carrier, early and relibaly
    * changes the boolean setting *_ACTIVATE_SATA_POWER to a customizable
      *_SATA_POLICY, with backward-compatible defaults and documentation
      Thanks Yuir D'Elia
PS: On a side note, over the years, Linux's power savings functionality has improved a lot, all thanks to its use in the mobile worlds. At the same time, because of more companies shipping drivers depending on external firmware, stability has become less reliable. And to add to that, bare functionality of devices typically ask for disabling, you know what, LPM. So, at the end, the result is the same.

Categories:

Keywords:

Like:

Petter Reinholdtsen: MakerCon Nordic videos now available on Frikanalen

Last oktober I was involved on behalf of NUUG with recording the talks at MakerCon Nordic, a conference for the Maker movement. Since then it has been the plan to publish the recordings on Frikanalen, which finally happened the last few days. A few talks are missing because the speakers asked the organizers to not publish them, but most of the talks are available. The talks are being broadcasted on RiksTV channel 50 and using multicast on Uninett, as well as being available from the Frikanalen web site. The unedited recordings are available on Youtube too. This is the list of talks available at the moment. Visit the Frikanalen video pages to view them. Part of the reason this took so long was that the scripts NUUG had to prepare a recording for publication were five years old and no longer worked with the current video processing tools (command line argument changes). In addition, we needed better audio normalization, which sent me on a detour to package bs1770gain for Debian. Now this is in place and it became a lot easier to publish NUUG videos on Frikanalen.

Michael Prokop: HAProxy with Debian/squeeze clients causing random Hash Sum mismatch

Update on 2015-07-02 22:15 UTC: as Petter Reinholdtsen noted in the comments:
Try adding /etc/apt/apt.conf.d/90squid with content like this: Acquire::http::Pipeline-Depth 0; It turn off the feature in apt confusing proxies.
this indeed avoids those Hash Sum mismatch failures with HAProxy as well. Thanks, Petter! Many of you might know apt s Hash Sum mismatch issue and there are plenty of bug reports about it (like #517874, #624122, #743298 + #762079). Recently I saw the Hash Sum mismatch usually only when using random mirrors with e.g. httpredir.debian.org in apt s sources.list, but with a static mirror such issues usually don t exist anymore. A customer of mine has a Debian mirror and this issue wasn t a problem there neither, until recently: Since the mirror also includes packages provided to customers and the mirror needs to be available 24/7 we decided to provide another instance of the mirror and put those systems behind HAProxy (version 1.5.8-3 as present in Debian/jessie). The HAProxy setup worked fine and we didn t notice any issues in our tests, until the daily Q/A builds randomly started to report failures:
Failed to fetch http://example.org/foobar_amd64.deb Hash Sum mismatch
When repeating the download there was no problem though. This problem only appeared about once every 15-20 minutes with random package files and it affected only Debian/squeeze clients (wheezy and jessie aren t affected at all). The problem also didn t appear when directly accessing the mirrors behind HAproxy. We tried plenty of different options for apt (Acquire::http::No-Cache=true, Acquire::http::No-Partial=true, ) and also played with some HAProxy configurations, nothing really helped. With apt s Debug::Acquire::http=True we saw that there really was a checksum failure and HTTP status code 102 ( Processing , or in terms of apt: Waiting for headers ) seems to be involved. The actual problem between apt on Debian/squeeze and HAProxy is still unknown to us though. While digging deeper into this issue is on my todo list yet, I found a way to avoid those Hash Sum mismatch failures: switch from http to https in sources.list. As soon as https is used the problem doesn t appear anymore. I m documenting it here just in case anyone else should run into it.

Steve Kemp: My new fitness challenge

So recently I posted on twitter about a sudden gain in strength: To put that more into context I should give a few more details. In the past I've been using an assisted pull-up machine, which offers a counterweight to make such things easier. When I started the exercise I assumed I couldn't do it for real, so I used the machine and set it on 150lb. Over a few weeks I got as far as being able to use it with only 80lb. (Which means I was lifting my entire body-weight minus 80lb. With the assisted-pullup machine smaller numbers are best!) One evening I was walking to the cinema with my wife and told her I thought I'd be getting close to doing one real pull-up soon, which sounds a little silly, but I guess is pretty common for random men who are 40 as I almost am. As it happens there were some climbing equipment nearby so I said "Here see how close I am", and I proceeded to do 1.5 pullups. (The second one was bad, and didn't count, as I got 90% of the way "up".) Having had that success I knew I could do "almost two", and I set a goal for the next gym visit: 3 x 3-pullups. I did that. Then I did two more for fun on the way out (couldn't quite manage a complete set.) So that's the story of how I went from doing 1.5 pullus to doing 11 in less than a week. These days I can easily do 3x3, but struggle with more. It'll come, slowly.
So pull-up vs. chin-up? This just relates to which way you place your hands: palm facing you (chin-up) and palm way from you (pull-up). Some technical details here but chinups are easier, and more bicep-centric.
Anyway too much writing. My next challenge is the one-armed pushup. However long it takes, and I think it will take a while, that's what I'm working toward.

Norbert Preining: An amusing lintian error Lenna

Well, there we are, trying to build another round of TeX Live packages for Debian, just to realize that the lintian error that should have been downgraded to warning (or removed) is still around, due to doubts about the license. Ok. Well, anyway, but what I found is even more funny:
E: texlive-extra source: license-problem-non-free-img-lenna texmf-dist/doc/latex/reflectgraphics/lenna.jpg
which is about one of the most used images in images processing courses, Lenna: who-is-lenna
Without comments, I just quote the lintian error it is a whole lot of fun to read.
Ref: https://en.wikipedia.org/wiki/Lenna, https://www.debian.org/vote/2012/vote_002, #771191
Info: The given source file is cropped from playboy centerfold. This image is a picture of Lena S derberg, shot by photographer Dwight Hooker, cropped from the centerfold of the November 1972 issue of Playboy magazine. According to Hutchison, Jamie (May June 2001). Culture, Communication, and an Information Age Madonna (PDF). IEEE Professional Communication Society Newsletter 45 (3). (page 5 second column second paragraph), this image is distributable but not free. Moreover, Lenna photo has been pointed to as an example of sexism in the sciences, reinforcing gender stereotypes. Please use well known and free test image. Please also submit md5sum, sha1sum, and sha256 of this file as a bug report for lintian.
How fortunate our generation is that we don t have anything else to care about Anyway, back to rebuilding orig.tars, source packages, and binary packages!

Lars Wirzenius: Obnam 1.10 released (backup software)

I have just released version 1.10 of Obnam, my backup program. See the website at http://obnam.org for details on what it does. The new version is available from git (see http://git.liw.fi) and as Debian packages from http://code.liw.fi/debian, and uploaded to Debian, hopefully soon in unstable. The NEWS file extract below gives the highlights of what's new in this version. Version 1.10, released 2015-07-01 Major bug fixes: Minor new features: Minor fixes:

1 July 2015

Christian Perrier: [LIFE] Running activities

Hello dear readers, It has been quite some time since I blogged on Planet Debian,so today, I just want to give some news to fellow Debian pals. My involvment in Debian is still there. I'm probably less visible nowadays, but I'm still actively working on some packages, monotiring some i18n activities and doing work on D-I. But, as you know, running has taken precedence nowadays and is still becoming a growing part of my life (along with my family, of course). This year, I had a first "summit" running the "Vulcain" trail race in French "Massif Central" (mountains in Central France), which was 80km and 3000m positive climb race. It was run mostly in snow and with quite bad weather conditions, a good training for more difficult races. I completed it in about more than 12 hours, for a race that finally had less than 60% finishers. Later on, most races were preparation races for the summer moutain races : I mostly ran three 50km trail races in the Paris and neighbourhood area. All of them were very good results with a good feeling. Some were run along with friends from the Kikourou.net web community, where I am now very active. My training was also strongly increased wrt former years (yes that *is* possible), peaking at more than 500km during May, where I was mostly on holidays all month long (lucky man). And now, the first Great Great Thing of the year is coming : La Montagn'hard, 110 kilometers, about 9000 meters positive climb, around Les Contamines, close to Mont-Blanc in French Alps. That is a Big One, indeed. Technically more difficult than the TDS race I ran last August, during DebConf (120km, but "only" 7000 meters climb). Montagn'hard is indeed known as one of the most difficult moutain trail races in France. I plan to complete it in about 29 hours....but that can indeed be 30, 32 or even 35, who knows what can happen? Given the very high temperatures over Europe this week (they'll peak at about 38 C on Saturday in the Alps), that will be an incredibly difficult challenge and we expect about only 40% finishers. A live tracking will be available for thos who care at http://chrono.geofp.com/montagnhard2015/v3/. Wish me luck ! Next challenge will be end of August, with the "Echappee Belle" race : 144km and 10.000 meters positive climb, still in French Alps (Belledonne range, this time). About 48 hours, or even up to 55, two nights out.....harder and hopefully better, faster, stronger...:-)

Steve McIntyre: Quick trip to Sweden

Jo and I spent a few days in Sweden and had an awesome time! The main reason for being there was Leif and Maria's wedding way up north in Skellefte . They cunningly organised their ceremony for the Midsummer weekend, which was an excellent plan - we had a full weekend of partying while we were there. :-) the happy couple We had some time to ourselves while we were there, so we wandered about a little and got to see some of the beautiful coastal countryside. Trund n Then on the way home we stopped off in Ume to visit Mattias Wadenstein (maswan) and his wife Melanie, and he showed me around some of the machines that he's been admining on behalf of Debian. Maybe I'm a sad geek, but I feel quite a bond with one of the machines there, pettersson.debian.org. It's the official CD build machine for Debian, and I've been responsible for thrashing it really hard for the last 5 years or so... :-) Pettersson and friends Massive thanks to the University of Ume and their Academic Computer Club for hosting Debian machines and serving all the CD images for us! maswan and a lot of disks The only downsides from the trip were the massive tiredness (midnight sun is pretty, but notconducive to sleep!) the mosquito bites and the nasty plague^Wcold that we picked up while we were there... Ah well. :-)

29 June 2015

Jonathan McDowell: What Jonathan Did Next

While I mentioned last September that I had failed to be selected for an H-1B and had been having discussions at DebConf about alternative employment, I never got around to elaborating on what I d ended up doing. Short answer: I ended up becoming a law student, studying for a Masters in Legal Science at Queen s University Belfast. I ve just completed my first year of the 2 year course and have managed to do well enough in the 6 modules so far to convince myself it wasn t a crazy choice. Longer answer: After Vello went under in June I decided to take a couple of months before fully investigating what to do next, largely because I figured I d either find something that wanted me to start ASAP or fail to find anything and stress about it. During this period a friend happened to mention to me that the applications for the Queen s law course were still open. He happened to know that it was something I d considered before a few times. Various discussions (some of them over gin, I ll admit) ensued and I eventually decided to submit an application. This was towards the end of August, and I figured I d also talk to people at DebConf to see if there was anything out there tech-wise that I could get excited about. It turned out that I was feeling a bit jaded about the whole tech scene. Another friend is of the strong opinion that you should take a break at least every 10 years. Heeding her advice I decided to go ahead with the law course. I haven t regretted it at all. My initial interest was largely driven by a belief that there are too few people who understand both tech and law. I started with interests around intellectual property and contract law as well as issues that arise from trying to legislate for the global nature of most tech these days. However the course is a complete UK qualifying degree (I can go on to do the professional qualification in NI or England & Wales) and the first year has been about public law. Which has been much more interesting than I was expecting (even, would you believe it, EU law). Especially given the potential changing constitutional landscape of the UK after the recent general election, with regard to talk of repeal of the Human Rights Act and a referendum on exit from the EU. Next year will concentrate more on private law, and I m hoping to be able to tie that in better to what initially drove me to pursue this path. I m still not exactly sure which direction I ll go once I complete the course, but whatever happens I want to keep a linkage between my skill sets. That could be either leaning towards the legal side but with the appreciation of tech, returning to tech but with the appreciation of the legal side of things or perhaps specialising further down an academic path that links both. I guess I ll see what the next year brings. :)

Lunar: Reproducible builds: week 9 in Stretch cycle

What happened about the reproducible builds effort this week: Toolchain fixes Norbert Preining uploaded texinfo/6.0.0.dfsg.1-2 which makes texinfo indices reproducible. Original patch by Chris Lamb. Lunar submitted recently rebased patches to make the file order of files inside .deb stable. akira filled #789843 to make tex4ht stop printing timestamps in its HTML output by default. Dhole wrote a patch for xutils-dev to prevent timestamps when creating gzip compresed files. Reiner Herrmann sent a follow-up patch for wheel to use UTC as timezone when outputing timestamps. Mattia Rizzolo started a discussion regarding the failure to build from source of subversion when -Wdate-time is added to CPPFLAGS which happens when asking dpkg-buildflags to use the reproducible profile. SWIG errors out because it doesn't recognize the aforementioned flag. Trying to get the .buildinfo specification to more definitive state, Lunar started a discussion on storing the checksums of the binary package used in dpkg status database. akira discovered while proposing a fix for simgrid that CMake internal command to create tarballs would record a timestamp in the gzip header. A way to prevent it is to use the GZIP environment variable to ask gzip not to store timestamps, but this will soon become unsupported. It's up for discussion if the best place to fix the problem would be to fix it for all CMake users at once. Infrastructure-related work Andreas Henriksson did a delayed NMU upload of pbuilder which adds minimal support for build profiles and includes several fixes from Mattia Rizzolo affecting reproducibility tests. Neils Thykier uploaded lintian which both raises the severity of package-contains-timestamped-gzip and avoids false positives for this tag (thanks to Tomasz Buchert). Petter Reinholdtsen filled #789761 suggesting that how-can-i-help should prompt its users about fixing reproducibility issues. Packages fixed The following packages became reproducible due to changes in their build dependencies: autorun4linuxcd, libwildmagic, lifelines, plexus-i18n, texlive-base, texlive-extra, texlive-lang. The following packages became reproducible after getting fixed: Some uploads fixed some reproducibility issues but not all of them: Untested uploaded as they are not in main: Patches submitted which have not made their way to the archive yet: debbindiff development debbindiff/23 includes a few bugfixes by Helmut Grohne that result in a significant speedup (especially on larger files). It used to exhibit the quadratic time string concatenation antipattern. Version 24 was released on June 23rd in a hurry to fix an undefined variable introduced in the previous version. (Reiner Herrmann) debbindiff now has a test suite! It is written using the PyTest framework (thanks Isis Lovecruft for the suggestion). The current focus has been on the comparators, and we are now at 93% of code coverage for these modules. Several problems were identified and fixed in the process: paths appearing in output of javap, readelf, objdump, zipinfo, unsqusahfs; useless MD5 checksum and last modified date in javap output; bad handling of charsets in PO files; the destination path for gzip compressed files not ending in .gz; only metadata of cpio archives were actually compared. stat output was further trimmed to make directory comparison more useful. Having the test suite enabled a refactoring of how comparators were written, switching from a forest of differences to a single tree. This helped removing dust from the oldest parts of the code. Together with some other small changes, version 25 was released on June 27th. A follow up release was made the next day to fix a hole in the test suite and the resulting unidentified leftover from the comparator refactoring. (Lunar) Documentation update Ximin Luo improved code examples for some proposed environment variables for reference timestamps. Dhole added an example on how to fix timestamps C pre-processor macros by adding a way to set the build date externally. akira documented her fix for tex4ht timestamps. Package reviews 94 obsolete reviews have been removed, 330 added and 153 updated this week. Hats off for Chris West (Faux) who investigated many fail to build from source issues and reported the relevant bugs. Slight improvements were made to the scripts for editing the review database, edit-notes and clean-notes. (Mattia Rizzolo) Meetings A meeting was held on June 23rd. Minutes are available. The next meeting will happen on Tuesday 2015-07-07 at 17:00 UTC. Misc. The Linux Foundation announced that it was funding the work of Lunar and h01ger on reproducible builds in Debian and other distributions. This was further relayed in a Bits from Debian blog post.

Paul Wise: The aliens are amongst us!

Don't worry, they can't cope with our atmosphere. Alien on the ground Perhaps they are just playing dead. Don't turn your back if you see one. Folks may want to use this alien in free software. The original photo is available on request. To the extent possible under law, I have waived all copyright and related or neighboring rights to this work. The alien has signed a model release. An email or a link to this page would be appreciated though.

Norbert Preining: The Talos Principle Solving puzzles using SAT solvers

After my last post on Portal, there was a sale of The Talos Principle, so I got it and started playing. And soon I got stuck at these kind of puzzles where one has to fit in pieces into a frame. As a logician I hate to solve something by trial and error, so I decided I write a solver for these kind of puzzles, based on a propositional logic encoding and satisfiability solver. Sometimes it is good to be logician! Talos-Puzzles In the Talos Principle, access to new worlds and specific items is often blocked by gates that open by putting Sigils into the frame. Of course, collecting the sigils is the most challenging part, but that is often solvable by logical thinking. On the other hand, solving these fitting puzzles drove me crazy, so let us solve them with a SAT solver. Encoding I used a propositional encoding that for each combination of cells and sigils assigns a propositional variable, which is true if the specific sigil rests in on that cell in the final solution. That is, we have variable (encoded as x_i_j_n) where runs over the cells of the frame, and over the (numbered) sigils. Setup I have written a perl program that for a definition of a puzzle (see later), outputs SMT2 code, which then is checked for satisfiability and generation of model with the z3 solver (which is available in Debian). Necessary assertions We have to state relations between these propositional variables to obtain a proper solution, in particular we have added the following statements: Let us go through them one by one: Every field has at least on sigil on it That is an easy part by asserting

In the SMT2 code it would look like
(assert (or x_i_j_1 x_i_j_2 ... x_i_j_n))
Every field has at most one sigil on it This can be achieved by asserting for each tile and each pair of different sigil (numbers), that not both of the two hold:

and in SMT2 code:
(assert (and
  (not (and x_1_1_1 x_1_1_2))
  (not (and x_1_1_1 x_1_1_3))
...
(assert (and
  (not (and x_1_2_1 x_1_2_2))
  (not (and x_1_2_1 x_1_2_3))
...
Every sigil is used at least once This was a bit a tricky one. First I thought I want to express that every sigil is used exactly once by excluding that for one sigil there are more fields assigned to it then the sigil contains parts. So if a sigil occupies 4 tiles, then every combination of 5 tiles needs to evaluate to false. But with 8 8 or so frames, the number of combinations simply explodes to above several million, which brings my harddrive size and z3 to an end. The better idea was to say that every sigil was used at least once. Since all sigils together exactly fill the frame, this is enough. This can be done easily by assuming that for each sigil, at least one of the tiles is assigned to it:

or in SMT code for a 6 6 frame and the first sigil:
(assert (or x_1_1_n x_1_2_n ...  x_6_6_1))
Defining equations for the sigil s form Of course the most important part are the defining equations for the various sigils. Here I choose the following path: So for example for the top-most sigil in the above photo, I choose the anchor point to be the center, and if that was in , I need to assume that for the upright position

holds. In the same way, when rotated right, we need

All these options have to be disjunctively connected, in SMT code for the case where the anchor lies at (4,2).
(assert (or
  ...
  (and x_3_2_n x_4_2_n x_5_2_n x_4_3_n)
  (and x_3_3_n x_3_2_n x_3_1_n x_4_2_n)
  (and x_3_2_n x_4_2_n x_5_2_n x_4_1_n)
...
When generating these equations one has to be careful not to include rotated sigils that stick out of the frame, though. Although the above might not be the optimal encoding, the given assertions suffice to check for SAT and produce a model, which allows me to solve the riddles. Implementation in Perl To generate the SMT2 code, I used a Perl script, which is very quickly hacked together. The principle function is (already coded for the above riddle):
create_smt2_def(8,6,'a','a','b','cl','cl','cr','cr','cr','q','q','sl','sl');
where the first two arguments define the size of the frame, and the rest are codes for sigil types: This function first sets up the header of the smt2 file, followed by shipping out all the necessary variable definitions, in SMT these are defined as Boolean functions, and the other assertions (please see the Perl code linked below for details). The most interesting part are the definitions of the sigils:
  # for each piece, call the defining assertions
  for my $n (1..$nn)  
    my $p = $pieces[$n-1];
    print "(assert (or\n";
    for my $i (1..$xx)  
      for my $j (1..$yy)  
        if ($p eq 'q')   
          type_square($xx,$yy,$i,$j,$n); 
          elsif ($p eq 'a')  
          type_potest($xx,$yy,$i,$j,$n);
    ....
Every sigil type has its own definiton, in case of the a podest, the type_podest function:
sub type_potest  
  my ($xx,$yy,$i,$j,$n) = @_;
  my ($il, $jl, $ir, $jr, $iu, $ju);
  $il = $i - 1; $ir = $i + 1; $iu = $i;
  $jl = $jr = $j; $ju = $j + 1;
  do_rotate_shipout($xx,$yy, $i, $j, $n, $il, $jl, $ir, $jr, $iu, $ju);
 
This function is prototypical, one defines the tiles a sigil occupies if the anchor is placed on (i,j) for an arbitrary orientation of the sigil, and then calls do_rotate_shipout on the list of occupied tiles. This function in turn is very simple:
sub do_rotate_shipout  
  my ($xx,$yy, $i, $j, $n, @pairs) = @_ ;
  for my $g (0..3)  
    @pairs = rotate90($i, $j, @pairs);
    check_and_shipout($xx,$yy, $n, $i, $j, @pairs);
   
 
as it only rotates four times by 90 degrees, and then checks whether the rotated sigil is completely within the frame, and if yes ships out the assertion code. The rotation is done by multiplying the vector from (i,j) to the tile position with the (0 -1 1 0) matrix and adding it again to (i,j):
sub rotate90  
  my ($i, $j, @pairs) = @_ ;
  my @ret;
  while (@pairs)  
    my $ii = shift @pairs;
    my $jj = shift @pairs;
    my $ni = $i - ($jj - $j);
    my $nj = $j + ($ii - $i);
    push @ret, $ni, $nj;
   
  return @ret;
 
There are a few more functions, for those interested, the full Perl code is here: tangram.pl. There is no user interface or any config file reading done, I just edit the source code if I need to solve a riddle. Massaging the output Last but not least, the output of the z3 solver is a bit noisy, so I run the output through a few Unix commands to get only the true assignments, which gives me the location of the tiles. That is, I run the following pipeline:
perl tangram.pl   z3 -in   egrep 'define-fun true false'    sed -e 'h;s/.*//;G;N;s/\n//g'   grep true   sort
which produces a list like the following as output:
  (define-fun x_1_1_10 () Bool    true)
  (define-fun x_1_2_10 () Bool    true)
  (define-fun x_1_3_5 () Bool    true)
  (define-fun x_1_4_6 () Bool    true)
  (define-fun x_1_5_6 () Bool    true)
  (define-fun x_1_6_6 () Bool    true)
  (define-fun x_2_1_10 () Bool    true)
  (define-fun x_2_2_10 () Bool    true)
  (define-fun x_2_3_5 () Bool    true)
  ...
from which I can read up the solution that puts the tenth sigil (a square) in the lower left corner:
Talos-Puzzle-solved

28 June 2015

Ben Armstrong: Bluff Trail Early Summer 2015

Here s a photo journal of a walk I just completed around the Pot Lake loop of the Bluff Wilderness Hiking Trail. Hope you enjoy it! I was dissatisfied with my initial post, so have reduced the size to improve load time, changed the gallery software and have rewritten many of the captions. [slb_group]
My favourite stunted tamarack, clinging to the rocks.Click this photo to start the slideshow.
The Bluff Wilderness Hiking Trail is a series of four loops. Today I ll tackle only the first in order to get as many pictures as possible, and because when hiking solo, I prefer to stay on the more heavily traveled part. In late summer, I ll probably do all four loops with my friend Ryan again. Meanwhile, I ll stay in shape coming out here when I can for shorter walks. The trail starts here. Right away, even before heading between the marker stones, there s a pretty view of Cranberry Lake off to the right. Pink lady slippers have been plentiful this year! All along the trail, you can find hundreds, if not thousands of these. Boardwalks provide dry passage across the boggy bits. The pitcher plants are thriving, too. The vines with tiny, round leaves are wintergreen. Tasty! I ve not seen anything larger than a deer out here. Roots and rocks are a recurring theme. Many feet beating down on the first loop have packed the earth hard and have exposed more roots than you ll see deeper into the trail system where fewer hikers travel. Step carefully. Sheep laurel is an eye-catcher. To me, they look like little, pink jewels. Yellow markers clearly mark the Pot Lake loop. At crucial junctures there are some signs to point you the right way. If you re looking only at your feet, you may see black circles marked with arrows on some of the rocks, also pointing the way. The vegetation varies from scraggly and clinging to the rocks, to lush and green. The path is wet in parts. Nothing impassible, though. On the first loop in particular, and even within only the first kilometre, there are some pretty stunning views of the lake. Very quickly, you ll find yourself perched up top on the rocks. On this stretch, you need to hop a bit from one rock to the next. Just as quickly as you ascended, you descend back down to the lake again. A good place to stop and have a snack. The start of the first loop, itself. I chide myself for not having discovered this trail until about 2007, even though we moved out here in 2005. It s a treasure we re indebted to the WRWEO for preserving. Leave some comments in the box, if you like. You ll find these maps along the way to track your progress. Remember to follow proper trail etiquette. A particularly steep climb! Despite the best trail maintenance efforts, water still goes where it wants! Good to have boots. Another steep climb. This tree is chattering at me. Raising quite a racket. What s in the hole? I patiently wait with my camera to get a good shot of the tree s occupants. Mother woodpecker, feeding her babies! As the feeding continues, the chirping intensifies! Up on top of a big rock with a view over the lake is another favourite stopping place for a snack. The view at my snack break rock. I never get tired of it. There are some pretty big boulders. Next time I ll bring a friend to stand under it for scale. Another terrific view. A stream just before the first portage. This portage connects Cranberry Lake with Pot Lake. The portage is clearly marked. The Pot Lake end of the portage. One of several upturned trees, with the roots now forming a wall along one side of the trail. The spiral of the roots mimics the spiral split in this boulder which you can walk all of the way into until you reach the centre. Rocks and trees and trees and rocks White pine catkins. Suddenly the close forest opens up into a wide view all around. My favourite stunted tamarack, clinging to the rocks. Last year s cones. This year s aren t out yet on this tree. I love the tamarack s delicate new needles. These blueberries have a head start. Can t wait until it s time to harvest them. Nearly at the top of the Pot Lake loop. This is Pot Lake, itself. I was struck by this one little blighted berry, showing a blush of distress-induced colour amongst the green ones. Another view, nearly at the top. A sign beneath the map: Rare Plant Species: Mountain Sandwort Arenaria groenlandica. Use caution and stay on designated trails. Avoid disturbing habitat. Finally, the top. A map to mark your progress. Apparently the Mountain Sandwort, right at the base of the sign. The mountain sandwort is a pretty, delicate little thing. After passing the sign, the view from the top over Cranberry Lake, indeed both lakes, is a reward worth climbing all of the way up to see. Some other hiker has left a cairn. The descent is not too steep at first. The approach down to the back side of Pot Lake from the top is marked by exposed bedrock and scrubby plants. Finally back to some cover, which is welcome on hotter days. A ferny fairyland. It s not all abrupt ups and downs. Here s an easy, winding stretch of trail. Cinnamon ferns. Ambling along. Rounding the end of Pot Lake. Not very long after reaching the lake, the path climbs several metres up above it. There are some nice, rootless bits on this side of the loop, giving your ankles and knees a break. This guy seemed extremely agitated to see me. A new tamarack cone! Did I mention I like tamaracks? The steep descent back to Cranberry Lake again. Finally back where the loop starts.
[/slb_group]

Sven Hoexter: moto g GPS reset when it is not working with CM 12.1

There seems to be an issue with the moto g, CM 12.1 (nightlies) and the GPS. My GPS receiver stopped to work as well and I could recover it with the following steps in fastboot mode as described on xda-developers.
fastboot erase modemst1
fastboot erase modemst2
fastboot reboot
That even works with the 4.2.2 fastboot packaged in anroid-tools-fastboot.

Next.

Previous.