Or: Finding out what crud you installed that's eating all of your space in Arch Linux
I started running out of space on one of my Arch boxes and wondered (beyond what was in my home directory) what I'd installed that was eating up all the space.
A little bit of bash-fu does the job:
for pkg in $(pacman -Qq); do size=$(pacman -Qi $pkg | grep "Installed Size" | cut -d ":" -f 2) echo "$size | $pkg" done | sed -e 's/ //g' | sort -h
This outputs a list of packages with those using the most disk space at the bottom:
25.99MiB|llvm-libs 31.68MiB|raspberrypi-firmware-examples 32.69MiB|systemd 32.86MiB|glibc 41.88MiB|perl 54.31MiB|gtk2 62.13MiB|python2 73.27MiB|gcc 77.93MiB|python 84.21MiB|linux-firmware
The above is from my pi; not much I can uninstall there ;)
With all the tech world moving towards the idea that you have a single device that does everything, I've found myself suckered in to the convergence ideal in recent months. I was even genuinely excited by the recent video about Unity 8.
I have an Android phone that I use for a lot of purposes (nothing unusual: music, podcasts, messaging, web, phone calls) and a tablet that I use for more or less the same set of things with a bigger screen.
-----BEGIN GEEK CODE BLOCK----- Version: 3.1 GCS/IT/M/MU/P/O d- s>+:+> a C++(+)$ UL+++$>++++ P+(--) L+++$>+++++ !E---(-) !W++(+++)$ N+>++ o? K--? !w--(---) !O- !M(-) !V PS+(++) PE-(--) Y+ PGP++(+++) t+(++) 5+>++ X R>+ tv->-- b+>++ DI D+(++) G+ e++>+++++ h---- r+++ y++++>+++
I've been playing around with Docker a fair bit and recently hit upon a configuration that works nicely for me when testing code at work.
The basic premise is that I run a docker container that pretty well emulates the exact environment that the code will run in down to the OS so I don't need to care that I'm not running the same distribution as the servers we deploy to and that I can test my code at any time without having to rebuild the docker image.
The last few weeks have seen several bits of technology fail that affect my everyday life.
It started with the locks on my car beginning to seize up. To begin with, they were just a bit stiff, then one of them stopped working altogether. Then they all stopped working with any regularity. I took the car to a garage who told me it's a common problem with this exact model and charged me £100 to replace the driver's side lock. Apparently, a full set would cost around £600.
OggCamp was fantastic. If I can remember all the talks I went to I'll do a brief write up. The event certainly left me with a few little ideas for things to write and do.
Owing to various factors, I'm finding it difficult to recall the things that have happened and in what order over the last few days so, for my own purposes, I'm going to note them down here.</pointless-intro>
Edit: Those were not notes. I'm a waffler.
After putting it off for various reasons for at least a couple of years, I've finally switched back from Chromium to Firefox and I'm very glad I did so.
The recent UI change seems to have upset a lot of Firefox users but it was instrumental in prompting my return and I'm sure others will have felt the same; Firefox once again looks and feels like a modern browser.
tl;dr I like the MIT license, mutt, tagging things, and synchronising my data between my devices.
Today has been a fairly mixed bag. I booked today off as holiday some weeks back as work has been consistently stressful and I felt I needed a day to spend by myself with nothing in particular to do. I could probably have predicted it, but that's not quite how it turned out.
The morning started pleasantly: my wife is on a late shift today so she didn't need to leave until 11 so we had a leisurely breakfast together. Then we got to talking about what I'd do today; "Not much", said I. Naturally, the conversation went down the route of talking about things I might do. "Perhaps I'll wander into the city". "Oh, while you're there could you just..."
All week so far, I've gone to bed before 10pm every night and have woken up feeling tired, been tired all day, had difficulty focussing during the day, and have still been tired when home from work. I went to bed at 8pm on Wednesday night. Also, my stomach has seemed unsettled. My wife appears to have some of the same symptoms so I don't think I'm about to encounter renal failure or some such mechanical failure of my parts. A very odd illness though. Also, we're both feeling fairly down.
I blame the management.
Over the last couple of days I've been setting up a few things that I've been meaning to figure out for ages. I'm going to note down here what I did so when it all goes wrong, I can find out what I did ;)
I had occasion recently to need an entry in my ssh config such that connections to a certain host would be proxied through another connection. Several sources suggested the following snippet:
tl;dr: broke my collar bone, ouch.
Since my last post, I've had a second Judo session which was just as enjoyable as the first except for one thing. Towards the end of the session we went into randori (free practice) - basically one-on-one sparring. I'm pleased to say that I won my first bout but in the second I went up against a guy who'd been learning for only 6 months or so. After some grappling, he threw me quite hard and with little control and I landed similarly badly - owch.
I've been meaning to write something for weeks but somehow I never quite seem to get around to it.
Never say never. That old chestnut. Two in the bush gathers no broth.
One of my new year's resolutions is to lose a stone. After some consideration of how I might do that, I decided some sort of diet would be in order. Fairly obvious, I suppose, but I did toy with the idea of seeing if I could do it just by exercising more; I don't think it would even be possible to practically exercise enough to burn off half of what I like to eat.
Before Christmas, I had been thinking about reducing my carbohydrate intake as it seemed that every meal I was eating centred around bread or potatoes. Curry, for example, was all about mopping up the sauce with the naan bread :)
New year this year passed basically the same as last year, though even more enjoyably.
I decided I'd better review my TODO list from last year so here's a diff :)
Herein an brief account of our holiday at my wife's parent's house in Adapazarı, Turkey.
vimrc comments start with
howdoi would be useful if it worked
Markpoint is a script for converting markdown documents into HTML presentations
I went for a walk in the park with my family a couple of weeks ago; my beloved mp3 player was in my coat pocket. The next day, I put my coat on and noticed that the mp3 player was gone! (Tiredness is making me forgetful and not notice things very quickly). Now, after a couple more days, I'd accepted that I'd very likely dropped it while walking and would never see it again and went back to using my old mp3 player.
When I got home today, while opening the door to the back passage [not a euphemism], I happened to glance at the ground near my front door and there, just under the gas meter box right by the front door, was my mp3 player!
Wife and baby in bed, listening to the Beatles on vinyl, idling in IRC waiting for sleepiness. I very much doubt it'll be long.
Turns out that being a parent is quite hard work. Well, not hard exactly - just tiring. It also comes with a pretty total rearrangement of priorities, intended or otherwise. During the later stages of pregnancy (and even some of the first week or two afterwards) while there was quite a bit of waiting around, I had loads of ideas for things I want to write - some I even started writing. I'm talking code and music here. Now, I can only remember one of them and I doubt I'm going to have time to work on it any time soon :S
Tomorrow I'll be celebrating a nice round-numbered birthday. I'll be 25 :) I grew up at just the right time that powers of two have been important my whole life.
My first new year as a dad was a pleasant one. The Mrs and I polished off a bottle of champage (I never used to like the stuff - can't get enough of it now) and put our favourite tunes on all night. Dylan woke up at precisely two minutes to midnight :)
I don't really mean homophones and I should find a word for the things I mean.
I particularly like sentences that, when read aloud, could have an entirely different meaning to the one written.
Next month, on the 18th of September, the first Norwich maths jam will be held at a venue yet to be decided.
For those not in the know, a maths jam involves a group of people who are interested in maths getting together in a pub, discussing, solving, and playing mathematical puzzles and games while enjoying a few tasty beverages.
You paste in some hex, JSTLV displays that hex broken down into a hierarchy of types and values.
Call me crazy (thanks) but I like regular expressions.
I like them enough to have decided that what I really needed was a tool that let me put regular expressions in my regular expressions (yo dawg). I had the idea for this a while ago but only got around to realising it a few days ago.
Irregular Regular Expressions
After some fun times writing an application at Proxama, I ended up open-sourcing a new web framework for Node called Nosef. I've just finished porting this site over to it and I'm pleased to say everything went very smoothly and the code that runs this site is now /much/ smaller :)
A worm game where you slither around eating balls of food and getting bigger. If you crash into yourself, you lose.
This didn't end up how I'd envisaged it. It's a programming exercise, move along ;)
This has certainly been done before but for some reason, I wanted to make it again :)
Click the image segments to swap them around and reform the original picture!
I made a zooming version of this site.
I might revisit this at some point later.
I'm sure there have been plenty of implementations of this already but I wanted an exercise for myself while my brain recovers from the vile cold that descended on me last week.
A recent pub conversation about scary things that people had had happen to them reminded of my own spookiest moment and I thought I'd better note it down before I start getting old and forgetting such things.
(I'm afraid it's not particularly scary though)
And I'm not talking numbers.
The last couple of weeks have seen a fairly insane number of hours of work out of me due to a combination of a project with tight deadlines (aren't they all?) and the advent of me driving my wife to work in the mornings. She's at the point now of not being particularly mobile (oh, by the way, we're spawning) so I'm getting up at 6:30 daily to get her to work for 7. This means that I'm generally either working from home by 7:15 or in the office just before 8. That should mean that I'm done before 5 but it doesn't quite seem to work that way when other people are involved ;)
After uploading a large file to the gallery application I'd [mentioned in a previous post][blog], I discovered that there's a [bug][bug] in [lighttpd][lighttpd] that eats up all the memory when shoving a large file through the proxy module.
With a burning need to fill our fridge, I set out for the land of Sainsbury's during my lunch break today. On the way, a number of strange things happened - or rather, a number of strange things seemed to happen. I suspect they're more a reflection of my state of mind today. I've probably been watching too much [Dexter].
I've just finished converting this site and blog over to using markdown for its content. I'd been using ReST for work and nearly went with that but decided I slightly prefer the syntax used by markdown.
I really hope this kind of thing catches on; HTML is so ugly and not particularly suitable for writing content. Writing a blog in markdown just feels a lot more natural - like I can just get on with the writing and not have to think about how it will look on a web page.
For some reasons that I can't quite put my finger on, I've been thinking about starting a blog recently. I think I just want to have somewhere to dump various things as and when they pop into my head. I expect there'll be a mix of things I've come across that made me go "ooh" and things that make me go "grr".
That would've been a far better pop song.
I refined the site engine a bit and slightly reshuffled things. I like the menu system a lot more now and everything's a lot more consistent which makes my life a lot easier :)
Basically, the engine scans through the content folder and works out a heirarchy and generates menus and suchlike from that so I just need to drop new files in place and everything works out.
I got home this evening to a letter which really pissed me off.
First a little bit of back story: Shortly after we moved into this house (in December last year), we discovered that the bathroom suffered badly from condensation so, having had a similar problem in our last flat, we made sure the extractor fan was on whenever we took a shower and for a while after and also that we left the window open for at least an hour or two after every shower. This was not much fun during the winter.
I suppose I've been lucky not to have caught a cold until this late in the year. When I was younger, I used to catch a cold nearly every month of the year. This will not help with the workload!
Today I found myself struggling needlessly with some code that generates a set of buttons on a form based on a set of callbacks that get passed in.
Basically, you pass in something that looks like this:
Well, the holiday was a resounding success. Everything went to plan and we both had a wonderful time. I'll come to that in a later blog though as I'm intending to briefly review all the places we went.
Coming back from the holiday was, in contrast, hard and unpleasant. We were both depressed for a couple of days and very glad that we had Friday, Saturday, and Sunday to recover and prepare ourselves for the real world. Fortunately, by Sunday we were both feeling in better spirits and managed to double-team the housework so we at least have some clothes and a house that smells less like cat poo (despite my brother's best efforts while he house-sat for us, the cats had been relentless in their quest for world domination by fecal overload).
After a "fun" morning of convincing libnfc and a few small applications I'd written in C to compile in Window 7 with mingw32, I learned a few things so I'm just jotting them down for future reference.
Well, after a while of struggling with it, I now officially like the new "tree" version of i3. My difficulties came from not reading any documentation to go with the new release and expecting it to work the same way. That turns out to be rather incompatible with the change in layout model ;)
Don't worry, sfr, this isn't really because of this morning :)
I was wondering the other day, following a somewhat laboured conversation with my wife (I forget what it was about now), why it is that geeks are generally socially awkward. It often occurs that I've taken something too literally (mostly unintentionally) or that I've explained something to such excess that she no longer remembers what I was babbling about.
After a fairly hectic week, it's been a very enjoyable weekend all in all. Friday evening was spent chilling out with some Mario Kart and card games. After a lie in and finishing the house work on Saturday, I went for a brief but enjoyable bike round around the city before stopping off for a pint in the
Cider Shed Fat Cat Brewery Tap. In the evening, I went to a great party hosted by a good friend and met loads of his other friends - a very different kind of evening and some fantastic food. I also found out that I am still, for good or ill (most likely ill), very capable of drinking far more than is good for me! Consequently, today has consisted of sofa, a bit of Wii Fit (haven't played for ages, good fun), more card games, some Speed Racer (wheeee), blogging and, very shortly, reading in bed.
My wife and I have been playing card games a lot recently and I think we're in need of more. Any recommendations for fun card games for two players will be gratefully received. Here's the games we play at the moment.
A while ago, I decided to learn how to use the canvas and that for my first project I was going to write a breakout clone. Pretty standard fare for a first-time project :)
After writing some routines to draw blocks on the screen some weeks ago, I finally got around to doing some real work on it this evening. Two or three hours later, I'd ended up with a mostly working, radial version of Breakout.
I was going to write about a very strange and excellent dream I had the other day. I'd even written some notes down so that I'd remember it but I managed to delete those notes during some git fiddling.
So I'll write about that instead :)