레이블이 debian인 게시물을 표시합니다. 모든 게시물 표시
레이블이 debian인 게시물을 표시합니다. 모든 게시물 표시

2014년 7월 8일 화요일

MyRepos, aka 'mr' -- tool for managing multiple VCS repos

We have 10+ repos under ~/ and it is a real PITA to push all changes manually to our different remote repositories (some on Bitbucket, others on Github).

There is a great tool called MyRepos written by Debian Developer Joey Hess (well-known for debian-installer, debhelper, git-annex and lots of other popular packages) that allows you to manage multiple VCS repositories with a single command.

To setup mr to work with your repo, first you have to cd into the directory containing your repo and type:

mr register

so myrepos can make a note of the remote repo target.

Once that's done for all the repos you want to manage with mr, exit out of the directories under version control and run your VCS command prefaced by mr to update multiple repos at once. Here's an example of pushing local changes to 7 different remote git repositories:

[archjun@arch ~]$ mr push -u origin master
mr push: /home/archjun/Documents/MyProjects/KTokenizer
Counting objects: 3, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 475 bytes | 0 bytes/s, done.
Total 3 (delta 1), reused 0 (delta 0)
   3986b86..541569e  master -> master
Branch master set up to track remote branch master from origin.

mr push: /home/archjun/Documents/WhatYoureReallyMeantToDo
Counting objects: 15, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (15/15), done.
Writing objects: 100% (15/15), 4.52 KiB | 0 bytes/s, done.
Total 15 (delta 6), reused 0 (delta 0)
   89e72c6..a55889f  master -> master
Branch master set up to track remote branch master from origin.

mr push: /home/archjun/Documents/cchallenges
Counting objects: 28, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (27/27), done.
Writing objects: 100% (28/28), 5.37 KiB | 0 bytes/s, done.
Total 28 (delta 10), reused 0 (delta 0)
   3158800..d810c82  master -> master
Branch master set up to track remote branch master from origin.

mr push: /home/archjun/Documents/coursera_IMT
Counting objects: 6, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (6/6), done.
Writing objects: 100% (6/6), 953 bytes | 0 bytes/s, done.
Total 6 (delta 4), reused 0 (delta 0)
   60e0628..987c4de  master -> master
Branch master set up to track remote branch master from origin.

mr push: /home/archjun/Documents/cs50x_2014
Counting objects: 44, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (42/42), done.
Writing objects: 100% (44/44), 4.75 KiB | 0 bytes/s, done.
Total 44 (delta 24), reused 0 (delta 0)
   03f6060..9cf44c8  master -> master
Branch master set up to track remote branch master from origin.

mr push: /home/archjun/Documents/idb_2014
Counting objects: 10, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (10/10), done.
Writing objects: 100% (10/10), 5.97 KiB | 0 bytes/s, done.
Total 10 (delta 5), reused 0 (delta 0)
   212016d..bf033fc  master -> master
Branch master set up to track remote branch master from origin.

mr push: /home/archjun/Documents/jun-project-euler
Username for 'https://github.com': gojun077
Password for 'https://gojun077@github.com': 
Branch master set up to track remote branch master from origin.
Everything up-to-date

mr push: finished (7 ok)

A real time-saver!

2014년 1월 15일 수요일

libreoffice와 ibus 호환 문제 해결 방법 (Arch Linux, Debian)

ibus과 ibus-hangul을 설치했는데도 libreoffice에서 한글 입력이 안 되면:

libreoffice-gtk 설치 해보세요 (Ubuntu나 Debian 파생 distro 쓰고 있는 경우)

libreoffice-gnome 설치 해보세요 (Archlinux 쓰고 있는 경우)

2013년 1월 21일 월요일

Sharing Brain Workshop training history between machines

Postscript 2014-12-21:
The method described in this post written in January 2013 no longer works. I recently came up with a new way of sharing Brain Workshop history between multiple machines through Dropbox. Refer to this post for details.

Although it's still somewhat buggy, Brain Workshop is a great Dual-N-Back working memory trainer. I've had problems running it in Debian with Pulseaudio installed, so I decided to install it in Arch Linux through the Brain Workshop pkgbuild in AUR.

My ArchLinux system uses plain old ALSA, and the crashes in Brain Workshop now only occur once every 15 or so sets (compared to once every 3 sets previously when using Pulseaudio). On ArchLinux, brain workshop stores training history in the text file ~/.brainworkshop.stats, but this file won't exist immediately after a fresh install.

From your machine containing your existing brain workshop training history, create a symlink pointing to a folder in Dropbox.

ln -s ~/.brainworkshop.stats ~/Dropbox/brainworkshop/

This will create a linked copy of your history file in the folder "brainworkshop" in Dropbox. On your machine with the new Brain Workshop install, create a symlink from Dropbox to your user directory:

ln -s ~/Dropbox/brainworkshop/.brainworkshop.stats ~/

Now, if you start your fresh install of Brain workshop and press 'G' to see a graph of your training history, it will show your progress instead of 'Insufficient Data, 2 days needed'. 
END

2012년 10월 17일 수요일

Formatting Mnemosyne Flash Cards - Indenting Code Snippets

To help me memorize Python syntax and built-in functions for 6.00x Introduction to Computer Science and Programming, I've created some flashcards using Mnemosyne, the open-source flashcard program that uses an adaptive learning algorithm to determine how often to quiz you on certain cards (mnemosyne is available in the Debian repo's).

One problem is that regular text in flashcards cannot be indented. I've made several cards that contain snippets of Python code, but all the code indentation disappears after saving (which is problematic since Python determines nesting through indentation rather than with brackets). Fortunately, Mnemosyne supports HTML tags which can be used for formatting. Although HTML doesn't directly display tabs, enclosing the entire code fragment in the tags <pre></pre> will allow you to use indentation.

2012년 9월 11일 화요일

Korean Linux Distros - AnNyung Linux & Asianux

search on Distrowatch for Korean linux distros returns 7 results, 5 of which have been discontinued. Of the two that are still active, one is AnNyung Linux, a localized Korean distro based on RedHat/CentOS 6 while the other is Asianux. Ticketmonster Korea (which was acquired by Living Social of the US one year ago) runs AnNyung Linux exclusively on its servers.

I remember back in 2005, the Korean word-processing software company Hancom came out with 'Asianux,' a Korean-localized version of RedHat, but that never really went anywhere. It was an outgrowth of previously discontinued efforts represented by Haansoft Linux (2004) and  Hancom Linux (2002). Hancom doesn't really get open-source (it tried to charge business end-users of the 2 distros above), and even the .hwp binary file format for its word-processing files was closed until 2010 (but still many file streams in .hwp remain undocumented. There is a github project called pyhwp that is also available through pip, that is trying to reverse-engineer the .hwp format, however). I tried to download the latest v4 release of Asianux, but the page 404's after the images to download have been selected.

IMHO, Korea should follow the lead of Japanese and Chinese-community re-spins of popular and user-friendly distros like Ubuntu and Debian. Prime examples are the popular Deepin Linux (based on Ubuntu) created by Chinese users and Vine Linux (based on Debian Testing) created by Japanese users, both of which are active projects with recent releases in July and September 2012. Maybe I should use Remastersys to create my own localized Korean re-spin of either Ubuntu or Debian...it would be the first non-RedHat Korean localized linux in history!

2012년 4월 1일 일요일

Manually upgrading Adobe Flash in Debian Linux

A couple of weeks ago after upgrading Chromium from 15.0.x to 16.0, Chromium complained of an 'outdated'  Flash plugin. I thought that Chrome/Chromium came with its own version of Flash integrated with the browser, but perhaps that's only for Windows? Anyways, we went to the Adobe site for Korea and downloaded the latest flash tarball (they don't offer .deb package files, although they do have .rpm and .yum packages). We then extracted just libflashplayer.so and copied it to the following 2 locations:
/usr/lib/mozilla/plugins
/usr/lib/iceweasel/plugins (this applies if you happen to have firefox/iceweasel installed)

After installation, you can check what version of flash you have installed by visiting Adobe's flash test page. The Debian repositories also has a package called flashplayer-mozilla that installs flashplayer, but the most recent version available in Debian Testing is flash 11.1.102.63-0 vs. 11.2.xxx available as a binary download from Adobe.