четверг, 15 января 2015 г.

Gentoo, updating GCC to newer version

If you are upgrading GCC then you do not need to do anything except switch compiler version and rebuild libtool:
root # emerge -u sys-devel/gcc
root # gcc-config -l
[1] i686-pc-linux-gnu-4.4.5 *
[2] i686-pc-linux-gnu-4.5.3

root # gcc-config 2
root # env-update && source /etc/profile
root # emerge --oneshot libtool

If you upgrade GCC from a version earlier than 3.4.0 (for the 3.x series) or 4.1, you will need to run revdep-rebuild as well:
root # revdep-rebuild --library libstdc++.so.5

Check the current version and uninstall the old version
root # gcc --version
root # emerge -C =sys-devel/gcc-4.4.5
There you go. Enjoy the new compiler!

пятница, 14 ноября 2014 г.

Debian 7 installing oracle jdk 7

echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" | tee -a /etc/apt/sources.list
echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" | tee -a /etc/apt/sources.list
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886
apt-get update
apt-get install oracle-java7-installer

четверг, 30 октября 2014 г.

Copying perl modules from one server to another

I had to deploy whole infrastructure on new server and I had to install all perl modules as it was on my dev server.
To do this, we need to generate list of all installed modules.
run
perl -MCPAN -eautobundle
This finds all installed modules and their distribution name, then stored these information in a snapshot file. When this is finished, the final messages shows
Wrote bundle file
 /root/.cpan/Bundle/Snapshot_2014_10_30_00.pm
now, copy this file into new server under /root/.cpan/Bundle/Snapshot_2014_10_30_00.pm
then just run
perl -MCPAN -e 'install Bundle::Snapshot_2014_10_30_00'
this will install all modules from this snapshot

PROFIT!!

вторник, 27 мая 2014 г.

Продлеваем обновления для Windows XP на 5 лет

8 апреля 2014 года в мире высоких технологий случилось страшное — Microsoft наконец официально прекратила поддержку своей самой популярной операционной системы Windows XP. Операционная система осталась без заплаток для угроз нулевого дня, миллионы пользователей оказались в опасности заражения вирусами. Тем не менее, далеко не все спешат переходить на новые версии как этого желает софтверный гигант — кому-то жалко денег, кто-то привык к до боли знакомому интерфейсу и нескучной обоине с зелеными холмами. Намного серьезнее все обстоит в корпоративной среде, где на Windows XP работают тысячи машин, обновление которых выльется в миллионные траты и непредвиденные проблемы с годами отточенным корпоративным софтом.

Но оказывается, что есть простой хак, который позволяет продлить получение обновлений для системы безопасности Windows XP на ближайшие пять лет, т.е. до апреля 2019 года!

Это стало возможным благодаря существованию особой версии WIndows XP — Windows Embedded POSReady. Эта система была выпущена в 2009 году и основана на Windows XP Service Pack 3. Она предназначена для различных POS-терминалов, киосков, систем самообслуживания. Пользователям Windows XP не разрешается напрямую установить эти обновления для своей операционной системы. Однако, есть способ заставить систему делать это просто добавив определенный ключ в реестр Windows.

Открываем новый файл в теплом ламповом блокноте, забиваем три строчки, сохраняем с расширением .reg и запускаем с правами администратора:

Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\WPA\PosReady] "Installed"=dword:00000001

Поскольку расширенная поддержка Windows Embedded POSReady 2009 заканчивается только через 5 лет, Microsoft будет продолжать предоставлять новые обновления безопасности и исправления для этой версии до 9 апреля 2019 года, так что пользователи могут использовать этот хак для получения обновлений безопасности Windows XP еще на пять лет вперед.

DISCLAIMER

В связи с буйством различных антипиратских инициатив в нашем мире и стране, может внезапно оказаться, что данный трюк карается как раз 5 годами тюрьмы :) Поэтому, решать вам.

Источник: http://habrahabr.ru/post/200260/
Скопипащено воизбежании потери столь ценной информации... 

ps1; В хакере пишут, что x64 версию тоже можно обновить апдейтами от Win Server 2003.
ps2; Есть шанс, что какое-нибудь критическое обновление превратит вашу Windows XP Service Pack 3 в POS-терминал. :)

вторник, 18 марта 2014 г.

Copy.com init.d script for console sync

I'm testing new cloud storage Copy.com. This service has console client for Linux and it is great for backup stuff. If you register with this link, you will get 20Gigs of space.

Now. Copy.com provides only linux binaries with no init.d script. We can create our own:

#!/bin/sh
### BEGIN INIT INFO
# Provides:          CopyAgent
# Required-Start:    $local_fs $network
# Required-Stop:     $local_fs
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: CopyAgent
# Description:       CopyConsole (Copy cloud storage by Barracuda) service
### END INIT INFO

RUN_AS="root"
HOME=`grep $RUN_AS /etc/passwd | cut -d":" -f6`
CC="$HOME/copy/x86/CopyConsole"

start() {
   echo "Starting CopyConsole..."
       if [ -x $CC ]; then
           start-stop-daemon -b -o -c $RUN_AS -S -u $RUN_AS -x $CC -- -daemon
       fi
}

stop() {
   echo "Stopping CopyConsole..."
       if [ -x $CC ]; then
           start-stop-daemon -o -c $RUN_AS -K -u $RUN_AS -x $CC
       fi
}

status() {
       dbpid=`pgrep -u $RUN_AS CopyConsole`
       if [ -z $dbpid ] ; then
           echo "CopyConsole for user $RUN_AS: not running."
       else
           echo "CopyConsole for user $RUN_AS: running (pid $dbpid)"
       fi
}

case "$1" in

   start)
       start
       ;;
   stop)
       stop
       ;;
   restart|reload|force-reload)
       stop
       start
       ;;
   status)
       status
       ;;
   *)
       echo "Usage: /etc/init.d/copy.com {start|stop|reload|force-reload|restart|status}"
       exit 1

esac

exit 0

Do now forget to setup proper user to run from and check your installation path in CC property.

четверг, 6 марта 2014 г.

Upload .ipa to TestFlight from console

Add this code, filled out with your own TestFlight info, after the export DEVELOP_DIR line:
# testflight stuff
API_TOKEN=<YOUR API TOKEN>
TEAM_TOKEN=<YOUR TEAM TOKEN>

Add this to the end of the existing script:
#
# Send to TestFlight
#
/usr/bin/curl "http://testflightapp.com/api/builds.json" \
  -F file=@"${IPA_DIR}/${PROJECT}.ipa" \
  -F dsym=@"${IPA_DIR}/${PROJECT}.dSYM.zip" \
  -F api_token="${API_TOKEN}" \
  -F team_token="${TEAM_TOKEN}" \
  -F notes="Build ${BUILD_NUMBER} uploaded automatically from Xcode. Tested by Chuck Norris" \
  -F notify=True \
  -F distribution_lists='all'
 
echo "Successfully sent to TestFlight"

Source from: Beginning Automated Testing With Xcode Part 2/2