''' ¸®´ª½º »ç¿ëÀÚ¸¦ À§ÇÑ pkgsrc »ç¿ë¹ý ''' pkgsrc¸¦ ¸®´ª½º¿¡¼­ »ç¿ëÇÏ´Â ¹æ¹ýÀ» ´Ù·çµµ·Ï ÇÏ°Ú½À´Ï´Ù. ÀÌÀçÈ« http://www.pyrasis.com [[TableOfContents]] * ÄÄÆÄÀÏ ¹æ½ÄÀÇ ÆÐÅ°Áö ½Ã½ºÅÛÀº Á¨Åõ¸®´ª½º¸¸ °¡Áø °ÍÀÌ ¾Æ´Ï´Ù! == pkgsrc ¼Ò°³ == pkgsrc´Â ¸Ç óÀ½ NetBSD¸¦ À§ÇÑ ÆÐÅ°Áö ½Ã½ºÅÛÀ¸·Î °³¹ß µÇ¾ú½À´Ï´Ù. ÀÌÁ¦´Â NetBSD »Ó¸¸ÀÌ ¾Æ´Ñ Darwin (Mac OS X), FreeBSD, IRIX, Linux, OpenBSD, Solarisµî ¸ÖƼÇ÷§ÆûÀ» Áö¿øÇÏ°í ÀÖ½À´Ï´Ù. ·¹µåÇÞ, µ¥ºñ¾È, ½½·º¿þ¾î µî ¸ðµç ¸®´ª½º ¹èÆ÷ÆÇ¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. == ÀåÁ¡ == * Á¨Åõ ¸®´ª½º ó·³ ¸ðµç °ÍÀ» ÄÄÆÄÀÏ Çؼ­ ¼³Ä¡ÇÕ´Ï´Ù. * /usr/pkg µð·ºÅ丮 ¾È¿¡ ¸ðµç ½ÇÇà ÆÄÀÏ ¹× ¶óÀ̺귯¸®¸¦ ¼³Ä¡Çϱ⠶§¹®¿¡ ÀÏ°ü¼º ÀÖ°Ô °ü¸® ÇÒ ¼ö ÀÖ½À´Ï´Ù. * ÀÇÁ¸¼ºÀÌ ÀÖ´Â ÆÐÅ°Áö´Â °ü°èµÈ ÆÐÅ°Áö¸¦ ÀÚµ¿À¸·Î °°ÀÌ ¼³Ä¡ÇÕ´Ï´Ù. * ¸ðµç ¸®´ª½º ¹èÆ÷ÆÇ¿¡¼­ »ç¿ë°¡´ÉÇÕ´Ï´Ù. * ÃֽŠ¼Ò½º¸¦ ÇÁ·Î±×·¥ °ø½Ä »çÀÌÆ®¿¡¼­ ¹Þ¾Æ¿É´Ï´Ù. * ÆÐÅ°Áö ¸®½ºÆ® ¾÷µ¥ÀÌÆ®°¡ ºü¸¨´Ï´Ù. ƯÈ÷ ·¹µåÇÞÀ» ¾²°í ½ÍÀºµ¥ ÇÁ·Î±×·¥Àº ¼Ò½º¸¦ ÄÄÆÄÀÏÇؼ­ ¼³Ä¡ÇÏ°í ½Í´Ù¸é pkgsrc¸¦ ÀÌ¿ëÇÏ¸é µË´Ï´Ù. ÀÏÀÏÀÌ ¼Ò½º¸¦ ¹Þ¾Æ¼­ ¼³Ä¡ÇÒ ÇÊ¿ä°¡ ¾ø½À´Ï´Ù. ÄÄÆÄÀÏÇؼ­ ¼³Ä¡ÇÑ ÈÄ »èÁ¦µµ °£ÆíÇÏ°Ô ÇÒ ¼ö ÀÖ½À´Ï´Ù. == pkgsrc ¼³Ä¡ == ftp.netbsd.org¿¡¼­ `pkgsrc.tar.gz`¸¦ ¹Þ°Å³ª CVS¿¡¼­ üũ¾Æ¿ôÀ¸·Î ¹Þ½À´Ï´Ù. netbsd.org Áß¾Ó¼­¹ö´Â »ç¶÷µéÀÌ ¸¹ÀÌ ¸ô·Á¼­ ¼Óµµµµ ´À¸®°í Á¢¼ÓÀÌ ¾ÈµÇ´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. ftp³ª CVS´Â ¼Óµµ°¡ ºü¸¥ Çѱ¹ ¹Ì·¯¸¦ ÀÌ¿ëÇÏ´Â°Ô ÁÁ½À´Ï´Ù. `pkgsrc.tar.gz`´Â ÇÏ·ç¿¡ Çѹø¾¿ anoncvs.netbsd.orgÀÇ pkgsrc¸¦ ¾ÐÃàÇÑ °ÍÀÔ´Ï´Ù. ¾ÐÃàÀ» ÇØÁ¦ÇÑ µÚ ²À cvs upÀ¸·Î ÆÐÅ°Áö ¸®½ºÆ®¸¦ ¾÷µ¥ÀÌÆ® ÇϽñâ¹Ù¶ø´Ï´Ù. === pkgsrc ¹Þ±â === ==== ftp¿¡¼­ ¹Þ±â ==== {{{#!vim nosyntax ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-current/tar_files/pkgsrc.tar.gz }}} pkgsrc¸¦ ¹ÞÀºµÚ¿¡ `/usr`¿¡ ¾ÐÃàÀ» ÇØÁ¦ ÇÕ´Ï´Ù. ==== CVS¿¡¼­ üũ¾Æ¿ô ==== /usr µð·ºÅ丮·Î À̵¿ÇÕ´Ï´Ù. {{{#!vim nosyntax usr# cvs -d:pserver:anoncvs@anoncvs.netbsd.org:/cvsroot login Æнº¿öµå·Î anoncvs¸¦ ÀÔ·Â usr# cvs -z5 -d:pserver:anoncvs@anoncvs.netbsd.org:/cvsroot co -P pkgsrc }}} === bootstrap ¼³Ä¡ === pkgsrc¸¦ »ç¿ëÇϱâ À§ÇÑ ÃÖ¼ÒÇÑÀÇ À¯Æ¿¸®Æ¼¸¦ ¼³Ä¡ÇÕ´Ï´Ù. µ¥ºñ¾ÈÀÇ °æ¿ì `libncurses5-dev` ÆÐÅ°Áö¸¦ ¼³Ä¡ÇØ¾ß ÇÕ´Ï´Ù. /usr/pkgsrc/bootstrapÀ¸·Î À̵¿ÇÕ´Ï´Ù. {{{#!vim nosyntax # cd /usr/pkgsrc/bootstrap /usr/pkgsrc/bootstrap# ./bootstrap }}} `mk.conf` º¹»ç {{{#!vim nosyntax /usr/pkgsrc/bootstrap# cp work/mk.conf.example /etc/mk.conf }}} ȯ°æº¯¼öÀÇ PATH¿¡ `/usr/pkg/bin` µð·ºÅ丮¸¦ Ãß°¡ÇÕ´Ï´Ù. === pkg_install ¼³Ä¡ === ±âº»ÀûÀÎ pkg_info, pkg_delete µîÀÇ ¸í·ÉÀ» ¼³Ä¡ÇÕ´Ï´Ù. /usr/pkgsrc/pkgtools/pkg_install·Î À̵¿ÇÕ´Ï´Ù. {{{#!vim nosyntax # cd /usr/pkgsrc/pkgtools/pkg_install /usr/pkgsrc/pkgtools/pkg_install# bmake install }}} ȯ°æº¯¼öÀÇ PATH¿¡ `/usr/pkg/sbin` µð·ºÅ丮¸¦ Ãß°¡ÇÕ´Ï´Ù. == ÆÐÅ°Áö ¼³Ä¡ == /usr/pkgsrc·Î À̵¿ÇÕ´Ï´Ù. µð·ºÅ丮¿¡ ÇÁ·Î±×·¥ Á¾·ùº°·Î Àß ºÐ·ùµÇ¾î ÀÖ½À´Ï´Ù. °¢°¢ ÇÁ·Î±×·¥µéÀº ±× ÇÁ·Î±×·¥ÀÇ °ø½Ä »çÀÌÆ®¿¡¼­ ¼Ò½ºÆÄÀÏÀ» ¹Þ¾Æ ÄÄÆÄÀÏÇؼ­ ¼³Ä¡ÇÕ´Ï´Ù. ÀÇÁ¸¼ºÀÌ ÀÖ´Â ÆÐÅ°ÁöµéÀº ÀÚµ¿À¸·Î °°ÀÌ ¼³Ä¡ÇÕ´Ï´Ù. vimÀ» ¼³Ä¡ÇÏ°íÀÚ ÇÏ´Â °æ¿ì. {{{#!vim nosyntax # cd /usr/pkgsrc/editors/vim /usr/pkgsrc/editors/vim# bmake install }}} KDE ¼³Ä¡ {{{#!vim nosyntax # cd /usr/pkgsrc/meta-pkg/kde3 /usr/pkgsrc/meta-pkg/kde3# bmake install }}} GNOME ¼³Ä¡ {{{#!vim nosyntax # cd /usr/pkgsrc/meta-pkg/gnome /usr/pkgsrc/meta-pkg/gnome# bmake install }}} == ÃֽŠÆÐÅ°Áö ¸®½ºÆ® ¾÷µ¥ÀÌÆ® == Á¨Åõ¸®´ª½ºÀÇ emerge rsync¿Í ¶È°°Àº ¿ªÇÒÀ» ÇÕ´Ï´Ù. ÆÐÅ°ÁöµéÀÇ ¸®½ºÆ®¸¦ ÃֽŠ»óÅ·Π¾÷µ¥ÀÌÆ® ÇÕ´Ï´Ù. ¸ÅÀÏ 60~80ȸ Á¤µµ °»½ÅÀÌ µË´Ï´Ù. ftp¿¡¼­ ¹Þ¾Ò°Å³ª CVS¸¦ üũ¾Æ¿ô ÇÑ °æ¿ì ¸ðµÎ ¾Æ·¡Ã³·³ cvs upÀ¸·Î ¾÷µ¥ÀÌÆ® ÇÕ´Ï´Ù. {{{#!vim nosyntax # cd /usr/pkgsrc /usr/pkgsrc# cvs up }}} == ÆÐÅ°Áö °ü¸® == === ¼³Ä¡µÈ ÆÐÅ°Áö ¸®½ºÆ® º¸±â === {{{#!vim nosyntax # pkg_info }}} === ÆÐÅ°Áö »èÁ¦ === {{{#!vim nosyntax # pkg_delete ÆÐÅ°Áö À̸§ }}} === ¹ÙÀ̳ʸ® ÆÐÅ°Áö ¸¸µé±â === ÆÐÅ°Áö¸¦ ¼³Ä¡ ÇÑµÚ ¾Æ·¡ ¸í·ÉÀ¸·Î *.tgz Çü½ÄÀÇ ¹ÙÀ̳ʸ® ÆÐÅ°Áö¸¦ µû·Î ¸¸µé ¼ö ÀÖ½À´Ï´Ù. vimÀÇ °æ¿ì {{{#!vim nosyntax /usr/pkgsrc/editors/vim# bmake package }}} /usr/pkgsrc/packages µð·ºÅ丮 ¾Æ·¡¿¡ ¹ÙÀ̳ʸ® ÆÐÅ°ÁöµéÀÌ »ý¼ºµË´Ï´Ù. === ÆÐÅ°Áö ¼³Ä¡¶§¸¶´Ù ¹ÙÀ̳ʸ® ÆÐÅ°Áö¸¦ ÀÚµ¿À¸·Î ¸¸µé°Ô Çϱâ === ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÒ ¶§¸¶´Ù *.tgz Çü½ÄÀÇ ¹ÙÀ̳ʸ® ÆÐÅ°Áö¸¦ ÀÚµ¿À¸·Î ¸¸µé°Ô ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô µÇ¸é ³ªÁß¿¡ ½Ã½ºÅÛÀ» º¹±¸ÇÒ ¶§ *.tgz ÆÄÀÏÀ» ¹é¾÷Çß´Ù°¡ ´Ù½Ã ¼³Ä¡ÇÏ¸é ´Ù½Ã ÄÄÆÄÀÏ ÇÏÁö ¾Ê°íµµ ¼Õ½±°Ô ¼³Ä¡ÇÒ ¼ö ÀÖ½À´Ï´Ù. /etc/mk.conf ¿¡ ´ÙÀ½À» Ãß°¡ÇÕ´Ï´Ù. {{{#!vim nosyntax DEPENDS_TARGET=package }}} bmake install·Î ÆÐÅ°Áö¸¦ ¼³Ä¡Çϸé ÀÇÁ¸¼º °ü°è¿¡ ÀÖ´Â ÆÐÅ°Áö±îÁö ¸ðµÎ ¹ÙÀ̳ʸ® ÆÐÅ°Áö·Î ¸¸µé¾îÁý´Ï´Ù. /usr/pkgsrc/packages µð·ºÅ丮 ¾Æ·¡¿¡ ¹ÙÀ̳ʸ® ÆÐÅ°ÁöµéÀÌ »ý¼ºµË´Ï´Ù. (´Ü¼øÈ÷ bmake package·Î ÆÐÅ°Áö¸¦ »ý¼ºÇÒ¼öµµ ÀÖ½À´Ï´Ù. --ageldama) === ¹ÙÀ̳ʸ® ÆÐÅ°Áö ¼³Ä¡ === ¹ÙÀ̳ʸ® ÆÐÅ°Áö¸¦ ¼³Ä¡ÇÕ´Ï´Ù. {{{#!vim nosyntax # pkg_add ÆÐÅ°Áö À̸§.tgz }}} == ÀÏ¹Ý »ç¿ëÀÚ °èÁ¤¿¡¼­ »ç¿ë == root°¡ ¾Æ´Ñ ÀÏ¹Ý »ç¿ëÀÚ °èÁ¤¿¡¼­ pkgsrc¸¦ »ç¿ëÇÏ·Á¸é ¾à°£ÀÇ ¼³Á¤ÀÌ ÇÊ¿äÇÕ´Ï´Ù. `/home/pyrasis` ¾Æ·¡¿¡ `pkg`, `var` µð·ºÅ丮¸¦ ¼³Ä¡ÇÕ´Ï´Ù. {{{#!vim nosyntax # cd /home/pyrasis/pkgsrc/bootstrap /home/pyrasis/pkgsrc/bootstrap$ ./bootstrap --prefix=/home/pyrasis/pkg \ --pkgdbdir=/home/pyrasis/var/db/pkg --sysconfdir=/home/pyrasis/pkg/etc \ --ignore-user-check }}} `mk.conf`¸¦ `/home/pyrasis/pkg/etc`¿¡ º¹»çÇÕ´Ï´Ù. {{{#!vim nosyntax /home/pyrasis/pkgsrc/bootstrap$ cp work/mk.conf.example /home/pyrasis/pkg/etc/mk.conf }}} ȯ°æº¯¼öÀÇ PATH¿¡ `/home/pyrasis/pkg/bin` µð·ºÅ丮¸¦ Ãß°¡ÇÕ´Ï´Ù. mk.confÀÇ À§Ä¡¸¦ ÁöÁ¤ÇØ ÁÝ´Ï´Ù. ÀÌ ºÎºÐÀº °¢ »ç¿ëÀÚ °èÁ¤ÀÇ `.profile`À̳ª `.bashrc` ÆÄÀÏ¿¡ Ãß°¡ÇÕ´Ï´Ù. {{{#!vim nosyntax $ export MAKECONF=/home/pyrasis/pkg/etc/mk.conf }}} == Áú¹®°ú ´äº¯ == pkgsrc¿¡¼­ make installÀ» ½ÇÇàÇÏ°í Áß°£¿¡ »ç°í·Î ÄÄÆÄÀÏÇÏ°í ¼³Ä¡µÇ´ø °ÍµéÀÌ Áß´ÜµÇ¸é ¾î¶»°Ô ÇØ¾ß Çϳª¿ä? ½Ã½ºÅÛÀ» º¹±¸ÇÏ°í ±×³É ´Ù½Ã make installÀ» Çصµ µÇ³ª¿ä? °Ë»öÇØ º¸´Ï ÇØ°áÃ¥ÀÌ ÀÖ±º¿ä. mk.conf ÆÄÀÏ¿¡ PKG_RESUME_TRANSFERS=yes ¹®±¸¸¦ ½á ÁÖ¸é µÈ´Ù°í ÇÕ´Ï´Ù. ---- pkgsrc°¡ gentooÀÇ portage¿Í ´Ù¸¥ Á¡À̶ó¸é ¾î¶² °ÍÀÌ ÀÖÀ»±î¿ä? ´Ù¸¥Á¡À̶ó¸é portage´Â Á¨Åõ ¸®´ª½º¿¡¼­ ¹Û¿¡ »ç¿ëÇÏÁö ¸øÇÑ´Ù´Â Á¡ÀÌ°í, pkgsrc´Â *BSD, Linux, Solaris, IRIXµî ¿©·¯ Ç÷§Æû¿¡¼­ »ç¿ë°¡´ÉÇÏ´Ù´Â Á¡ÀÔ´Ï´Ù. ---- ±âÁ¸ÀÇ ¸®´ª½º ¹èÆ÷ÆÇ¿¡¼­µµ »ç¿ëÇÒ ¼ö ÀÖ´Ù°í ÇÏ¿´´Âµ¥, pkgsrc ÀÚüÀûÀ¸·Î ÀÇÁ¸¼º Á¤º¸¸¦ ¾îµò°¡ ÀúÀåÇÏ°í ÀÖ´Ù¸é, ¿¹¸¦ µé¾î foo¶ó´Â ÇÁ·Î±×·¥À» pkgsrc·Î ±ò·Á°í ÇÒ ¶§ bar¶ó´Â ÇÁ·Î±×·¥ÀÌ ÇÊ¿äÇѵ¥ ÀÌ¹Ì ÆÐÅ°Áö·Î ¼³Ä¡°¡ µÇ¾î ÀÖ´Ù¸é ¾î¶»°Ô µÇ´ÂÁö¿ä? RPMÀ̳ª DEBµî ¿©Å¸ ´Ù¸¥ ÆÐÅ°Áö ½Ã½ºÅÛÀ¸·Î ¼³Ä¡µÈ°Ç ÀνÄÇÏÁö ¸øÇÕ´Ï´Ù. ¿ÀÁ÷ pkgsrc·Î¸¸ ¼³Ä¡µÈ ÆÐÅ°Áö¸¸ ÀνÄÇÕ´Ï´Ù. ÀÇÁ¸¼º ÀÖ´Â ÆÐÅ°Áö°¡ pkgsrc·Î ¼³Ä¡ µÇ¾ú´Ù¸é ±×³É ³Ñ¾î °©´Ï´Ù. (pkgsrc´Â /usr/pkg ¾È¿¡ ¸ðµç ÆÄÀÏ°ú ¶óÀ̺귯¸®°¡ µé¾î°¡±â ¶§¹®¿¡ ´Ù¸¥ ÆÐÅ°Áö ½Ã½ºÅÛÀÌ ¼³Ä¡ÇÑ°ÍÀ» µ¤¾î ¾²°Å³ª ¾îÁö·´È÷Áö´Â ¾Ê½À´Ï´Ù.) ---- Á¶±Ý ´ç¿¬ÇÑ Áú¹® °°±âµµ Çѵ¥.... pkgsrc ÀÚüÀÇ »ç¿ë ¹æ¹ýÀº ¾î´À OS¿¡¼­³ª µ¿ÀÏÇÏ°ÚÁö¿ä? NetBSD¿¡¼­¸¸ Ưº°È÷ ´Ù¸¥ ¿É¼ÇÀ̳ª ±â´ÉÀÌ ´õ µé¾î°¡°Å³ª ÇÏ´Â ºÎºÐÀº ¾ø³ª¿ä? ³× ¾ø½À´Ï´Ù. ´Ù¸¥Á¡ÀÌ ÀÖ´Ù¸é ¸®´ª½º´Â BSD make°¡ ¾ø±â ¶§¹®¿¡ bmake¶ó°í µû·Î ¼³Ä¡ÇÏ°í NetBSD´Â ±âº»ÀûÀ¸·Î BSD make°¡ ÀÖÀ¸¹Ç·Î ±×³É make install ÀÔ´Ï´Ù. --pyrasis ---- bmake installÀÌ ³¡³­ ´ÙÀ½¿¡ ¸¸µé¾îÁö´Â ½ÃÀÛ ½ºÅ©¸³Æ®´Â BSD¿¡¼­ ¾²ÀÌ´Â ½ÃÀÛ ½ºÅ©¸³Æ®ÀÎ °Í °°½À´Ï´Ù. Apache¿Í °°Àº µ¥¸óµéÀÇ ½ÃÀÛ ½ºÅ©¸³Æ®´Â Á÷Á¢ ÀÛ¼ºÇØ¾ß Çմϱî? /usr/pkg/share/examples/rc¿¡ ÀÚµ¿À¸·Î ¼³Ä¡µÇ¾î ÀÖ½À´Ï´Ù. ¿øÇÏ´Â À§Ä¡¿¡ º¹»çÇؼ­ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¾ÆÂü. pkgtools/rc.subrÀ» ¸ÕÀú ¼³Ä¡ÇϽŠ´ÙÀ½¿¡ ÇؾßÁö ÀÛµ¿ÀÌ µË´Ï´Ù. ;-) --ageldama