{ "version": "https://jsonfeed.org/version/1.1", "user_comment": "This feed allows you to read the posts from this site in any feed reader that supports the JSON Feed format. To add this feed to your reader, copy the following URL -- https://matoken.org/blog/category/%e9%9b%bb%e5%ad%90%e5%b7%a5%e4%bd%9c/raspberry-pi/rasbian_jessie/feed/json/ -- and add it your reader.", "home_page_url": "https://matoken.org/blog/category/%e9%9b%bb%e5%ad%90%e5%b7%a5%e4%bd%9c/raspberry-pi/rasbian_jessie/", "feed_url": "https://matoken.org/blog/category/%e9%9b%bb%e5%ad%90%e5%b7%a5%e4%bd%9c/raspberry-pi/rasbian_jessie/feed/json/", "language": "ja", "title": "Rasbian_jessie – matoken's blog", "description": "Is there no plan B?", "icon": "https://matoken.org/blog/wp-content/uploads/2025/03/cropped-1865f695c4eecc844385acef2f078255036adccd42c254580ea3844543ab56d9.jpeg", "items": [ { "id": "http://matoken.org/blog/?p=1721", "url": "https://matoken.org/blog/2017/12/07/i-put-the-linux-arm-version-vivaldi/", "title": "Linux ARM\u7248Vivaldi\u3092\u5165\u308c\u3066\u307f\u305f", "content_html": "

\"20171207_01:12:04-24154\"/

\n

Opera\u306e\u5171\u540c\u5275\u8a2d\u8005\u3067CEO\u3060\u3063\u305fJon Stephenson von Tetzchner\u306b\u3088\u3063\u3066\u8a2d\u7acb\u3055\u308c\u305fVivaldi Technologies\u306b\u3088\u3063\u3066\u958b\u767a\u3055\u308c\u3066\u3044\u308b\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u304c\u3042\u308a\u307e\u3059\uff0e
\n\u3053\u308c\u307e\u3067x86/x64\u30d7\u30e9\u30c3\u30c8\u30db\u30fc\u30e0\u306eWindows/macOS/Linux\u7248\u304c\u63d0\u4f9b\u3055\u308c\u3066\u3044\u307e\u3057\u305f\u304c\uff0c2017/12/05\u306bLinux ARM\u7248(armhf)\u304c\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u307e\u3057\u305f\uff0e

\n\n

Raspberry Pi\u306eRaspbian\u304c\u30e1\u30a4\u30f3\u306e\u3088\u3046\u3067\u3059\u304c\uff0c\u4ed6\u306eARM\u74b0\u5883\u3067\u3082\u8a66\u3057\u305f\u3089\u666e\u901a\u306b\u52d5\u304d\u307e\u3057\u305f :)

\n

\u3068\u3044\u3063\u3066\u3082\u3084\u306f\u308aRAM512MB\u306e\u3088\u3046\u306a\u30de\u30b7\u30f3\u3067\u306f\u8f9b\u3044\u3067\u3059\u306d\uff0eRAM2GB\u306e\u30de\u30b7\u30f3\u3060\u3068\u4eca\u306e\u3068\u3053\u308d\u3044\u3044\u611f\u3058\u305d\u3046\u3067\u3059\uff0eMidori\u3084qutebrowser\u3067\u3046\u307e\u304f\u8868\u793a\u3067\u304d\u306a\u3044Mastodon\u3084gmail/Google+\u306a\u3069\u3082\u554f\u984c\u306a\u304f\u8868\u793a\u3067\u304d\u307e\u3059\u3057\uff0cChrome\u306e\u62e1\u5f35\u6a5f\u80fd\u3082\u4f7f\u3048\u307e\u3059\uff0e

\n

Linux ARM\u7248Vivaldi\u306e\u5165\u624b\u3068\u78ba\u8a8d

\n

deb pkg\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9

\n
\n
$ wget https://downloads.vivaldi.com/stable/vivaldi-stable_1.13.1008.34-1_armhf.deb\r\n
\n
\n

hash

\n

hash\u3068\u304b\u898b\u5f53\u305f\u3089\u306a\u3044\u3051\u3069\u624b\u5143\u3067\u306f\u3053\u3093\u306a\u611f\u3058\u3060\u3063\u305f

\n
\n
$ md5sum vivaldi-stable_1.13.1008.34-1_armhf.deb \r\n7515f51385a9a264ad5bb7612438aeda  vivaldi-stable_1.13.1008.34-1_armhf.deb\r\n$ sha1sum vivaldi-stable_1.13.1008.34-1_armhf.deb \r\n6b103d205f6aa7a5f3b394ba8d32dc9ca87bf0cd  vivaldi-stable_1.13.1008.34-1_armhf.deb\r\n$ sha256sum vivaldi-stable_1.13.1008.34-1_armhf.deb \r\ne7af5d021bf0c2968fcf0271e8f741552e34bcf2d032318eb8ea95356067297d  vivaldi-stable_1.13.1008.34-1_armhf.deb\r\n$ sha512sum vivaldi-stable_1.13.1008.34-1_armhf.deb \r\nf47f2d26e8045af9ba680129feca765cf3f9dc7ea76930071e9688ef50aa78a482b40ba5747fb4470d30520177bda371ec79e5a210a93dcf2e49251425001c6d  vivaldi-stable_1.13.1008.34-1_armhf.deb\r\n
\n
\n

\u30d1\u30c3\u30b1\u30fc\u30b8\u60c5\u5831\u78ba\u8a8d

\n
\n
$ dpkg-deb -I ./vivaldi-stable_1.13.1008.34-1_armhf.deb\r\n \u65b0\u5f62\u5f0f debian \u30d1\u30c3\u30b1\u30fc\u30b8\u3001\u30d0\u30fc\u30b8\u30e7\u30f3 2.0\u3002\r\n \u30b5\u30a4\u30ba 45154158 \u30d0\u30a4\u30c8: \u30b3\u30f3\u30c8\u30ed\u30fc\u30eb\u30a2\u30fc\u30ab\u30a4\u30d6 = 9840 \u30d0\u30a4\u30c8\u3002\r\n    1269 \u30d0\u30a4\u30c8\u3001   16 \u884c      control              \r\n   15872 \u30d0\u30a4\u30c8\u3001  442 \u884c   *  postinst             #!/bin/sh\r\n   12544 \u30d0\u30a4\u30c8\u3001  324 \u884c   *  postrm               #!/bin/sh\r\n    1220 \u30d0\u30a4\u30c8\u3001   42 \u884c   *  prerm                #!/bin/sh\r\n Package: vivaldi-stable\r\n Version: 1.13.1008.34-1\r\n Architecture: armhf\r\n Maintainer: Vivaldi Package Composer <packager@vivaldi.com>\r\n Installed-Size: 131921\r\n Pre-Depends: dpkg (>= 1.14.0)\r\n Depends: gconf-service, libasound2 (>= 1.0.16), libatk1.0-0 (>= 1.12.4), libc6 (>= 2.16), libcairo2 (>= 1.6.0), libcups2 (>= 1.4.0), libdbus-1-3 (>= 1.2.14), libexpat1 (>= 2.0.1), libfontconfig1 (>= 2.8.0), libgcc1 (>= 1:4.4.0), libgconf-2-4 (>= 3.2.5), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.28.0), libgtk-3-0 (>= 3.9.10), libnspr4 (>= 2:4.9-2~), libpango-1.0-0 (>= 1.14.0), libpangocairo-1.0-0 (>= 1.14.0), libx11-6 (>= 2:1.4.99.1), libx11-xcb1, libxcb1 (>= 1.6), libxcomposite1 (>= 1:0.3-1), libxcursor1 (>> 1.1.2), libxdamage1 (>= 1:1.1), libxext6, libxfixes3, libxi6 (>= 2:1.2.99.4), libxrandr2 (>= 2:1.2.99.3), libxrender1, libxss1, libxtst6, ca-certificates, fonts-liberation, libnss3 (>= 3.26), xdg-utils (>= 1.0.2), wget\r\n Recommends: adobe-flashplugin, chromium-codecs-ffmpeg-extra\r\n Conflicts: vivaldi-beta, vivaldi-preview\r\n Replaces: vivaldi-beta, vivaldi-preview\r\n Provides: www-browser\r\n Section: web\r\n Priority: optional\r\n Homepage: https://vivaldi.com\r\n Description: A new browser for our friends\r\n  Vivaldi browser is made with power users in mind by people who love the Web.\r\n
\n
\n

\u5c0e\u5165

\n

\u3068\u308a\u3042\u3048\u305aDebian jessie armhf/Ubuntu 16.04 LTS aarch64\u3067\u52d5\u3044\u3066\u3044\u308b\uff0e

\n

Debian/Ubuntu\u7b49

\n
\n
$ sudo dpkg -i ./vivaldi-stable_1.13.1008.34-1_armhf.deb\r\n
\n
\n

\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u4f9d\u5b58\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u8db3\u308a\u306a\u3044\u5834\u5408\u306f\uff0c

\n
\n
dpkg: \u4f9d\u5b58\u95a2\u4fc2\u306e\u554f\u984c\u306b\u3088\u308a vivaldi-stable:armhf \u306e\u8a2d\u5b9a\u304c\u3067\u304d\u307e\u305b\u3093:\r\n vivaldi-stable:armhf \u306f\u4ee5\u4e0b\u306b\u4f9d\u5b58 (depends) \u3057\u307e\u3059: libnss3 (>= 3.26)...\u3057\u304b\u3057:\r\n  \u30d1\u30c3\u30b1\u30fc\u30b8 libnss3:armhf \u306f\u307e\u3060\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002\r\n\r\ndpkg: \u30d1\u30c3\u30b1\u30fc\u30b8 vivaldi-stable:armhf \u306e\u51e6\u7406\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f (--install):\r\n \u4f9d\u5b58\u95a2\u4fc2\u306e\u554f\u984c - \u8a2d\u5b9a\u3092\u898b\u9001\u308a\u307e\u3059\r\n
\n
\n

\u3053\u3093\u306a\u611f\u3058\u3067\u8db3\u308a\u306a\u3044pkg\u304c\u5165\u308b\u306f\u305a\uff0e\u305d\u306e\u5f8c\u898b\u9001\u3089\u308c\u3066\u3044\u305fvivaldi-stable\u306e\u8a2d\u5b9a\u306e\u7d9a\u304d\u3082\u5b9f\u884c\u3055\u308c\u308b\uff0e

\n
\n
$ sudo apt install -f\r\n
\n
\n

64bit ARM\u74b0\u5883

\n

\"\u30d0\u30fc\u30b8\u30e7\u30f3\u60c5\u5831_009\"/

\n

aarch64\u3067\u3082\u8a66\u3057\u305f\uff0e
\n\u65e2\u306badd archtecture armhf\u3057\u3066\u8272\u3005\u5165\u308c\u3066\u3044\u305f\u74b0\u5883\u306b\u5165\u308c\u3066\u30af\u30ea\u30fc\u30f3\u306a\u74b0\u5883\u3067\u691c\u8a3c\u3057\u3066\u3044\u306a\u3044\u3051\u3069\u591a\u5206\u3053\u3093\u306a\u611f\u3058\uff0e

\n
\n
$ sudo dpkg --add-architecture armhf\r\n$ sudo apt update\r\n$ sudo dpkg -i ./vivaldi-stable_1.13.1008.34-1_armhf.deb\r\n$ sudo apt install -f\r\n
\n
\n

—-\u8ffd\u8a18—-
\n\u30af\u30ea\u30fc\u30f3\u306aDragonBoard 410c\u306bDebian stretch aarch64(lonaro)\u3092\u5165\u308c\u305f\u74b0\u5883\u3067\u3082\u78ba\u8a8d\u3057\u305f\u304c\u3053\u306e\u624b\u9806\u3067ok\u3060\u3063\u305f :)
\n—-\u8ffd\u8a18\u7d42\u308f\u308a—-

\n

.deb\u304c\u4f7f\u3048\u306a\u3044\u74b0\u5883

\n

deb\u4ee5\u5916\u306e\u74b0\u5883\u3067\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u9069\u5f53\u306a\u5834\u6240\u306b\u5c55\u958b\u3057\u3066\u52d5\u304b\u305b\u305f\uff0e

\n
\n
$ mkdir -p ~/opt/vivaldi\r\n$ ar p vivaldi-stable_1.13.1008.34-1_armhf.deb data.tar.xz | tar xJ -C ~/opt/vivaldi\r\n$ rm vivaldi-stable_1.13.1008.34-1_armhf.deb\r\n$ ~/opt/vivaldi/opt/vivaldi/vivaldi\r\n
\n
\n

Slackware\u3060\u3068\u4ee5\u4e0b\u306esctipt\u304c\u4f7f\u3048\u305d\u3046(\u672a\u78ba\u8a8d)

\n\n

\u554f\u984c

\n

sandbox

\n

\u3082\u3057\uff0c\u3053\u3093\u306a\u30a8\u30e9\u30fc\u304c\u51fa\u305f\u3089

\n
\n
$ ~/opt/vivaldi/opt/vivaldi/vivaldi\r\n[13021:13021:1205/215600.516642:FATAL:setuid_sandbox_host.cc(157)] The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I'm aborting now. You need to make sure that /home/matoken/opt/vivaldi/opt/vivaldi/vivaldi-sandbox is owned by root and has mode 4755.\r\nAborted[This script will find the latest Vivaldi binary package, download it and repackage it into Slackware format.](https://gist.github.com/ruario/dcbba70da900dac68fcc883542ff7ace "This script will find the latest Vivaldi binary package, download it and repackage it into Slackware format.")\r\n
\n
\n

\u3053\u3093\u306a\u611f\u3058\u3067\u30aa\u30fc\u30ca\u30fc\u3068\u30d1\u30fc\u30df\u30c3\u30b7\u30e7\u30f3\u3092\u8a2d\u5b9a\u3057\u305f\u3089ok.

\n
\n
$ chmod 4755 ~/opt/vivaldi/opt/vivaldi/vivaldi-sandbox\r\n$ sudo chown root.root ~/opt/vivaldi/opt/vivaldi/vivaldi-sandbox\r\n
\n
\n

\u82e5\u3057\u304f\u306f --no-sandbox option

\n
\n
$ ~/opt/vivaldi/opt/vivaldi/vivaldi --no-sandbox\r\n
\n
\n

\u65e5\u672c\u8a9e\u8c46\u8150\u554f\u984c

\n

\ufffc\ufffc\ufffc\"20171206_06:12:20-5069\"/\"20171206_07:12:16-6600\"/

\n

\u3068\u308a\u3042\u3048\u305a\u9069\u5f53\u306a\u65e5\u672c\u8a9e\u30d5\u30a9\u30f3\u30c8(\u4eca\u56de\u306fVL\u30b4\u30b7\u30c3\u30af)\u3092\u5165\u308c\u3066\uff0cVivaldi\u3092\u518d\u8d77\u52d5\u3067\u76f4\u3063\u305f\uff0e(Dejavu\u304c\u5165\u3063\u3066\u3044\u305f\u306e\u3067\u6307\u5b9a\u3057\u3066\u307f\u305f\u3051\u3069\u76f4\u3089\u306a\u304b\u3063\u305f)

\n
\n
$ sudo apt install fonts-vlgothic\r\n
\n
\n

\u95a2\u9023

\n\n
\n

\n

\n
\n", "content_text": "Opera\u306e\u5171\u540c\u5275\u8a2d\u8005\u3067CEO\u3060\u3063\u305fJon Stephenson von Tetzchner\u306b\u3088\u3063\u3066\u8a2d\u7acb\u3055\u308c\u305fVivaldi Technologies\u306b\u3088\u3063\u3066\u958b\u767a\u3055\u308c\u3066\u3044\u308b\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u304c\u3042\u308a\u307e\u3059\uff0e\n\u3053\u308c\u307e\u3067x86/x64\u30d7\u30e9\u30c3\u30c8\u30db\u30fc\u30e0\u306eWindows/macOS/Linux\u7248\u304c\u63d0\u4f9b\u3055\u308c\u3066\u3044\u307e\u3057\u305f\u304c\uff0c2017/12/05\u306bLinux ARM\u7248(armhf)\u304c\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u307e\u3057\u305f\uff0e\n\nVivaldi for Linux ARM, Raspberry Pi | Vivaldi Browser\nVivaldi on Raspberry Pi | Vivaldi Browser Help\n\nRaspberry Pi\u306eRaspbian\u304c\u30e1\u30a4\u30f3\u306e\u3088\u3046\u3067\u3059\u304c\uff0c\u4ed6\u306eARM\u74b0\u5883\u3067\u3082\u8a66\u3057\u305f\u3089\u666e\u901a\u306b\u52d5\u304d\u307e\u3057\u305f :)\n\u3068\u3044\u3063\u3066\u3082\u3084\u306f\u308aRAM512MB\u306e\u3088\u3046\u306a\u30de\u30b7\u30f3\u3067\u306f\u8f9b\u3044\u3067\u3059\u306d\uff0eRAM2GB\u306e\u30de\u30b7\u30f3\u3060\u3068\u4eca\u306e\u3068\u3053\u308d\u3044\u3044\u611f\u3058\u305d\u3046\u3067\u3059\uff0eMidori\u3084qutebrowser\u3067\u3046\u307e\u304f\u8868\u793a\u3067\u304d\u306a\u3044Mastodon\u3084gmail/Google+\u306a\u3069\u3082\u554f\u984c\u306a\u304f\u8868\u793a\u3067\u304d\u307e\u3059\u3057\uff0cChrome\u306e\u62e1\u5f35\u6a5f\u80fd\u3082\u4f7f\u3048\u307e\u3059\uff0e\nLinux ARM\u7248Vivaldi\u306e\u5165\u624b\u3068\u78ba\u8a8d\ndeb pkg\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\n\n$ wget https://downloads.vivaldi.com/stable/vivaldi-stable_1.13.1008.34-1_armhf.deb\r\n\n\nhash\nhash\u3068\u304b\u898b\u5f53\u305f\u3089\u306a\u3044\u3051\u3069\u624b\u5143\u3067\u306f\u3053\u3093\u306a\u611f\u3058\u3060\u3063\u305f\n\n$ md5sum vivaldi-stable_1.13.1008.34-1_armhf.deb \r\n7515f51385a9a264ad5bb7612438aeda vivaldi-stable_1.13.1008.34-1_armhf.deb\r\n$ sha1sum vivaldi-stable_1.13.1008.34-1_armhf.deb \r\n6b103d205f6aa7a5f3b394ba8d32dc9ca87bf0cd vivaldi-stable_1.13.1008.34-1_armhf.deb\r\n$ sha256sum vivaldi-stable_1.13.1008.34-1_armhf.deb \r\ne7af5d021bf0c2968fcf0271e8f741552e34bcf2d032318eb8ea95356067297d vivaldi-stable_1.13.1008.34-1_armhf.deb\r\n$ sha512sum vivaldi-stable_1.13.1008.34-1_armhf.deb \r\nf47f2d26e8045af9ba680129feca765cf3f9dc7ea76930071e9688ef50aa78a482b40ba5747fb4470d30520177bda371ec79e5a210a93dcf2e49251425001c6d vivaldi-stable_1.13.1008.34-1_armhf.deb\r\n\n\n\u30d1\u30c3\u30b1\u30fc\u30b8\u60c5\u5831\u78ba\u8a8d\n\n$ dpkg-deb -I ./vivaldi-stable_1.13.1008.34-1_armhf.deb\r\n \u65b0\u5f62\u5f0f debian \u30d1\u30c3\u30b1\u30fc\u30b8\u3001\u30d0\u30fc\u30b8\u30e7\u30f3 2.0\u3002\r\n \u30b5\u30a4\u30ba 45154158 \u30d0\u30a4\u30c8: \u30b3\u30f3\u30c8\u30ed\u30fc\u30eb\u30a2\u30fc\u30ab\u30a4\u30d6 = 9840 \u30d0\u30a4\u30c8\u3002\r\n 1269 \u30d0\u30a4\u30c8\u3001 16 \u884c control \r\n 15872 \u30d0\u30a4\u30c8\u3001 442 \u884c * postinst #!/bin/sh\r\n 12544 \u30d0\u30a4\u30c8\u3001 324 \u884c * postrm #!/bin/sh\r\n 1220 \u30d0\u30a4\u30c8\u3001 42 \u884c * prerm #!/bin/sh\r\n Package: vivaldi-stable\r\n Version: 1.13.1008.34-1\r\n Architecture: armhf\r\n Maintainer: Vivaldi Package Composer <packager@vivaldi.com>\r\n Installed-Size: 131921\r\n Pre-Depends: dpkg (>= 1.14.0)\r\n Depends: gconf-service, libasound2 (>= 1.0.16), libatk1.0-0 (>= 1.12.4), libc6 (>= 2.16), libcairo2 (>= 1.6.0), libcups2 (>= 1.4.0), libdbus-1-3 (>= 1.2.14), libexpat1 (>= 2.0.1), libfontconfig1 (>= 2.8.0), libgcc1 (>= 1:4.4.0), libgconf-2-4 (>= 3.2.5), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.28.0), libgtk-3-0 (>= 3.9.10), libnspr4 (>= 2:4.9-2~), libpango-1.0-0 (>= 1.14.0), libpangocairo-1.0-0 (>= 1.14.0), libx11-6 (>= 2:1.4.99.1), libx11-xcb1, libxcb1 (>= 1.6), libxcomposite1 (>= 1:0.3-1), libxcursor1 (>> 1.1.2), libxdamage1 (>= 1:1.1), libxext6, libxfixes3, libxi6 (>= 2:1.2.99.4), libxrandr2 (>= 2:1.2.99.3), libxrender1, libxss1, libxtst6, ca-certificates, fonts-liberation, libnss3 (>= 3.26), xdg-utils (>= 1.0.2), wget\r\n Recommends: adobe-flashplugin, chromium-codecs-ffmpeg-extra\r\n Conflicts: vivaldi-beta, vivaldi-preview\r\n Replaces: vivaldi-beta, vivaldi-preview\r\n Provides: www-browser\r\n Section: web\r\n Priority: optional\r\n Homepage: https://vivaldi.com\r\n Description: A new browser for our friends\r\n Vivaldi browser is made with power users in mind by people who love the Web.\r\n\n\n\u5c0e\u5165\n\u3068\u308a\u3042\u3048\u305aDebian jessie armhf/Ubuntu 16.04 LTS aarch64\u3067\u52d5\u3044\u3066\u3044\u308b\uff0e\nDebian/Ubuntu\u7b49\n\n$ sudo dpkg -i ./vivaldi-stable_1.13.1008.34-1_armhf.deb\r\n\n\n\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u4f9d\u5b58\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u8db3\u308a\u306a\u3044\u5834\u5408\u306f\uff0c\n\ndpkg: \u4f9d\u5b58\u95a2\u4fc2\u306e\u554f\u984c\u306b\u3088\u308a vivaldi-stable:armhf \u306e\u8a2d\u5b9a\u304c\u3067\u304d\u307e\u305b\u3093:\r\n vivaldi-stable:armhf \u306f\u4ee5\u4e0b\u306b\u4f9d\u5b58 (depends) \u3057\u307e\u3059: libnss3 (>= 3.26)...\u3057\u304b\u3057:\r\n \u30d1\u30c3\u30b1\u30fc\u30b8 libnss3:armhf \u306f\u307e\u3060\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002\r\n\r\ndpkg: \u30d1\u30c3\u30b1\u30fc\u30b8 vivaldi-stable:armhf \u306e\u51e6\u7406\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f (--install):\r\n \u4f9d\u5b58\u95a2\u4fc2\u306e\u554f\u984c - \u8a2d\u5b9a\u3092\u898b\u9001\u308a\u307e\u3059\r\n\n\n\u3053\u3093\u306a\u611f\u3058\u3067\u8db3\u308a\u306a\u3044pkg\u304c\u5165\u308b\u306f\u305a\uff0e\u305d\u306e\u5f8c\u898b\u9001\u3089\u308c\u3066\u3044\u305fvivaldi-stable\u306e\u8a2d\u5b9a\u306e\u7d9a\u304d\u3082\u5b9f\u884c\u3055\u308c\u308b\uff0e\n\n$ sudo apt install -f\r\n\n\n64bit ARM\u74b0\u5883\n\naarch64\u3067\u3082\u8a66\u3057\u305f\uff0e\n\u65e2\u306badd archtecture armhf\u3057\u3066\u8272\u3005\u5165\u308c\u3066\u3044\u305f\u74b0\u5883\u306b\u5165\u308c\u3066\u30af\u30ea\u30fc\u30f3\u306a\u74b0\u5883\u3067\u691c\u8a3c\u3057\u3066\u3044\u306a\u3044\u3051\u3069\u591a\u5206\u3053\u3093\u306a\u611f\u3058\uff0e\n\n$ sudo dpkg --add-architecture armhf\r\n$ sudo apt update\r\n$ sudo dpkg -i ./vivaldi-stable_1.13.1008.34-1_armhf.deb\r\n$ sudo apt install -f\r\n\n\n—-\u8ffd\u8a18—-\n\u30af\u30ea\u30fc\u30f3\u306aDragonBoard 410c\u306bDebian stretch aarch64(lonaro)\u3092\u5165\u308c\u305f\u74b0\u5883\u3067\u3082\u78ba\u8a8d\u3057\u305f\u304c\u3053\u306e\u624b\u9806\u3067ok\u3060\u3063\u305f :)\n—-\u8ffd\u8a18\u7d42\u308f\u308a—-\n.deb\u304c\u4f7f\u3048\u306a\u3044\u74b0\u5883\ndeb\u4ee5\u5916\u306e\u74b0\u5883\u3067\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u9069\u5f53\u306a\u5834\u6240\u306b\u5c55\u958b\u3057\u3066\u52d5\u304b\u305b\u305f\uff0e\n\n$ mkdir -p ~/opt/vivaldi\r\n$ ar p vivaldi-stable_1.13.1008.34-1_armhf.deb data.tar.xz | tar xJ -C ~/opt/vivaldi\r\n$ rm vivaldi-stable_1.13.1008.34-1_armhf.deb\r\n$ ~/opt/vivaldi/opt/vivaldi/vivaldi\r\n\n\nSlackware\u3060\u3068\u4ee5\u4e0b\u306esctipt\u304c\u4f7f\u3048\u305d\u3046(\u672a\u78ba\u8a8d)\n\nThis script will find the latest Vivaldi binary package, download it and repackage it into Slackware format.\n\n\u554f\u984c\nsandbox\n\u3082\u3057\uff0c\u3053\u3093\u306a\u30a8\u30e9\u30fc\u304c\u51fa\u305f\u3089\n\n$ ~/opt/vivaldi/opt/vivaldi/vivaldi\r\n[13021:13021:1205/215600.516642:FATAL:setuid_sandbox_host.cc(157)] The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I'm aborting now. You need to make sure that /home/matoken/opt/vivaldi/opt/vivaldi/vivaldi-sandbox is owned by root and has mode 4755.\r\nAborted[This script will find the latest Vivaldi binary package, download it and repackage it into Slackware format.](https://gist.github.com/ruario/dcbba70da900dac68fcc883542ff7ace "This script will find the latest Vivaldi binary package, download it and repackage it into Slackware format.")\r\n\n\n\u3053\u3093\u306a\u611f\u3058\u3067\u30aa\u30fc\u30ca\u30fc\u3068\u30d1\u30fc\u30df\u30c3\u30b7\u30e7\u30f3\u3092\u8a2d\u5b9a\u3057\u305f\u3089ok.\n\n$ chmod 4755 ~/opt/vivaldi/opt/vivaldi/vivaldi-sandbox\r\n$ sudo chown root.root ~/opt/vivaldi/opt/vivaldi/vivaldi-sandbox\r\n\n\n\u82e5\u3057\u304f\u306f --no-sandbox option\n\n$ ~/opt/vivaldi/opt/vivaldi/vivaldi --no-sandbox\r\n\n\n\u65e5\u672c\u8a9e\u8c46\u8150\u554f\u984c\n\ufffc\ufffc\ufffc\n\u3068\u308a\u3042\u3048\u305a\u9069\u5f53\u306a\u65e5\u672c\u8a9e\u30d5\u30a9\u30f3\u30c8(\u4eca\u56de\u306fVL\u30b4\u30b7\u30c3\u30af)\u3092\u5165\u308c\u3066\uff0cVivaldi\u3092\u518d\u8d77\u52d5\u3067\u76f4\u3063\u305f\uff0e(Dejavu\u304c\u5165\u3063\u3066\u3044\u305f\u306e\u3067\u6307\u5b9a\u3057\u3066\u307f\u305f\u3051\u3069\u76f4\u3089\u306a\u304b\u3063\u305f)\n\n$ sudo apt install fonts-vlgothic\r\n\n\n\u95a2\u9023\n\nARM\u7248Vivaldi\u3068\u308a\u3042\u3048\u305aRaspberry Pi\u3067\u306f\u306a\u3044ARM\u306eDebian\u3067\u52d5\u304b\u3057\u3066\u307f\u305f \u8c46\u8150\u306f\u591a\u5206\u8a2d\u5b9a\u3067\u76f4\u308b\u3093\u3060\u308d\u3046\u3051\u3069\u3069\u3053\u3084\u2026\u2026\n\u3053\u3053\u306b\u3042\u3063\u305f \u3057\u304b\u3057\u3053\u306e\u677f\u306b\u306f\u307e\u3068\u3082\u306a\u30d5\u30a9\u30f3\u30c8\u5165\u3063\u3066\u306a\u304b\u3063\u305f\nDejavu\u304c\u5165\u3063\u3066\u305f\u306e\u3067\u305d\u308c\u6307\u5b9a\u3057\u3066\u307f\u305f\u3089\u5909\u308f\u3089\u305a\naarch64\u3067\u3082\u52d5\u304b\u305d\u3046\u3068\u3057\u3066\u305f\u3093\u3060\u3051\u3069disk full\u3067\u8ae6\u3081\u305f", "date_published": "2017-12-07T06:32:30+09:00", "date_modified": "2017-12-23T17:02:36+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "arm64", "armhf", "Linux", "Web browser", "Debian", "Dragonboard 410c", "jessie", "Rasbian_jessie", "Raspberry Pi", "Ubuntu", "xenial(16.04)" ] }, { "id": "http://matoken.org/blog/?p=1694", "url": "https://matoken.org/blog/2017/10/25/raspbian-jessie-ntp-setting/", "title": "Raspbian jessie\u306entp\u8a2d\u5b9a", "content_html": "

Raspbian\u306bntpd\u3084chrony\u3084ntpdate\u3068\u304b\u5c45\u306a\u3044\u3051\u3069\u4f55\u304c\u9762\u5012\u898b\u3066\u308b\u3093\u3060\u308d\u3046\u3066\u3053\u3068\u3067\u78ba\u8a8d\uff0e
\nsystemd\u304c\u9762\u5012\u898b\u3066\u3066timeatectl\u30b3\u30de\u30f3\u30c9\u3067\u78ba\u8a8d\u8a2d\u5b9a\u304c\u3067\u304d\u308b\u3089\u3057\u3044\uff0e

\n
$ dpkg -l|egrep -i "ntp|chrony"\r\n$ systemctl -a | grep -i ntp\r\n
\n

\u4eca\u306e\u72b6\u614b\u3092\u78ba\u8a8d

\n
$ timedatectl status\r\n      Local time: Wed 2017-10-25 02:01:14 JST\r\n  Universal time: Tue 2017-10-24 17:01:14 UTC\r\n        RTC time: n/a\r\n       Time zone: Asia/Tokyo (JST, +0900)\r\n Network time on: yes\r\nNTP synchronized: yes\r\n RTC in local TZ: no\r\n
\n

NTP\u540c\u671f\u3092\u7121\u52b9\u306b\u3057\u3066\u307f\u308b

\n
$ sudo timedatectl set-ntp false\r\n
\n

\u7121\u52b9\u306b\u306a\u3063\u305f( Network time on: no )
\n\u518d\u8d77\u52d5\u3059\u308b\u3068 NTP synchronized \u3082 no \u306b\u3082\u306a\u308b\uff0e

\n
$ timedatectl status\r\n      Local time: Wed 2017-10-25 02:01:39 JST\r\n  Universal time: Tue 2017-10-24 17:01:39 UTC\r\n        RTC time: n/a\r\n       Time zone: Asia/Tokyo (JST, +0900)\r\n Network time on: no\r\nNTP synchronized: yes\r\n RTC in local TZ: no\r\n
\n

\u304a\u307e\u3051

\n

\u30bf\u30a4\u30e0\u30be\u30fc\u30f3\u306e\u78ba\u8a8d

\n
$ timedatectl list-timezones | grep -i tokyo\r\nAsia/Tokyo\r\n
\n

\u30bf\u30a4\u30e0\u30be\u30fc\u30f3\u306e\u8a2d\u5b9a

\n
$ sudo timedatectl set-timezone\r\n
\n

\u4efb\u610f\u306entp server\u306e\u6307\u5b9a

\n

dhcpd\u304b\u3089\u6e21\u3063\u3066\u304d\u305f\u3082\u306e\uff0e

\n

hdcpd\u306b\u7121\u3044\u5834\u5408 /etc/systemd/timesyncd.conf
\n\u306e NTP \u3068 FallbackNTP

\n

\u74b0\u5883

\n

Raspbian stretch lite 2017-09-07(\u672aupdate)

\n
$ lsb_release -a\r\nNo LSB modules are available.\r\nDistributor ID: Raspbian\r\nDescription:    Raspbian GNU/Linux 9.1 (stretch)\r\nRelease:        9.1\r\nCodename:       stretch\r\n$ uname -a\r\nLinux raspberrypi 4.9.41+ #1023 Tue Aug 8 15:47:12 BST 2017 armv6l GNU/Linux\r\n
\n

\n", "content_text": "Raspbian\u306bntpd\u3084chrony\u3084ntpdate\u3068\u304b\u5c45\u306a\u3044\u3051\u3069\u4f55\u304c\u9762\u5012\u898b\u3066\u308b\u3093\u3060\u308d\u3046\u3066\u3053\u3068\u3067\u78ba\u8a8d\uff0e\nsystemd\u304c\u9762\u5012\u898b\u3066\u3066timeatectl\u30b3\u30de\u30f3\u30c9\u3067\u78ba\u8a8d\u8a2d\u5b9a\u304c\u3067\u304d\u308b\u3089\u3057\u3044\uff0e\n$ dpkg -l|egrep -i "ntp|chrony"\r\n$ systemctl -a | grep -i ntp\r\n\n\u4eca\u306e\u72b6\u614b\u3092\u78ba\u8a8d\n$ timedatectl status\r\n Local time: Wed 2017-10-25 02:01:14 JST\r\n Universal time: Tue 2017-10-24 17:01:14 UTC\r\n RTC time: n/a\r\n Time zone: Asia/Tokyo (JST, +0900)\r\n Network time on: yes\r\nNTP synchronized: yes\r\n RTC in local TZ: no\r\n\nNTP\u540c\u671f\u3092\u7121\u52b9\u306b\u3057\u3066\u307f\u308b\n$ sudo timedatectl set-ntp false\r\n\n\u7121\u52b9\u306b\u306a\u3063\u305f( Network time on: no )\n\u518d\u8d77\u52d5\u3059\u308b\u3068 NTP synchronized \u3082 no \u306b\u3082\u306a\u308b\uff0e\n$ timedatectl status\r\n Local time: Wed 2017-10-25 02:01:39 JST\r\n Universal time: Tue 2017-10-24 17:01:39 UTC\r\n RTC time: n/a\r\n Time zone: Asia/Tokyo (JST, +0900)\r\n Network time on: no\r\nNTP synchronized: yes\r\n RTC in local TZ: no\r\n\n\u304a\u307e\u3051\n\u30bf\u30a4\u30e0\u30be\u30fc\u30f3\u306e\u78ba\u8a8d\n$ timedatectl list-timezones | grep -i tokyo\r\nAsia/Tokyo\r\n\n\u30bf\u30a4\u30e0\u30be\u30fc\u30f3\u306e\u8a2d\u5b9a\n$ sudo timedatectl set-timezone\r\n\n\u4efb\u610f\u306entp server\u306e\u6307\u5b9a\ndhcpd\u304b\u3089\u6e21\u3063\u3066\u304d\u305f\u3082\u306e\uff0e\nhdcpd\u306b\u7121\u3044\u5834\u5408 /etc/systemd/timesyncd.conf\n\u306e NTP \u3068 FallbackNTP\n\u74b0\u5883\nRaspbian stretch lite 2017-09-07(\u672aupdate)\n$ lsb_release -a\r\nNo LSB modules are available.\r\nDistributor ID: Raspbian\r\nDescription: Raspbian GNU/Linux 9.1 (stretch)\r\nRelease: 9.1\r\nCodename: stretch\r\n$ uname -a\r\nLinux raspberrypi 4.9.41+ #1023 Tue Aug 8 15:47:12 BST 2017 armv6l GNU/Linux", "date_published": "2017-10-25T02:47:45+09:00", "date_modified": "2017-10-25T03:58:43+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "ntp", "RaspberryPi", "Raspbian", "Rasbian_jessie", "Raspberry Pi" ] }, { "id": "http://matoken.org/blog/?p=1593", "url": "https://matoken.org/blog/2017/04/06/spoof-proc-cpuinfo-serial/", "title": "/proc/cpuinfo\u306eSerial\u3092\u8a50\u79f0\u3059\u308b", "content_html": "
\n
$ cat /proc/cpuinfo | sed -e 's/Serial.*/Serial\\t\\t: 00000000deadbeef/' > /tmp/cpuinfo_fake\r\n$ sudo chmod 444 /tmp/cpuinfo\r\n$ sudo chown root.root /tmp/cpuinfo\r\n$ sudo mount -o bind /tmp/cpuinfo_fake /proc/cpuinfo\r\n$ tail /proc/cpuinfo\r\nFeatures        : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm \r\nCPU implementer : 0x41\r\nCPU architecture: 7\r\nCPU variant     : 0x0\r\nCPU part        : 0xc07\r\nCPU revision    : 5\r\n\r\nHardware        : BCM2835\r\nRevision        : a01041\r\nSerial          : 00000000deadbeef\r\n
\n
\n

\n", "content_text": "$ cat /proc/cpuinfo | sed -e 's/Serial.*/Serial\\t\\t: 00000000deadbeef/' > /tmp/cpuinfo_fake\r\n$ sudo chmod 444 /tmp/cpuinfo\r\n$ sudo chown root.root /tmp/cpuinfo\r\n$ sudo mount -o bind /tmp/cpuinfo_fake /proc/cpuinfo\r\n$ tail /proc/cpuinfo\r\nFeatures : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm \r\nCPU implementer : 0x41\r\nCPU architecture: 7\r\nCPU variant : 0x0\r\nCPU part : 0xc07\r\nCPU revision : 5\r\n\r\nHardware : BCM2835\r\nRevision : a01041\r\nSerial : 00000000deadbeef", "date_published": "2017-04-06T20:18:58+09:00", "date_modified": "2017-04-07T00:39:09+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "cpuinfo", "RaspberryPi", "Linux", "Rasbian_jessie", "Raspberry Pi", "\u672a\u5206\u985e" ] }, { "id": "http://matoken.org/blog/?p=1571", "url": "https://matoken.org/blog/2017/03/28/try-dropbear-sshd-with-mosh-1-3-0/", "title": "mosh 1.3.0\u3092Dropbear sshd\u3067\u5229\u7528\u3057\u3066\u307f\u308b", "content_html": "

mosh\u306e1.3.0\u304c\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u307e\u3057\u305f\uff0e

\n\n

mosh\u306fssh\u3092\u7f6e\u304d\u63db\u3048\u3088\u3046\u3068\u3057\u3066\u3044\u308b\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u3067\uff0c\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u304c\u9045\u3044\u3068\u304d\u306b\u30ed\u30fc\u30ab\u30eb\u30a8\u30b3\u30fc\u3092\u8868\u793a\u3057\u305f\u308a\uff0c\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u304c\u5207\u308a\u66ff\u308f\u3063\u3066\u3082\u30ed\u30fc\u30df\u30f3\u30b0\u3057\u305f\u308a\u3068\u4fbf\u5229\u306a\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u3067\u3059\uff0e(NotePC\u3067\u63a5\u7d9a\u3057\u3066\u30b5\u30b9\u30da\u30f3\u30c9\u3057\u3066\u5225\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3067\u30ec\u30b8\u30e5\u30fc\u30e0\u3057\u3066\u3082\u3059\u3050\u306b\u4f7f\u3063\u3066\u3044\u305f\u7aef\u672b\u306b\u30a2\u30af\u30bb\u30b9\u3067\u304d\u308b)

\n

1.3.0\u3067\u306a\u306b\u304b\u304a\u3082\u3057\u308d\u3044\u6a5f\u80fd\u304c\u5897\u3048\u305f\u308a\u3057\u3066\u3044\u306a\u3044\u304b\u306a\u3068\u773a\u3081\u3066\u3044\u308b\u3068

\n
\n
  * Add --no-ssh-pty option for Dropbear compatibility and other issues.\r\n
\n
\n

Dropbear\u3067\u4f7f\u3048\u308b\u3088\u3046\u306b\u306a\u308b\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u5897\u3048\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0e
\nDropbear\u306fOpenSSH\u306b\u6bd4\u3079\u3066\u5927\u5206\u5c0f\u3055\u306asshd\u3067\u3059\uff0e\u7d44\u307f\u8fbc\u307f\u3068\u304b\u3067\u4f7f\u308f\u308c\u3066\u3044\u308b\u306e\u3092\u898b\u307e\u3059\uff0e\u3067\u3082\u6a5f\u80fd\u304c\u7269\u8db3\u308a\u306a\u3044\u306a\u3068\u601d\u3046\u3053\u3068\u3082\uff0e

\n\n

mosh + Dropbear\u306e\u7d44\u307f\u5408\u308f\u305b\u3092\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n

\u8a66\u3057\u305f\u306e\u306f\u3053\u3093\u306a\u611f\u3058\u306e\u74b0\u5883\u3067\u3059\uff0e

\n

Host : Raspbian jessie(Raspberry Pi 2B)
\nClient : Debian sid amd64

\n

dropbear\u306e\u6e96\u5099

\n

Host\u306bDropbear\u3092\u30d1\u30c3\u30b1\u30fc\u30b8\u3067\u5c0e\u5165\u3057\u307e\u3059

\n
\n
$ sudo apt install dropbear\r\n
\n
\n

dropbear\u306ehost\u9375\u3092\u7528\u610f

\n
\n
$ mkdir /tmp/dropbear\r\n$ dropbearkey -t ecdsa -s 521 -f /tmp/dropbear/dropbear_ecdsa_host_key\r\n
\n
\n\n

\u63a5\u7d9a\u6642\u306b\u89e3\u308a\u3084\u3059\u3044\u3088\u3046\u306b\u30d0\u30ca\u30fc\u30d5\u30a1\u30a4\u30eb\u4f5c\u6210

\n
\n
$ banner dropbear > /tmp/dropbear/banner\r\n
\n
\n

Dropbear\u30922222\u756a\u30dd\u30fc\u30c8\u3067\u8d77\u52d5

\n
\n
$ dropbear -r /tmp/dropbear/dropbear_ecdsa_host_key -p 2222 -b /tmp/dropbear/banner -E\r\n
\n
\n\n

Dropbear\u306bssh\u63a5\u7d9a\u3067\u304d\u308b\u304b\u78ba\u8a8d

\n
\n
$ ssh pi@192.168.2.200 -i ~/.ssh/id_ecdsa -p 2222\r\nHost key fingerprint is SHA256:G3u9pP4ZrkZ2kWs9e+ly9MkEtnO0f4ebvkBS0ObGJQQ\r\n+---[ECDSA 521]---+\r\n|          E+.    |\r\n|           .+ .  |\r\n|           +.+   |\r\n|           .*o . |\r\n|        S ..o++ .|\r\n|         +o++oo= |\r\n|        oo.o= *+=|\r\n|         ..+ *o**|\r\n|         o+o=.O=o|\r\n+----[SHA256]-----+\r\n\r\n #####   #####    ####   #####   #####   ######    ##    #####\r\n #    #  #    #  #    #  #    #  #    #  #        #  #   #    #\r\n #    #  #    #  #    #  #    #  #####   #####   #    #  #    #\r\n #    #  #####   #    #  #####   #    #  #       ######  #####\r\n #    #  #   #   #    #  #       #    #  #       #    #  #   #\r\n #####   #    #   ####   #       #####   ######  #    #  #    #\r\n\r\nAuthenticated to 192.168.2.200 ([192.168.2.200]:2222).\r\n\r\nThe programs included with the Debian GNU/Linux system are free software;\r\nthe exact distribution terms for each program are described in the\r\nindividual files in /usr/share/doc/*/copyright.\r\n\r\nDebian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent\r\npermitted by applicable law.\r\npi@raspberrypi:~ $ \r\n
\n
\n

mosh 1.3.0\u306e\u6e96\u5099

\n

server\u5074\u306fsource\u304b\u3089build

\n
\n
$ sudo apt-get build-dep mosh\r\n$ wget https://mosh.org/mosh-1.3.0.tar.gz\r\n$ sha256sum mosh-1.3.0.tar.gz\r\n320e12f461e55d71566597976bd9440ba6c5265fa68fbf614c6f1c8401f93376  mosh-1.3.0.tar.gz\r\n
\n
\n

\u203bhash\u3068gpg\u7f72\u540d\u306f\u4ee5\u4e0b\u306e\u30e1\u30fc\u30eb\u306b\uff0c\u9375\u306f https://mosh.org/ \u306e\u4e00\u756a\u4e0b\u306b\u3042\u308b\uff0e

\n\n

source\u3092\u5c55\u958b\u3057\u3066build

\n
\n
$ tar tvf mosh-1.3.0.tar.gz\r\n$ tar xf mosh-1.3.0.tar.gz\r\n$ ./configure --prefix=${HOME}/usr/local\r\n$ make\r\n$ install\r\n
\n
\n

host\u5074\u306fDebian sid amd64\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u5229\u7528\u3057\u305f

\n
\n
$ sudo apt install mosh\r\n$ dpkg-query -W mosh\r\nmosh    1.3.0-1\r\n
\n
\n

\u3068\u3044\u3046\u3053\u3068\u3067\u30db\u30b9\u30c8\u5074\u306f\u3053\u3093\u306a\u72b6\u614b\u306b

\n\n

\u3053\u306e\u72b6\u614b\u3067Dropbear\u3068mosh 1.3.0\u3092\u5229\u7528\u3059\u308b\u306b\u306f\u3053\u3093\u306a\u611f\u3058

\n
\n
$ mosh pi@192.168.2.200 --ssh="ssh -p 2222" --server='${HOME}'/usr/local/bin/mosh-server\r\n
\n
\n

\u3067\u3082\u5b9f\u969b\u306b\u7e4b\u3054\u3046\u3068\u3059\u308b\u3068\u30a8\u30e9\u30fc\u306b\u306a\u3063\u3066\u3057\u307e\u3046\uff0e

\n

\u63a5\u7d9a\u5143\u306emosh\u3067\u306f\u3053\u3093\u306a\u30a8\u30e9\u30fc

\n
\n
/usr/bin/mosh: Did not find mosh server startup message. (Have you installed mosh on your server?)\r\n
\n
\n

\u63a5\u7d9a\u5148\u306eDropbear\u3067\u306f\u3053\u3093\u306a\u30a8\u30e9\u30fc

\n
\n
[20390] Mar 28 06:37:20 Child connection from 192.168.2.205:32888\r\n[20390] Mar 28 06:37:21 Pubkey auth attempt with unknown algo for 'pi' from 192.168.2.205:32888\r\n[20390] Mar 28 06:37:21 Pubkey auth succeeded for 'pi' with key md5 0b:fb:21:45:d6:a0:7d:57:02:24:9b:d3:ed:c7:c6:23 from 192.168.2.205:32888\r\n[20391] Mar 28 06:37:21 ioctl(TIOCSCTTY): Input/output error\r\n[20391] Mar 28 06:37:21 /dev/pts/1: No such file or directory\r\n[20391] Mar 28 06:37:21 open /dev/tty failed - could not set controlling tty: No such device or address\r\n[20390] Mar 28 06:37:21 Exit (pi): Disconnect received\r\n
\n
\n

\u3068\u3044\u3046\u3053\u3068\u3067\uff0cmosh 1.3.0\u3067\u5165\u3063\u305f--no-ssh-pty\u3092\u4ed8\u3051\u3066\u307f\u307e\u3059\uff0e

\n
\n
$ mosh pi@192.168.2.200 --ssh="ssh -p 2222" --server='${HOME}'/usr/local/bin/mosh-server --no-ssh-pty\r\n
\n
\n

\"asciicast\"

\n

\u3046\u307e\u304f\u7e4b\u304c\u308a\u307e\u3057\u305f\uff0e
\n\u8a66\u3057\u306b\u56de\u7dda\u3092\u5207\u65ad\u3057\u3066\u518d\u63a5\u7d9a\u3059\u308b\u3068\u81ea\u52d5\u7684\u306b\u7e4b\u304c\u308b\u306e\u3082\u78ba\u8a8d \"\u263a\"

\n

--no-ssh-pty\u3092~/.ssh/config\u3068\u304b\u306b\u66f8\u3044\u3068\u3051\u308b\u3068\u3044\u3044\u3093\u3067\u3059\u3051\u3069\u306d\uff0e\u4eca\u306e\u3068\u3053\u308d\u6bce\u56de\u6307\u5b9a\u3059\u308b\u3057\u304b\u306a\u3055\u305d\u3046?

\n

\n", "content_text": "mosh\u306e1.3.0\u304c\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u307e\u3057\u305f\uff0e\n\nMosh: the mobile shell\n[mosh-users] mosh 1.3.0 released (corrected announcement)\n\nmosh\u306fssh\u3092\u7f6e\u304d\u63db\u3048\u3088\u3046\u3068\u3057\u3066\u3044\u308b\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u3067\uff0c\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u304c\u9045\u3044\u3068\u304d\u306b\u30ed\u30fc\u30ab\u30eb\u30a8\u30b3\u30fc\u3092\u8868\u793a\u3057\u305f\u308a\uff0c\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u304c\u5207\u308a\u66ff\u308f\u3063\u3066\u3082\u30ed\u30fc\u30df\u30f3\u30b0\u3057\u305f\u308a\u3068\u4fbf\u5229\u306a\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u3067\u3059\uff0e(NotePC\u3067\u63a5\u7d9a\u3057\u3066\u30b5\u30b9\u30da\u30f3\u30c9\u3057\u3066\u5225\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3067\u30ec\u30b8\u30e5\u30fc\u30e0\u3057\u3066\u3082\u3059\u3050\u306b\u4f7f\u3063\u3066\u3044\u305f\u7aef\u672b\u306b\u30a2\u30af\u30bb\u30b9\u3067\u304d\u308b)\n1.3.0\u3067\u306a\u306b\u304b\u304a\u3082\u3057\u308d\u3044\u6a5f\u80fd\u304c\u5897\u3048\u305f\u308a\u3057\u3066\u3044\u306a\u3044\u304b\u306a\u3068\u773a\u3081\u3066\u3044\u308b\u3068\n\n * Add --no-ssh-pty option for Dropbear compatibility and other issues.\r\n\n\nDropbear\u3067\u4f7f\u3048\u308b\u3088\u3046\u306b\u306a\u308b\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u5897\u3048\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0e\nDropbear\u306fOpenSSH\u306b\u6bd4\u3079\u3066\u5927\u5206\u5c0f\u3055\u306asshd\u3067\u3059\uff0e\u7d44\u307f\u8fbc\u307f\u3068\u304b\u3067\u4f7f\u308f\u308c\u3066\u3044\u308b\u306e\u3092\u898b\u307e\u3059\uff0e\u3067\u3082\u6a5f\u80fd\u304c\u7269\u8db3\u308a\u306a\u3044\u306a\u3068\u601d\u3046\u3053\u3068\u3082\uff0e\n\nDropbear SSH\n\nmosh + Dropbear\u306e\u7d44\u307f\u5408\u308f\u305b\u3092\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\u8a66\u3057\u305f\u306e\u306f\u3053\u3093\u306a\u611f\u3058\u306e\u74b0\u5883\u3067\u3059\uff0e\nHost : Raspbian jessie(Raspberry Pi 2B)\nClient : Debian sid amd64\ndropbear\u306e\u6e96\u5099\nHost\u306bDropbear\u3092\u30d1\u30c3\u30b1\u30fc\u30b8\u3067\u5c0e\u5165\u3057\u307e\u3059\n\n$ sudo apt install dropbear\r\n\n\ndropbear\u306ehost\u9375\u3092\u7528\u610f\n\n$ mkdir /tmp/dropbear\r\n$ dropbearkey -t ecdsa -s 521 -f /tmp/dropbear/dropbear_ecdsa_host_key\r\n\n\n\n-t \u9375\u7a2e\u985e\n-s \u9375\u9577\n-f \u9375\u30d5\u30a1\u30a4\u30eb\n\n\u63a5\u7d9a\u6642\u306b\u89e3\u308a\u3084\u3059\u3044\u3088\u3046\u306b\u30d0\u30ca\u30fc\u30d5\u30a1\u30a4\u30eb\u4f5c\u6210\n\n$ banner dropbear > /tmp/dropbear/banner\r\n\n\nDropbear\u30922222\u756a\u30dd\u30fc\u30c8\u3067\u8d77\u52d5\n\n$ dropbear -r /tmp/dropbear/dropbear_ecdsa_host_key -p 2222 -b /tmp/dropbear/banner -E\r\n\n\n\n-r host\u9375\u3092\u6307\u5b9a\n-p ssh\u30dd\u30fc\u30c8\u756a\u53f7\n-b \u30d0\u30ca\u30fc\u30d5\u30a1\u30a4\u30eb\n-E \u6a19\u6e96\u30a8\u30e9\u30fc\u51fa\u529b\u306b\u30e1\u30c3\u30bb\u30fc\u30b8\u51fa\u529b\n\nDropbear\u306bssh\u63a5\u7d9a\u3067\u304d\u308b\u304b\u78ba\u8a8d\n\n$ ssh pi@192.168.2.200 -i ~/.ssh/id_ecdsa -p 2222\r\nHost key fingerprint is SHA256:G3u9pP4ZrkZ2kWs9e+ly9MkEtnO0f4ebvkBS0ObGJQQ\r\n+---[ECDSA 521]---+\r\n| E+. |\r\n| .+ . |\r\n| +.+ |\r\n| .*o . |\r\n| S ..o++ .|\r\n| +o++oo= |\r\n| oo.o= *+=|\r\n| ..+ *o**|\r\n| o+o=.O=o|\r\n+----[SHA256]-----+\r\n\r\n ##### ##### #### ##### ##### ###### ## #####\r\n # # # # # # # # # # # # # # #\r\n # # # # # # # # ##### ##### # # # #\r\n # # ##### # # ##### # # # ###### #####\r\n # # # # # # # # # # # # # #\r\n ##### # # #### # ##### ###### # # # #\r\n\r\nAuthenticated to 192.168.2.200 ([192.168.2.200]:2222).\r\n\r\nThe programs included with the Debian GNU/Linux system are free software;\r\nthe exact distribution terms for each program are described in the\r\nindividual files in /usr/share/doc/*/copyright.\r\n\r\nDebian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent\r\npermitted by applicable law.\r\npi@raspberrypi:~ $ \r\n\n\nmosh 1.3.0\u306e\u6e96\u5099\nserver\u5074\u306fsource\u304b\u3089build\n\n$ sudo apt-get build-dep mosh\r\n$ wget https://mosh.org/mosh-1.3.0.tar.gz\r\n$ sha256sum mosh-1.3.0.tar.gz\r\n320e12f461e55d71566597976bd9440ba6c5265fa68fbf614c6f1c8401f93376 mosh-1.3.0.tar.gz\r\n\n\n\u203bhash\u3068gpg\u7f72\u540d\u306f\u4ee5\u4e0b\u306e\u30e1\u30fc\u30eb\u306b\uff0c\u9375\u306f https://mosh.org/ \u306e\u4e00\u756a\u4e0b\u306b\u3042\u308b\uff0e\n\n[mosh-users] mosh 1.3.0 released (corrected announcement)\n\nsource\u3092\u5c55\u958b\u3057\u3066build\n\n$ tar tvf mosh-1.3.0.tar.gz\r\n$ tar xf mosh-1.3.0.tar.gz\r\n$ ./configure --prefix=${HOME}/usr/local\r\n$ make\r\n$ install\r\n\n\nhost\u5074\u306fDebian sid amd64\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u5229\u7528\u3057\u305f\n\n$ sudo apt install mosh\r\n$ dpkg-query -W mosh\r\nmosh 1.3.0-1\r\n\n\n\u3068\u3044\u3046\u3053\u3068\u3067\u30db\u30b9\u30c8\u5074\u306f\u3053\u3093\u306a\u72b6\u614b\u306b\n\nOpenSSH : 22\u756a\u30dd\u30fc\u30c8\nDropbear : 2222\u756a\u30dd\u30fc\u30c8\nmosh 1.2.4a-1+b2(pkg) : /usr/bin/mosh-server\nmosh 1.3.0 : ${HOME}/usr/local/bin/mosh-server\n\n\u3053\u306e\u72b6\u614b\u3067Dropbear\u3068mosh 1.3.0\u3092\u5229\u7528\u3059\u308b\u306b\u306f\u3053\u3093\u306a\u611f\u3058\n\n$ mosh pi@192.168.2.200 --ssh="ssh -p 2222" --server='${HOME}'/usr/local/bin/mosh-server\r\n\n\n\u3067\u3082\u5b9f\u969b\u306b\u7e4b\u3054\u3046\u3068\u3059\u308b\u3068\u30a8\u30e9\u30fc\u306b\u306a\u3063\u3066\u3057\u307e\u3046\uff0e\n\u63a5\u7d9a\u5143\u306emosh\u3067\u306f\u3053\u3093\u306a\u30a8\u30e9\u30fc\n\n/usr/bin/mosh: Did not find mosh server startup message. (Have you installed mosh on your server?)\r\n\n\n\u63a5\u7d9a\u5148\u306eDropbear\u3067\u306f\u3053\u3093\u306a\u30a8\u30e9\u30fc\n\n[20390] Mar 28 06:37:20 Child connection from 192.168.2.205:32888\r\n[20390] Mar 28 06:37:21 Pubkey auth attempt with unknown algo for 'pi' from 192.168.2.205:32888\r\n[20390] Mar 28 06:37:21 Pubkey auth succeeded for 'pi' with key md5 0b:fb:21:45:d6:a0:7d:57:02:24:9b:d3:ed:c7:c6:23 from 192.168.2.205:32888\r\n[20391] Mar 28 06:37:21 ioctl(TIOCSCTTY): Input/output error\r\n[20391] Mar 28 06:37:21 /dev/pts/1: No such file or directory\r\n[20391] Mar 28 06:37:21 open /dev/tty failed - could not set controlling tty: No such device or address\r\n[20390] Mar 28 06:37:21 Exit (pi): Disconnect received\r\n\n\n\u3068\u3044\u3046\u3053\u3068\u3067\uff0cmosh 1.3.0\u3067\u5165\u3063\u305f--no-ssh-pty\u3092\u4ed8\u3051\u3066\u307f\u307e\u3059\uff0e\n\n$ mosh pi@192.168.2.200 --ssh="ssh -p 2222" --server='${HOME}'/usr/local/bin/mosh-server --no-ssh-pty\r\n\n\n\n\u3046\u307e\u304f\u7e4b\u304c\u308a\u307e\u3057\u305f\uff0e\n\u8a66\u3057\u306b\u56de\u7dda\u3092\u5207\u65ad\u3057\u3066\u518d\u63a5\u7d9a\u3059\u308b\u3068\u81ea\u52d5\u7684\u306b\u7e4b\u304c\u308b\u306e\u3082\u78ba\u8a8d \n--no-ssh-pty\u3092~/.ssh/config\u3068\u304b\u306b\u66f8\u3044\u3068\u3051\u308b\u3068\u3044\u3044\u3093\u3067\u3059\u3051\u3069\u306d\uff0e\u4eca\u306e\u3068\u3053\u308d\u6bce\u56de\u6307\u5b9a\u3059\u308b\u3057\u304b\u306a\u3055\u305d\u3046?", "date_published": "2017-03-28T07:49:07+09:00", "date_modified": "2017-03-28T07:49:07+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Dropbear", "mosh", "sshd", "Debian", "Linux", "Rasbian_jessie", "sid" ] }, { "id": "http://matoken.org/blog/?p=1525", "url": "https://matoken.org/blog/2017/02/21/change-the-resolution-and-display-after-starting-with-composite-with-raspberry-pi/", "title": "Raspberry Pi\u3067\u30b3\u30f3\u30dd\u30b8\u30c3\u30c8\u3067\u8d77\u52d5\u3057\u305f\u5f8c\u306b\u89e3\u50cf\u5ea6\u3084\u30c7\u30a3\u30b9\u30d7\u30ec\u30a4\u3092\u5909\u66f4\u3059\u308b", "content_html": "

\"\"

\n

\u30b3\u30f3\u30dd\u30b8\u30c3\u30c8\u51fa\u529b\u306e\u89e3\u50cf\u5ea6\u5909\u66f4

\n

Raspberry Pi\u3092\u8d77\u52d5\u3059\u308b\u3068\u304d\u306bHDMI\u3092\u63a5\u7d9a\u3057\u305f\u72b6\u614b\u3067\u8d77\u52d5\u3059\u308b\u3068\u9ad8\u89e3\u50cf\u5ea6\u3067\u8d77\u52d5\u3057\u307e\u3059\u304c\uff0c\u7e4b\u3044\u3067\u3044\u306a\u3044\u3068\u30b3\u30f3\u30dd\u30b8\u30c3\u30c8\u51fa\u529b\u3067\u8d77\u52d5\u3057\u3066X\u306e\u89e3\u50cf\u5ea6\u304c720×480\u306b\u306a\u3063\u3066\u3061\u3087\u3063\u3068\u624b\u72ed\u3067\u3059\uff0e
\nxrandr\u3067\u89e3\u50cf\u5ea6\u3092\u8ffd\u52a0\u3059\u308b\u3068X\u306e\u518d\u8d77\u52d5\u3082\u305b\u305a\u306b\u9ad8\u89e3\u50cf\u5ea6\u306b\u51fa\u6765\u307e\u3059\uff0e

\n

\u203bxrandr\u30b3\u30de\u30f3\u30c9\u306f\u5bfe\u8c61\u306eX\u7aef\u672b\u4e0a\u304b\uff0cDISPLAY\u5909\u6570\u3092\u5bfe\u8c61\u306e\u3082\u306e\u3092\u6307\u5b9a\u3057\u3066\u5b9f\u884c\u3059\u308b\u3053\u3068

\n\n
\n
$ xrandr \r\nScreen 0: minimum 320 x 200, current 720 x 480, maximum 2048 x 2048\r\nHDMI-0 disconnected (normal left inverted right x axis y axis)\r\nComposite-0 unknown connection 720x480+0+0 (normal left inverted right x axis y axis) 0mm x 0mm\r\n   720x480       62.69* \r\nDSI-0 disconnected (normal left inverted right x axis y axis)\r\n
\n
\n\n
\n
$ cvt 1360 768\r\n# 1360x768 59.80 Hz (CVT) hsync: 47.72 kHz; pclk: 84.75 MHz\r\nModeline "1360x768_60.00"   84.75  1360 1432 1568 1776  768 771 781 798 -hsync +vsync\r\n
\n
\n\n
\n
$ xrandr --newmode "1360x768_60.00"   84.75  1360 1432 1568 1776  768 771 781 798 -hsync +vsync\r\n
\n
\n\n
\n
$ xrandr \r\nScreen 0: minimum 320 x 200, current 720 x 480, maximum 2048 x 2048\r\nHDMI-0 disconnected (normal left inverted right x axis y axis)\r\nComposite-0 unknown connection 720x480+0+0 (normal left inverted right x axis y axis) 0mm x 0mm\r\n   720x480       62.69* \r\nDSI-0 disconnected (normal left inverted right x axis y axis)\r\n  1360x768_60.00 (0x248) 84.750MHz\r\n        h: width  1360 start 1432 end 1568 total 1776 skew    0 clock  47.72KHz\r\n        v: height  768 start  771 end  781 total  798           clock  59.80Hz\r\n
\n
\n\n
\n
$ xrandr --addmode Composite-0 1368x768_60.00\r\n$ xrandr \r\nScreen 0: minimum 320 x 200, current 720 x 480, maximum 2048 x 2048\r\nHDMI-0 disconnected (normal left inverted right x axis y axis)\r\nComposite-0 unknown connection 720x480+0+0 (normal left inverted right x axis y axis) 0mm x 0mm\r\n   720x480       62.69* \r\n   1360x768_60.00  59.80  \r\nDSI-0 disconnected (normal left inverted right x axis y axis)\r\n
\n
\n\n
\n
$ xrandr --output Composite-0 --mode 1360x768_60.00\r\n
\n
\n

\u8d77\u52d5\u5f8c\u306bHDMI\u306b\u5207\u308a\u66ff\u3048\u308b

\n

\u89e3\u50cf\u5ea6\u306e\u5909\u66f4\u3067\u306f\u306a\u304f\u8d77\u52d5\u5f8c\u306bHDMI\u63a5\u7d9a\u306b\u5207\u308a\u66ff\u3048\u308b\u306e\u3082xrandr\u3067\u51fa\u6765\u307e\u3059\uff0e\u3053\u3061\u3089\u3082X\u306e\u518d\u8d77\u52d5\u306f\u5fc5\u8981\u3042\u308a\u307e\u305b\u3093\uff0e

\n\n
\n
$ xrandr \r\nScreen 0: minimum 320 x 200, current 1366 x 768, maximum 2048 x 2048\r\nHDMI-0 connected 1366x768+0+0 (normal left inverted right x axis y axis) 580mm x 360mm\r\n   1366x768      59.79*+\r\n   1920x1080     60.00    59.94  \r\n   1920x1080i    60.00    50.00    59.94  \r\n   1280x1024     60.02  \r\n   1152x864      75.00  \r\n   1280x720      60.00    58.68    50.00    59.94  \r\n   1024x768      75.03    70.07    60.00  \r\n   832x624       74.55  \r\n   800x600       72.19    75.00    60.32    56.25  \r\n   720x576       50.00  \r\n   720x576i      50.00  \r\n   720x480       60.00    59.94  \r\n   720x480i      60.00    59.94  \r\n   640x480       75.00    72.81    66.67    60.00    59.94  \r\n   720x400       70.08  \r\nComposite-0 unknown connection (normal left inverted right x axis y axis)\r\n   720x480       62.69  \r\n   1360x768_60.00  59.80  \r\nDSI-0 disconnected (normal left inverted right x axis y axis)\r\n
\n
\n\n
\n
$ xrandr --output Composite-0 --off --output HDMI-0 --auto\r\nxrandr: cannot find crtc for output HDMI-0\r\n
\n
\n\n
\n
$ DISPLAY=:0 xrandr --output Composite-0 --off\r\n$ DISPLAY=:0 xrandr --output HDMI-0 --auto\r\n
\n
\n\n
\n
$ xrandr --output HDMI-0 --off\r\n$ xrandr --output Composite-0 --mode 1360x768_60.00\r\n
\n
\n

\u74b0\u5883

\n\n
\n
$ screenfetch \r\n    .',;:cc;,'.    .,;::c:,,.    pi@raspberrypi\r\n   ,ooolcloooo:  'oooooccloo:    OS: Unknown 8.0 jessie\r\n   .looooc;;:ol  :oc;;:ooooo'    Kernel: armv7l Linux 4.9.11-v7+\r\n     ;oooooo:      ,ooooooc.     Uptime: 4h 28m\r\n       .,:;'.       .;:;'.       Packages: 1541\r\n       .... ..'''''. ....        Shell: 3362\r\n     .''.   ..'''''.  ..''.      Resolution: 1368x768\r\n     ..  .....    .....  ..      DE: LXDE lxpanel 0.7.2\r\n    .  .'''''''  .''''''.  .     WM: OpenBox\r\n  .'' .''''''''  .'''''''. ''.   GTK Theme: Clearlooks [GTK2], Not Found [GTK3]\r\n  '''  '''''''    .''''''  '''   Icon Theme: nuoveXT2\r\n  .'    ........... ...    .'.   Font: Sans 10\r\n    ....    ''''''''.   .''.     CPU: ARMv7 rev 5 (v7l) @ 900MHz\r\n    '''''.  ''''''''. .'''''     RAM: 258MB / 922MB\r\n     '''''.  .'''''. .'''''.    \r\n      ..''.     .    .''..      \r\n            .'''''''            \r\n             ......       \r\n
\n
\n

\n
\n
\n", "content_text": "\u30b3\u30f3\u30dd\u30b8\u30c3\u30c8\u51fa\u529b\u306e\u89e3\u50cf\u5ea6\u5909\u66f4\nRaspberry Pi\u3092\u8d77\u52d5\u3059\u308b\u3068\u304d\u306bHDMI\u3092\u63a5\u7d9a\u3057\u305f\u72b6\u614b\u3067\u8d77\u52d5\u3059\u308b\u3068\u9ad8\u89e3\u50cf\u5ea6\u3067\u8d77\u52d5\u3057\u307e\u3059\u304c\uff0c\u7e4b\u3044\u3067\u3044\u306a\u3044\u3068\u30b3\u30f3\u30dd\u30b8\u30c3\u30c8\u51fa\u529b\u3067\u8d77\u52d5\u3057\u3066X\u306e\u89e3\u50cf\u5ea6\u304c720×480\u306b\u306a\u3063\u3066\u3061\u3087\u3063\u3068\u624b\u72ed\u3067\u3059\uff0e\nxrandr\u3067\u89e3\u50cf\u5ea6\u3092\u8ffd\u52a0\u3059\u308b\u3068X\u306e\u518d\u8d77\u52d5\u3082\u305b\u305a\u306b\u9ad8\u89e3\u50cf\u5ea6\u306b\u51fa\u6765\u307e\u3059\uff0e\n\u203bxrandr\u30b3\u30de\u30f3\u30c9\u306f\u5bfe\u8c61\u306eX\u7aef\u672b\u4e0a\u304b\uff0cDISPLAY\u5909\u6570\u3092\u5bfe\u8c61\u306e\u3082\u306e\u3092\u6307\u5b9a\u3057\u3066\u5b9f\u884c\u3059\u308b\u3053\u3068\n\n720x480\u3057\u304b\u9078\u3079\u306a\u3044\n\n\n$ xrandr \r\nScreen 0: minimum 320 x 200, current 720 x 480, maximum 2048 x 2048\r\nHDMI-0 disconnected (normal left inverted right x axis y axis)\r\nComposite-0 unknown connection 720x480+0+0 (normal left inverted right x axis y axis) 0mm x 0mm\r\n 720x480 62.69* \r\nDSI-0 disconnected (normal left inverted right x axis y axis)\r\n\n\n\ncvt\u30b3\u30de\u30f3\u30c9\u3067\u8a2d\u5b9a\u3057\u305f\u3044\u89e3\u50cf\u5ea6\u3092\u6307\u5b9a\u3057\u3066Modeline\u3092\u8abf\u3079\u308b\n\n\n$ cvt 1360 768\r\n# 1360x768 59.80 Hz (CVT) hsync: 47.72 kHz; pclk: 84.75 MHz\r\nModeline "1360x768_60.00" 84.75 1360 1432 1568 1776 768 771 781 798 -hsync +vsync\r\n\n\n\nxrandr\u306emode\u3092\u4f5c\u6210\u3059\u308b\n\n\n$ xrandr --newmode "1360x768_60.00" 84.75 1360 1432 1568 1776 768 771 781 798 -hsync +vsync\r\n\n\n\nmode\u304c\u5897\u3048\u3066\u3044\u308b\n\n\n$ xrandr \r\nScreen 0: minimum 320 x 200, current 720 x 480, maximum 2048 x 2048\r\nHDMI-0 disconnected (normal left inverted right x axis y axis)\r\nComposite-0 unknown connection 720x480+0+0 (normal left inverted right x axis y axis) 0mm x 0mm\r\n 720x480 62.69* \r\nDSI-0 disconnected (normal left inverted right x axis y axis)\r\n 1360x768_60.00 (0x248) 84.750MHz\r\n h: width 1360 start 1432 end 1568 total 1776 skew 0 clock 47.72KHz\r\n v: height 768 start 771 end 781 total 798 clock 59.80Hz\r\n\n\n\nmode\u3092Composite-0\u306b\u8ffd\u52a0\u3059\u308b\n\n\n$ xrandr --addmode Composite-0 1368x768_60.00\r\n$ xrandr \r\nScreen 0: minimum 320 x 200, current 720 x 480, maximum 2048 x 2048\r\nHDMI-0 disconnected (normal left inverted right x axis y axis)\r\nComposite-0 unknown connection 720x480+0+0 (normal left inverted right x axis y axis) 0mm x 0mm\r\n 720x480 62.69* \r\n 1360x768_60.00 59.80 \r\nDSI-0 disconnected (normal left inverted right x axis y axis)\r\n\n\n\n\u8a2d\u5b9a\u3057\u305fmode\u306b\u5207\u308a\u66ff\u3048\u308b\n\n\n$ xrandr --output Composite-0 --mode 1360x768_60.00\r\n\n\n\u8d77\u52d5\u5f8c\u306bHDMI\u306b\u5207\u308a\u66ff\u3048\u308b\n\u89e3\u50cf\u5ea6\u306e\u5909\u66f4\u3067\u306f\u306a\u304f\u8d77\u52d5\u5f8c\u306bHDMI\u63a5\u7d9a\u306b\u5207\u308a\u66ff\u3048\u308b\u306e\u3082xrandr\u3067\u51fa\u6765\u307e\u3059\uff0e\u3053\u3061\u3089\u3082X\u306e\u518d\u8d77\u52d5\u306f\u5fc5\u8981\u3042\u308a\u307e\u305b\u3093\uff0e\n\nHDMI\u30b1\u30fc\u30d6\u30eb\u3092\u63a5\u7d9a\u3059\u308b\u3068HDMI-0 connected\u3068\u306a\u3063\u3066mode\u304c\u9078\u3079\u308b\u3088\u3046\u306b\u306a\u308b\n\n\n$ xrandr \r\nScreen 0: minimum 320 x 200, current 1366 x 768, maximum 2048 x 2048\r\nHDMI-0 connected 1366x768+0+0 (normal left inverted right x axis y axis) 580mm x 360mm\r\n 1366x768 59.79*+\r\n 1920x1080 60.00 59.94 \r\n 1920x1080i 60.00 50.00 59.94 \r\n 1280x1024 60.02 \r\n 1152x864 75.00 \r\n 1280x720 60.00 58.68 50.00 59.94 \r\n 1024x768 75.03 70.07 60.00 \r\n 832x624 74.55 \r\n 800x600 72.19 75.00 60.32 56.25 \r\n 720x576 50.00 \r\n 720x576i 50.00 \r\n 720x480 60.00 59.94 \r\n 720x480i 60.00 59.94 \r\n 640x480 75.00 72.81 66.67 60.00 59.94 \r\n 720x400 70.08 \r\nComposite-0 unknown connection (normal left inverted right x axis y axis)\r\n 720x480 62.69 \r\n 1360x768_60.00 59.80 \r\nDSI-0 disconnected (normal left inverted right x axis y axis)\r\n\n\n\n\u4e00\u5ea6\u306b\u30b3\u30f3\u30dd\u30b8\u30c3\u30c8\u3092\u7121\u52b9\u306b\u3057\u3066HDMI\u3092\u6709\u52b9\u306b\u3057\u3088\u3046\u3068\u3059\u308b\u3068\u30a8\u30e9\u30fc\u3068\u306a\u308b\n\n\n$ xrandr --output Composite-0 --off --output HDMI-0 --auto\r\nxrandr: cannot find crtc for output HDMI-0\r\n\n\n\n\u4e00\u5ea6\u306b\u884c\u3046\u306e\u3067\u306f\u306a\u304f\u5148\u306b\u30b3\u30f3\u30dd\u30b8\u30c3\u30c8\u3092\u7121\u52b9\u306b\u3057\u3066\u304b\u3089HDMI\u3092\u6709\u52b9\u306b\u3059\u308b\u3068\u3046\u307e\u304f\u884c\u3063\u305f\n\n\n$ DISPLAY=:0 xrandr --output Composite-0 --off\r\n$ DISPLAY=:0 xrandr --output HDMI-0 --auto\r\n\n\n\n\u9006\u306bHDMI\u304b\u3089\u30b3\u30f3\u30dd\u30b8\u30c3\u30c8\u306b\u5207\u308a\u66ff\u3048\u308b\u3053\u3068\u3082\u51fa\u6765\u308b\n\n\n$ xrandr --output HDMI-0 --off\r\n$ xrandr --output Composite-0 --mode 1360x768_60.00\r\n\n\n\u74b0\u5883\n\nHW : Raspberry Pi B 2\n\n\n$ screenfetch \r\n .',;:cc;,'. .,;::c:,,. pi@raspberrypi\r\n ,ooolcloooo: 'oooooccloo: OS: Unknown 8.0 jessie\r\n .looooc;;:ol :oc;;:ooooo' Kernel: armv7l Linux 4.9.11-v7+\r\n ;oooooo: ,ooooooc. Uptime: 4h 28m\r\n .,:;'. .;:;'. Packages: 1541\r\n .... ..'''''. .... Shell: 3362\r\n .''. ..'''''. ..''. Resolution: 1368x768\r\n .. ..... ..... .. DE: LXDE lxpanel 0.7.2\r\n . .''''''' .''''''. . WM: OpenBox\r\n .'' .'''''''' .'''''''. ''. GTK Theme: Clearlooks [GTK2], Not Found [GTK3]\r\n ''' ''''''' .'''''' ''' Icon Theme: nuoveXT2\r\n .' ........... ... .'. Font: Sans 10\r\n .... ''''''''. .''. CPU: ARMv7 rev 5 (v7l) @ 900MHz\r\n '''''. ''''''''. .''''' RAM: 258MB / 922MB\r\n '''''. .'''''. .'''''. \r\n ..''. . .''.. \r\n .''''''' \r\n ......", "date_published": "2017-02-21T22:33:27+09:00", "date_modified": "2017-02-21T22:36:10+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "RaspberryPi", "xorg", "xrandr", "Linux", "Rasbian_jessie", "Raspberry Pi" ] }, { "id": "http://matoken.org/blog/?p=1382", "url": "https://matoken.org/blog/2016/06/07/usb-device-is-troubled-not-be-recognized-by-the-raspbian/", "title": "Raspbian\u3067UVC\u30c7\u30d0\u30a4\u30b9\u304c\u8a8d\u8b58\u3067\u304d\u306a\u304f\u3066\u56f0\u308b", "content_html": "
\n
\n

\u6628\u65e5\u306e\u8a71\u306a\u306e\u3067\u3059\u304c\uff0cRasbian\u306e\u5165\u3063\u305fRaspberry Pi\u3067UVC\u306eWebCam(logitech c270)\u304c\u8a8d\u8b58\u3057\u306a\u304f\u3066\u56f0\u308a\u307e\u3057\u305f\uff0e
\n\u63a5\u7d9a\u3057\u3066dmesg\u3084lsusb\u306b\u306f\u8a72\u5f53\u306evid/pid\u306f\u51fa\u3066\u304d\u307e\u3059\uff0e\u3067\u3082/dev/video?\u306a\u3069\u306f\u51fa\u3066\u3053\u305a\uff0e
\n\u624b\u52d5\u3067omdule \u3092\u8aad\u307f\u3053\u307e\u305b\u3088\u3046\u3068\u3059\u308b\u3068\u3053\u3093\u306a\u30a8\u30e9\u30fc\uff0e

\n
\n
\n
\n
$ sudo modprobe uvcvideo\r\nmodprobe: ERROR: ../libkmod/libkmod.c:557 kmod_search_moddep() could not open moddep file '/lib/modules/4.4.9-v7+/modules.dep.bin'
\n
\n
\n
\n

apt update && apt upgrade\u3067kernel\u66f4\u65b0\u3057\u305f\u3051\u3069\u518d\u8d77\u52d5\u3057\u3066\u53cd\u6620\u3057\u3066\u3044\u306a\u3044&Raspbian\u3067\u306f\u53e4\u3044module\u306fupgraed\u6642\u306b\u6d88\u3055\u308c\u308b\u3068\u3044\u3046\u3053\u3068\u3060\u3063\u305f\u3088\u3046\u3067\u3059\uff0e
\n\u518d\u8d77\u52d5\u3057\u3066\u65b0\u3057\u3044Kernel\u306b\u3057\u3066\u89e3\u6c7a\u3067\u3057\u305f\uff0e
\n\u901a\u5e38\u306eDebian\u7b49\u3067\u306f\u6b8b\u3063\u3066\u308b\u306e\u3067\u3061\u3087\u3063\u3068\u5d4c\u307e\u308a\u307e\u3057\u305forz

\n
\n
\n

\n", "content_text": "\u6628\u65e5\u306e\u8a71\u306a\u306e\u3067\u3059\u304c\uff0cRasbian\u306e\u5165\u3063\u305fRaspberry Pi\u3067UVC\u306eWebCam(logitech c270)\u304c\u8a8d\u8b58\u3057\u306a\u304f\u3066\u56f0\u308a\u307e\u3057\u305f\uff0e\n\u63a5\u7d9a\u3057\u3066dmesg\u3084lsusb\u306b\u306f\u8a72\u5f53\u306evid/pid\u306f\u51fa\u3066\u304d\u307e\u3059\uff0e\u3067\u3082/dev/video?\u306a\u3069\u306f\u51fa\u3066\u3053\u305a\uff0e\n\u624b\u52d5\u3067omdule \u3092\u8aad\u307f\u3053\u307e\u305b\u3088\u3046\u3068\u3059\u308b\u3068\u3053\u3093\u306a\u30a8\u30e9\u30fc\uff0e\n\n\n\n$ sudo modprobe uvcvideo\r\nmodprobe: ERROR: ../libkmod/libkmod.c:557 kmod_search_moddep() could not open moddep file '/lib/modules/4.4.9-v7+/modules.dep.bin'\n\n\n\napt update && apt upgrade\u3067kernel\u66f4\u65b0\u3057\u305f\u3051\u3069\u518d\u8d77\u52d5\u3057\u3066\u53cd\u6620\u3057\u3066\u3044\u306a\u3044&Raspbian\u3067\u306f\u53e4\u3044module\u306fupgraed\u6642\u306b\u6d88\u3055\u308c\u308b\u3068\u3044\u3046\u3053\u3068\u3060\u3063\u305f\u3088\u3046\u3067\u3059\uff0e\n\u518d\u8d77\u52d5\u3057\u3066\u65b0\u3057\u3044Kernel\u306b\u3057\u3066\u89e3\u6c7a\u3067\u3057\u305f\uff0e\n\u901a\u5e38\u306eDebian\u7b49\u3067\u306f\u6b8b\u3063\u3066\u308b\u306e\u3067\u3061\u3087\u3063\u3068\u5d4c\u307e\u308a\u307e\u3057\u305forz", "date_published": "2016-06-07T21:38:06+09:00", "date_modified": "2016-06-07T21:38:06+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Linux", "RaspberryPi", "Raspbian", "Rasbian_jessie", "Raspberry Pi" ] }, { "id": "http://matoken.org/blog/?p=1380", "url": "https://matoken.org/blog/2016/06/01/try-hiptext-even-raspbian-jessie/", "title": "Raspbian jessie\u3067\u3082hiptext\u3092\u8a66\u3059", "content_html": "
\n
\n

\u3055\u3063\u304d

\n
\n
\n\n
\n
\n

\u3068\u3044\u3046\u306e\u3092\u66f8\u304d\u307e\u3057\u305f\u304c\uff0c\u306a\u3093\u3068\u306a\u304fRaspberry Pi B+ \u306e Raspbian jessie lite \u3067\u3082`hiptext`\u3092\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
$ sudo apt install build-essential libpng12-dev libjpeg-dev     libfreetype6-dev libgif-dev ragel libavformat-dev libavcodec-dev     libswscale-dev libgflags-dev libgoogle-glog-dev git\r\n$ git clone https://github.com/jart/hiptext.git\r\n$ cd hiptext\r\n$ time make\r\n   :\r\nreal    22m7.443s\r\nuser    21m53.190s\r\nsys     0m8.910s
\n
\n
\n
\n

\u3066\u611f\u3058\u3067\u307b\u307cREADME\u306e\u307e\u307emake\u4e00\u767a\u3067\u3057\u305f\uff0e\u9055\u3063\u305f\u306e\u306f\u5c0e\u5165\u30d1\u30c3\u30b1\u30fc\u30b8\u306b`git`\u304c\u5fc5\u8981\u3060\u3063\u305f\u304f\u3089\u3044\u3067\u3059\uff0e
\n\u601d\u3044\u306e\u5916make\u306b\u6642\u9593\u304c\u639b\u304b\u308a\u307e\u3057\u305f\u304cRaspberry Pi B+\u3067\u8a66\u3057\u3066\u3044\u308b\u306e\u30672B\u30843B\u3060\u3068\u3082\u3063\u3068\u901f\u3044\u3067\u3057\u3087\u3046\uff0e
\nBalls.png\u3084Obama.jpg\u306f\u3046\u307e\u304f\u884c\u304d\uff0c\u3055\u3063\u304d\u3046\u307e\u304f\u884c\u304b\u306a\u304b\u3063\u305fTux.png\u306f\u540c\u3058\u3088\u3046\u306b\u30b3\u30b1\u305f\u306e\u3067\u540c\u3058\u52d5\u304d\u306e\u3088\u3046\u3067\u3059\uff0e

\n
\n
\n

\u6050\u3089\u304f Debian jessie \u3067\u3082\u540c\u69d8\u3060\u3068\u601d\u3044\u307e\u3059\uff0e

\n
\n
\n

\"27293516472

\n
\n
\n

\n", "content_text": "\u3055\u3063\u304d\n\n\n\n\n\u753b\u50cf\u3084\u52d5\u753b\u3092text\u306b\u5909\u63db\u3059\u308bhiptext\u3092\u8a66\u3059 | matoken’s meme\n\n\n\n\n\u3068\u3044\u3046\u306e\u3092\u66f8\u304d\u307e\u3057\u305f\u304c\uff0c\u306a\u3093\u3068\u306a\u304fRaspberry Pi B+ \u306e Raspbian jessie lite \u3067\u3082`hiptext`\u3092\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\n$ sudo apt install build-essential libpng12-dev libjpeg-dev libfreetype6-dev libgif-dev ragel libavformat-dev libavcodec-dev libswscale-dev libgflags-dev libgoogle-glog-dev git\r\n$ git clone https://github.com/jart/hiptext.git\r\n$ cd hiptext\r\n$ time make\r\n :\r\nreal 22m7.443s\r\nuser 21m53.190s\r\nsys 0m8.910s\n\n\n\n\u3066\u611f\u3058\u3067\u307b\u307cREADME\u306e\u307e\u307emake\u4e00\u767a\u3067\u3057\u305f\uff0e\u9055\u3063\u305f\u306e\u306f\u5c0e\u5165\u30d1\u30c3\u30b1\u30fc\u30b8\u306b`git`\u304c\u5fc5\u8981\u3060\u3063\u305f\u304f\u3089\u3044\u3067\u3059\uff0e\n\u601d\u3044\u306e\u5916make\u306b\u6642\u9593\u304c\u639b\u304b\u308a\u307e\u3057\u305f\u304cRaspberry Pi B+\u3067\u8a66\u3057\u3066\u3044\u308b\u306e\u30672B\u30843B\u3060\u3068\u3082\u3063\u3068\u901f\u3044\u3067\u3057\u3087\u3046\uff0e\nBalls.png\u3084Obama.jpg\u306f\u3046\u307e\u304f\u884c\u304d\uff0c\u3055\u3063\u304d\u3046\u307e\u304f\u884c\u304b\u306a\u304b\u3063\u305fTux.png\u306f\u540c\u3058\u3088\u3046\u306b\u30b3\u30b1\u305f\u306e\u3067\u540c\u3058\u52d5\u304d\u306e\u3088\u3046\u3067\u3059\uff0e\n\n\n\u6050\u3089\u304f Debian jessie \u3067\u3082\u540c\u69d8\u3060\u3068\u601d\u3044\u307e\u3059\uff0e", "date_published": "2016-06-01T17:41:32+09:00", "date_modified": "2016-06-01T17:41:32+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "ascii", "Jessie", "Linux", "RaspberryPi", "Raspbian", "Rasbian_jessie", "Raspberry Pi" ] }, { "id": "http://matoken.org/blog/?p=1278", "url": "https://matoken.org/blog/2016/03/09/try-the-automatically-recorded-me-turned-into-further-podcast-by-radicast-the-radiko/", "title": "Radiko\u3092\u81ea\u52d5\u7684\u306b\u9332\u97f3\u3057\u3066Podcast\u5316\u3057\u3066\u304f\u308c\u308bradicast\u3092\u8a66\u3059", "content_html": "

\n

Radiko\u3092\u81ea\u52d5\u7684\u306b\u9332\u97f3\u3057\u3066Podcast\u5316\u3057\u3066\u304f\u308c\u308bradicast\u3068\u3044\u3046\u3082\u306e\u3092\u898b\u3064\u3051\u307e\u3057\u305f\uff0e

\n\n

\u6614\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u9332\u97f3\u3057\u305f\u308a\u3057\u3066\u3044\u307e\u3057\u305f\u304c\u4ed5\u69d8\u304c\u5909\u308f\u3063\u3066\u9332\u97f3\u3067\u304d\u306a\u304f\u306a\u3063\u3066\u5bfe\u5fdc\u3068\u3044\u3046\u306e\u304c\u9762\u5012\u3067\u6700\u8fd1\u306f\u9332\u97f3\u3057\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f\uff0e\u305f\u307e\u306b\u805e\u304f\u3068\u304d\u306fAndroid\u306eRaziko\u3092\u4f7f\u3063\u3066\u3044\u307e\u3059\uff0e\u3067\u3082radicast\u306a\u3089\u304a\u624b\u8efd\u306b\u52d5\u304b\u305b\u3066Podcast\u3068\u3057\u3066\u6271\u3048\u308b\u306e\u3067\u4fbf\u5229\u305d\u3046\u3068\u3044\u3046\u3053\u3068\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n\n

\u8a66\u3057\u305f\u74b0\u5883\u306fUbuntu 14.04 amd64/Debian stretch testing amd64/Rasbian jessie\u3067\u3059\u304c\uff0cUbuntu\u74b0\u5883\u3067\u306f\u9332\u97f3\u958b\u59cb\u6642\u306b\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u30b3\u30a2\u30c0\u30f3\u30d7\u3057\u3066\u3057\u307e\u3046\u3088\u3046\u3067\u3046\u307e\u304f\u884c\u3063\u3066\u3044\u307e\u305b\u3093 :-(

\n
2016/03/09 05:20:00 [radiko] start record
2016/03/09 05:20:00 [radiko] GET http://radiko.jp/player/swf/player_3.0.0.01.swf
2016/03/09 05:20:04 [radiko] POST https://radiko.jp/v2/api/auth1_fms
Segmentation fault (\u30b3\u30a2\u30c0\u30f3\u30d7)
\n

docker\u3067\u3082\u52d5\u304d\u307e\u3059\u304c\uff0c\u4eca\u56de\u306f\u5b9f\u6a5f\u3067\u52d5\u304b\u3057\u3066\u3044\u307e\u3059\uff0e

\n\n

\u5fc5\u8981\u306apkg\u306e\u5c0e\u5165

\n
$ sudo apt install libav-tools swftools rtmpdump golang-go
\n

\u203bDebian stretch\u306e\u5834\u5408\u306flibav-tools\u306e\u4ee3\u308f\u308a\u306bffmpeg\u3092\u5c0e\u5165\uff0e

\n

go get\u3067\u5c0e\u5165

\n
$ GOPATH=~/usr/local/go go get github.com/soh335/radicast
\n

\u30aa\u30d7\u30b7\u30e7\u30f3\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u3057\u305f\uff0e

\n
$ ~/usr/local/go/bin/radicast -h
Usage of /home/mk/usr/local/go/bin/radicast:
  -bitrate string
        bitrate (default "64k")
  -buffer int
        buffer for recording (default 60)
  -config string
        path of config.json (default "config.json")
  -converter string
        ffmpeg or avconv. If not set this option, radicast search its automatically.
  -host string
        host (default "0.0.0.0")
  -output string
        output (default "output")
  -port string
        port (default "3355")
  -setup
        initialize json configuration
  -title string
        title (default "radicast")
\n

\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u4f5c\u6210

\n

--setup\u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u30b9\u30b1\u30eb\u30c8\u30f3\u3092\u4f5c\u6210\u3057\u3066\uff0c

\n
$ ~/usr/local/go/bin/radicast --setup > ~/usr/local/go/etc/radicast.json
$ cat ~/usr/local/go/etc/radicast.json
{
  "HOUSOU-DAIGAKU": [],
  "MBC": [],
  "RN1": [],
  "RN2": []
}
\n

\u6b21\u306e\u30da\u30fc\u30b8\u3092\u53c2\u8003\u306bcron\u5f62\u5f0f\u3067\u8a2d\u5b9a\u3057\u307e\u3059\uff0ecrontab\u3068\u9055\u3044\u79d2\u5358\u4f4d\u307e\u3067\u6307\u5b9a\u3067\u304d\u308b\u3088\u3046\u3067\u3059\uff0e

\n\n

\u4f8b\u3048\u3070"0 0 7 * * MON-FRI" \u3060\u3068\u6708\u66dc\u304b\u3089\u91d1\u66dc\u306e07:00:00\u306e\u756a\u7d44\u3092\u9332\u97f3\u3068\u306a\u308a\u307e\u3059\uff0e
\n\u9332\u97f3\u505c\u6b62\u306f\u81ea\u52d5\u7684\u306b\u3055\u308c\u308b\u3088\u3046\u3067\u3059\uff0e

\n
$ cat ~/usr/local/go/etc/radicast.json
{
  "HOUSOU-DAIGAKU": [],
  "MBC": [
    "0 0 5 * * MON-FRI",
    "0 10 5 * * MON-FRI",
    "0 0 7 * * MON-FRI"
  ],
  "RN1": [],
  "RN2": []
}
\n

\u5b9f\u884c

\n

\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u3092\u6307\u5b9a\u3057\u3066\u5b9f\u884c\u3057\u307e\u3059\uff0e

\n
$ ~/usr/local/go/bin/radicast -config=$HOME/usr/local/go/etc/radicast.json
2016/03/09 05:00:12 [radicast] station:MBC spec:0 0 5 * * MON-FRI
2016/03/09 05:00:12 [radicast] station:MBC spec:0 10 5 * * MON-FRI
2016/03/09 05:00:12 [radicast] station:MBC spec:0 0 7 * * MON-FRI
2016/03/09 05:00:12 [radicast] start new cron
2016/03/09 05:00:12 [server] start 0.0.0.0:3355
\n

\u6307\u5b9a\u6642\u523b\u306b\u306a\u308b\u3068\uff0c\u756a\u7d44\u60c5\u5831\u3092\u53d6\u5f97\u3057\u3066\u9332\u97f3\u304c\u59cb\u307e\u308a\uff0c\u756a\u7d44\u7d42\u4e86\u6642\u306b\u9332\u97f3\u304c\u7d42\u4e86\u3057\u3066\u6b21\u306e\u30b8\u30e7\u30d6\u307e\u3067\u5f85\u6a5f\u3057\u307e\u3059\uff0e

\n
2016/03/09 06:30:00 [radiko] start record
2016/03/09 06:30:00 [radiko] GET http://radiko.jp/player/swf/player_3.0.0.01.swf
2016/03/09 06:30:04 [radiko] POST https://radiko.jp/v2/api/auth1_fms
2016/03/09 06:30:05 [radiko] POST https://radiko.jp/v2/api/auth2_fms
2016/03/09 06:30:06 [radiko] GET http://radiko.jp/v2/api/program/today?area_id=JP46
2016/03/09 06:30:07 [radiko] start recording \u30e2\u30fc\u30cb\u30f3\u30b0\u30fb\u30b9\u30de\u30a4\u30eb
2016/03/09 06:30:07 [radiko] rtmpdump command: /usr/bin/rtmpdump --live --quiet -r rtmpe://f-radiko.smartstream.ne.jp --playpath simul-stream.stream --app MBC/_definst_ -W http://radiko.jp/player/swf/player_3.0.0.01.swf -C S:"" -C S:"" -C S:"" -C S:J_Rb9kLWN2Cb5XlcGqQjfw --stop 1853 -o -
2016/03/09 06:30:07 [radiko] converter command: /usr/bin/ffmpeg -y -i - -vn -acodec libmp3lame -ar 44100 -ab 64k -ac 2 /tmp/radiko240330221/radiko_0.mp3
\n

\u30c7\u30fc\u30bf\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306boutput\u4ee5\u4e0b\u306b\u4fdd\u5b58\u3055\u308c\u3066\u3044\u307e\u3059\uff0e

\n
$ find output -ls
  6724248      0 drwxr-xr-x   1 mk       mk             36  3\u6708  9 05:55 output
  6724778      0 drwxr-xr-x   1 mk       mk             44  3\u6708  9 05:55 output/20160309053000_MBC
  6724327  10168 -rw-r--r--   1 mk       mk       10409132  3\u6708  9 05:55 output/20160309053000_MBC/podcast.mp3
  6724779      4 -rw-r--r--   1 mk       mk            650  3\u6708  9 05:55 output/20160309053000_MBC/podcast.xml
\n

\u9332\u97f3\u4e2d\u306e\u30c6\u30f3\u30dd\u30e9\u30ea\u30d5\u30a1\u30a4\u30eb\u306f/tmp\u4ee5\u4e0b\u306b\u4f5c\u3089\u308c\u307e\u3059\uff0e

\n
$ ls -lA /tmp/radiko077215706/
\u5408\u8a08 5184
-rw-r--r-- 1 mk mk 5223512  3\u6708  9 07:10 radiko_0.mp3
\n

\u9332\u97f3\u3057\u305f\u30c7\u30fc\u30bf\u306fPodcast\u3068\u3057\u3066\u914d\u4fe1\u3055\u308c\u307e\u3059\uff0e\u3053\u306eURL\u306f\u898f\u5b9a\u5024\u3067\u306flocalhost\u304b\u3089\u3057\u304b\u30a2\u30af\u30bb\u30b9\u3067\u304d\u307e\u305b\u3093\uff0e\u3053\u306eURL\u3092Podcast Aggregator\u306b\u6307\u5b9a\u3057\u3066\u3042\u3052\u308b\u3068\u666e\u901a\u306bPodcast\u3068\u3057\u3066\u6271\u3048\u307e\u3059 :)

\n
$ xmllint http://localhost:3355/rss
<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0">
    <channel>
        <title>radicast</title>
        <itunes:owner/>
        <itunes:image/>
        <itunes:category/>
        <item>
            <title>\u751f\u5cf6\u30d2\u30ed\u30b7\u306e\u304a\u306f\u3088\u3046\u4e00\u76f4\u7dda (2016-03-09 05:30:00 +0900 JST)</title>
            <itunes:author>\u751f\u5cf6\u30d2\u30ed\u30b7</itunes:author>
            <itunes:summary>\u3000&lt;br /&gt;&lt;A href="http://www.mbc.co.jp/radio/" target="_blank"&gt;&lt;img src="http://www.mbc.co.jp/radio/radiko/bn/mbcradio_pr1410.png" alt="MBCradio" /&gt;&lt;/A&gt;&lt;br /&gt;&lt;br /&gt;twitter\u30cf\u30c3\u30b7\u30e5\u30bf\u30b0\u306f\u300c&lt;a href="http://twitter.com/#!/search/%23mbc1107"&gt;#mbc1107&lt;/a&gt;\u300d</itunes:summary>
            <itunes:image/>
            <enclosure url="http://localhost:3355/podcast/20160309053000_MBC.mp3" length="10409132" type="audio/mpeg"/>
            <pubDate>Wed, 9 Mar 2016 05:55:45 +0900</pubDate>
        </item>
    </channel>
</rss>
\n

Podcast Aggregator\u3068\u3053\u306e\u30b5\u30fc\u30d0\u304c\u5225\u306e\u5834\u5408\u4ee5\u4e0b\u306e\u3088\u3046\u306b-host\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u6307\u5b9a\u3057\u3066\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u306b\u5272\u308a\u5f53\u3066\u305fip\u3092\u6307\u5b9a\u3059\u308b\u3068\u305d\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u304b\u3089\u30a2\u30af\u30bb\u30b9\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\uff0e

\n
$ ~/usr/local/go/bin/radicast -config=$HOME/usr/local/go/etc/radicast.json -host 192.168.2.203
  :
2016/03/09 07:42:34 [server] start 192.168.2.203:3355
\n

proxy

\n

\u306f\u4f7f\u3048\u306a\u3044\u611f\u3058\u304b\u306a?

\n
$ w3m -dump http://radiko.jp/area
document.write('<span class="JP46">KAGOSHIMA JAPAN</span>');
$ tsocks w3m -dump http://radiko.jp/area
document.write('<span class="JP13">TOKYO JAPAN</span>');
$ ALL_PROXY=socks5h://localhost:8080 ~/usr/local/go/bin/radicast -setup
2016/03/09 07:56:00 [radiko] GET http://radiko.jp/player/swf/player_3.0.0.01.swf
2016/03/09 07:56:01 [radiko] POST https://radiko.jp/v2/api/auth1_fms
2016/03/09 07:56:02 [radiko] POST https://radiko.jp/v2/api/auth2_fms
2016/03/09 07:56:02 [radiko] GET http://radiko.jp/v2/api/program/today?area_id=JP46
{
  "HOUSOU-DAIGAKU": [],
  "MBC": [],
  "RN1": [],
  "RN2": []
}
$ tsocks ~/usr/local/go/bin/radicast -setup
   :
  "MBC": [],
   :
$ tsocks ~/usr/local/go/bin/radicast -setup
   :
  "MBC": [],
   :
$ ALL_PROXY=http://localhost:8080 ~/usr/local/go/bin/radicast -setup
   :
  "MBC": [],
   :
\n

\n", "content_text": "Radiko\u3092\u81ea\u52d5\u7684\u306b\u9332\u97f3\u3057\u3066Podcast\u5316\u3057\u3066\u304f\u308c\u308bradicast\u3068\u3044\u3046\u3082\u306e\u3092\u898b\u3064\u3051\u307e\u3057\u305f\uff0e\n\nradicast \u3068\u3044\u3046\u306e\u3092\u66f8\u3044\u305f – soh335 memo\nsoh335/radicast: recording radiko and serving rss for podcast\n\n\u6614\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u9332\u97f3\u3057\u305f\u308a\u3057\u3066\u3044\u307e\u3057\u305f\u304c\u4ed5\u69d8\u304c\u5909\u308f\u3063\u3066\u9332\u97f3\u3067\u304d\u306a\u304f\u306a\u3063\u3066\u5bfe\u5fdc\u3068\u3044\u3046\u306e\u304c\u9762\u5012\u3067\u6700\u8fd1\u306f\u9332\u97f3\u3057\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f\uff0e\u305f\u307e\u306b\u805e\u304f\u3068\u304d\u306fAndroid\u306eRaziko\u3092\u4f7f\u3063\u3066\u3044\u307e\u3059\uff0e\u3067\u3082radicast\u306a\u3089\u304a\u624b\u8efd\u306b\u52d5\u304b\u305b\u3066Podcast\u3068\u3057\u3066\u6271\u3048\u308b\u306e\u3067\u4fbf\u5229\u305d\u3046\u3068\u3044\u3046\u3053\u3068\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\u30b3\u30f3\u30bd\u30fc\u30eb\u3067 radiko \u518d\u751f\uff0c\u4e88\u7d04\u9332\u97f3 – matoken\u2019s meme -hatena-\nradiko \u4e88\u7d04\u9332\u97f3&aac, mp3 \u5909\u63db – matoken\u2019s meme -hatena-\n\n\u8a66\u3057\u305f\u74b0\u5883\u306fUbuntu 14.04 amd64/Debian stretch testing amd64/Rasbian jessie\u3067\u3059\u304c\uff0cUbuntu\u74b0\u5883\u3067\u306f\u9332\u97f3\u958b\u59cb\u6642\u306b\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u30b3\u30a2\u30c0\u30f3\u30d7\u3057\u3066\u3057\u307e\u3046\u3088\u3046\u3067\u3046\u307e\u304f\u884c\u3063\u3066\u3044\u307e\u305b\u3093 :-(\n2016/03/09 05:20:00 [radiko] start record2016/03/09 05:20:00 [radiko] GET http://radiko.jp/player/swf/player_3.0.0.01.swf2016/03/09 05:20:04 [radiko] POST https://radiko.jp/v2/api/auth1_fmsSegmentation fault (\u30b3\u30a2\u30c0\u30f3\u30d7)\ndocker\u3067\u3082\u52d5\u304d\u307e\u3059\u304c\uff0c\u4eca\u56de\u306f\u5b9f\u6a5f\u3067\u52d5\u304b\u3057\u3066\u3044\u307e\u3059\uff0e\n\nradiko \u3092\u9332\u97f3\u3057\u305f\u308a\u3059\u308b radicast \u3092 docker \u3067\u52d5\u304b\u3059 – soh335 memo\n\n\u5fc5\u8981\u306apkg\u306e\u5c0e\u5165\n$ sudo apt install libav-tools swftools rtmpdump golang-go\n\u203bDebian stretch\u306e\u5834\u5408\u306flibav-tools\u306e\u4ee3\u308f\u308a\u306bffmpeg\u3092\u5c0e\u5165\uff0e\ngo get\u3067\u5c0e\u5165\n$ GOPATH=~/usr/local/go go get github.com/soh335/radicast\n\u30aa\u30d7\u30b7\u30e7\u30f3\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u3057\u305f\uff0e\n$ ~/usr/local/go/bin/radicast -hUsage of /home/mk/usr/local/go/bin/radicast:  -bitrate string        bitrate (default "64k")  -buffer int        buffer for recording (default 60)  -config string        path of config.json (default "config.json")  -converter string        ffmpeg or avconv. If not set this option, radicast search its automatically.  -host string        host (default "0.0.0.0")  -output string        output (default "output")  -port string        port (default "3355")  -setup        initialize json configuration  -title string        title (default "radicast")\n\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u4f5c\u6210\n--setup\u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u30b9\u30b1\u30eb\u30c8\u30f3\u3092\u4f5c\u6210\u3057\u3066\uff0c\n$ ~/usr/local/go/bin/radicast --setup > ~/usr/local/go/etc/radicast.json$ cat ~/usr/local/go/etc/radicast.json{  "HOUSOU-DAIGAKU": [],  "MBC": [],  "RN1": [],  "RN2": []}\n\u6b21\u306e\u30da\u30fc\u30b8\u3092\u53c2\u8003\u306bcron\u5f62\u5f0f\u3067\u8a2d\u5b9a\u3057\u307e\u3059\uff0ecrontab\u3068\u9055\u3044\u79d2\u5358\u4f4d\u307e\u3067\u6307\u5b9a\u3067\u304d\u308b\u3088\u3046\u3067\u3059\uff0e\n\ncron – GoDoc\n\n\u4f8b\u3048\u3070"0 0 7 * * MON-FRI" \u3060\u3068\u6708\u66dc\u304b\u3089\u91d1\u66dc\u306e07:00:00\u306e\u756a\u7d44\u3092\u9332\u97f3\u3068\u306a\u308a\u307e\u3059\uff0e\n\u9332\u97f3\u505c\u6b62\u306f\u81ea\u52d5\u7684\u306b\u3055\u308c\u308b\u3088\u3046\u3067\u3059\uff0e\n$ cat ~/usr/local/go/etc/radicast.json{  "HOUSOU-DAIGAKU": [],  "MBC": [    "0 0 5 * * MON-FRI",    "0 10 5 * * MON-FRI",    "0 0 7 * * MON-FRI"  ],  "RN1": [],  "RN2": []}\n\u5b9f\u884c\n\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u3092\u6307\u5b9a\u3057\u3066\u5b9f\u884c\u3057\u307e\u3059\uff0e\n$ ~/usr/local/go/bin/radicast -config=$HOME/usr/local/go/etc/radicast.json2016/03/09 05:00:12 [radicast] station:MBC spec:0 0 5 * * MON-FRI2016/03/09 05:00:12 [radicast] station:MBC spec:0 10 5 * * MON-FRI2016/03/09 05:00:12 [radicast] station:MBC spec:0 0 7 * * MON-FRI2016/03/09 05:00:12 [radicast] start new cron2016/03/09 05:00:12 [server] start 0.0.0.0:3355\n\u6307\u5b9a\u6642\u523b\u306b\u306a\u308b\u3068\uff0c\u756a\u7d44\u60c5\u5831\u3092\u53d6\u5f97\u3057\u3066\u9332\u97f3\u304c\u59cb\u307e\u308a\uff0c\u756a\u7d44\u7d42\u4e86\u6642\u306b\u9332\u97f3\u304c\u7d42\u4e86\u3057\u3066\u6b21\u306e\u30b8\u30e7\u30d6\u307e\u3067\u5f85\u6a5f\u3057\u307e\u3059\uff0e\n2016/03/09 06:30:00 [radiko] start record2016/03/09 06:30:00 [radiko] GET http://radiko.jp/player/swf/player_3.0.0.01.swf2016/03/09 06:30:04 [radiko] POST https://radiko.jp/v2/api/auth1_fms2016/03/09 06:30:05 [radiko] POST https://radiko.jp/v2/api/auth2_fms2016/03/09 06:30:06 [radiko] GET http://radiko.jp/v2/api/program/today?area_id=JP462016/03/09 06:30:07 [radiko] start recording \u30e2\u30fc\u30cb\u30f3\u30b0\u30fb\u30b9\u30de\u30a4\u30eb2016/03/09 06:30:07 [radiko] rtmpdump command: /usr/bin/rtmpdump --live --quiet -r rtmpe://f-radiko.smartstream.ne.jp --playpath simul-stream.stream --app MBC/_definst_ -W http://radiko.jp/player/swf/player_3.0.0.01.swf -C S:"" -C S:"" -C S:"" -C S:J_Rb9kLWN2Cb5XlcGqQjfw --stop 1853 -o -2016/03/09 06:30:07 [radiko] converter command: /usr/bin/ffmpeg -y -i - -vn -acodec libmp3lame -ar 44100 -ab 64k -ac 2 /tmp/radiko240330221/radiko_0.mp3\n\u30c7\u30fc\u30bf\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306boutput\u4ee5\u4e0b\u306b\u4fdd\u5b58\u3055\u308c\u3066\u3044\u307e\u3059\uff0e\n$ find output -ls  6724248      0 drwxr-xr-x   1 mk       mk             36  3\u6708  9 05:55 output  6724778      0 drwxr-xr-x   1 mk       mk             44  3\u6708  9 05:55 output/20160309053000_MBC  6724327  10168 -rw-r--r--   1 mk       mk       10409132  3\u6708  9 05:55 output/20160309053000_MBC/podcast.mp3  6724779      4 -rw-r--r--   1 mk       mk            650  3\u6708  9 05:55 output/20160309053000_MBC/podcast.xml\n\u9332\u97f3\u4e2d\u306e\u30c6\u30f3\u30dd\u30e9\u30ea\u30d5\u30a1\u30a4\u30eb\u306f/tmp\u4ee5\u4e0b\u306b\u4f5c\u3089\u308c\u307e\u3059\uff0e\n$ ls -lA /tmp/radiko077215706/\u5408\u8a08 5184-rw-r--r-- 1 mk mk 5223512  3\u6708  9 07:10 radiko_0.mp3\n\u9332\u97f3\u3057\u305f\u30c7\u30fc\u30bf\u306fPodcast\u3068\u3057\u3066\u914d\u4fe1\u3055\u308c\u307e\u3059\uff0e\u3053\u306eURL\u306f\u898f\u5b9a\u5024\u3067\u306flocalhost\u304b\u3089\u3057\u304b\u30a2\u30af\u30bb\u30b9\u3067\u304d\u307e\u305b\u3093\uff0e\u3053\u306eURL\u3092Podcast Aggregator\u306b\u6307\u5b9a\u3057\u3066\u3042\u3052\u308b\u3068\u666e\u901a\u306bPodcast\u3068\u3057\u3066\u6271\u3048\u307e\u3059 :)\n$ xmllint http://localhost:3355/rss<?xml version="1.0" encoding="UTF-8"?><rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0">    <channel>        <title>radicast</title>        <itunes:owner/>        <itunes:image/>        <itunes:category/>        <item>            <title>\u751f\u5cf6\u30d2\u30ed\u30b7\u306e\u304a\u306f\u3088\u3046\u4e00\u76f4\u7dda (2016-03-09 05:30:00 +0900 JST)</title>            <itunes:author>\u751f\u5cf6\u30d2\u30ed\u30b7</itunes:author>            <itunes:summary>\u3000&lt;br /&gt;&lt;A href="http://www.mbc.co.jp/radio/" target="_blank"&gt;&lt;img src="http://www.mbc.co.jp/radio/radiko/bn/mbcradio_pr1410.png" alt="MBCradio" /&gt;&lt;/A&gt;&lt;br /&gt;&lt;br /&gt;twitter\u30cf\u30c3\u30b7\u30e5\u30bf\u30b0\u306f\u300c&lt;a href="http://twitter.com/#!/search/%23mbc1107"&gt;#mbc1107&lt;/a&gt;\u300d</itunes:summary>            <itunes:image/>            <enclosure url="http://localhost:3355/podcast/20160309053000_MBC.mp3" length="10409132" type="audio/mpeg"/>            <pubDate>Wed, 9 Mar 2016 05:55:45 +0900</pubDate>        </item>    </channel></rss>\nPodcast Aggregator\u3068\u3053\u306e\u30b5\u30fc\u30d0\u304c\u5225\u306e\u5834\u5408\u4ee5\u4e0b\u306e\u3088\u3046\u306b-host\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u6307\u5b9a\u3057\u3066\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u306b\u5272\u308a\u5f53\u3066\u305fip\u3092\u6307\u5b9a\u3059\u308b\u3068\u305d\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u304b\u3089\u30a2\u30af\u30bb\u30b9\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\uff0e\n$ ~/usr/local/go/bin/radicast -config=$HOME/usr/local/go/etc/radicast.json -host 192.168.2.203  :2016/03/09 07:42:34 [server] start 192.168.2.203:3355\nproxy\n\u306f\u4f7f\u3048\u306a\u3044\u611f\u3058\u304b\u306a?\n$ w3m -dump http://radiko.jp/areadocument.write('<span class="JP46">KAGOSHIMA JAPAN</span>');$ tsocks w3m -dump http://radiko.jp/areadocument.write('<span class="JP13">TOKYO JAPAN</span>');$ ALL_PROXY=socks5h://localhost:8080 ~/usr/local/go/bin/radicast -setup2016/03/09 07:56:00 [radiko] GET http://radiko.jp/player/swf/player_3.0.0.01.swf2016/03/09 07:56:01 [radiko] POST https://radiko.jp/v2/api/auth1_fms2016/03/09 07:56:02 [radiko] POST https://radiko.jp/v2/api/auth2_fms2016/03/09 07:56:02 [radiko] GET http://radiko.jp/v2/api/program/today?area_id=JP46{  "HOUSOU-DAIGAKU": [],  "MBC": [],  "RN1": [],  "RN2": []}$ tsocks ~/usr/local/go/bin/radicast -setup   :  "MBC": [],   :$ tsocks ~/usr/local/go/bin/radicast -setup   :  "MBC": [],   :$ ALL_PROXY=http://localhost:8080 ~/usr/local/go/bin/radicast -setup   :  "MBC": [],   :", "date_published": "2016-03-09T08:26:15+09:00", "date_modified": "2016-03-09T08:26:15+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Debian", "Linux", "podcast", "Rasbian_jessie", "RaspberryPi", "stretch", "testing" ] }, { "id": "http://matoken.org/blog/?p=1222", "url": "https://matoken.org/blog/2016/02/26/rc-gui-latest-version-build-notes/", "title": "rc-gui\u6700\u65b0\u7248\u306e\u30d3\u30eb\u30c9\u30e1\u30e2(20160226)", "content_html": "

\n

Rasbian jessie\u306eGUI\u306a\u8a2d\u5b9a\u30c4\u30fc\u30eb\u306erc-gui\u306e\u8a00\u8a9e\u30d5\u30a1\u30a4\u30eb\u306e\u9805\u76ee\u304c\u5897\u3048\u3066\u3044\u308b\u307f\u305f\u3044\u306a\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n

Wi-Fi\u306eCountry Code\u8fba\u308a\u304c\u5897\u3048\u3066\u308b\u307f\u305f\u3044\u306a\u3093\u3060\u3051\u3069\u753b\u9762\u4e0a\u306b\u898b\u5f53\u305f\u3089\u306a\u3044\u3067\u3059\uff0e
\n\u5bfe\u5fdc\u30c7\u30d0\u30a4\u30b9\u7e4b\u304c\u306a\u3044\u3068\u51fa\u306a\u3044\u306e\u304b\u306a?

\n

\"20160226_00:02:02-20553\"

\n

\u8a33\u306f\u3053\u3093\u306a\u611f\u3058?

\n

\"20160226_01:02:13-6226\"

\n

\u3068\u308a\u3042\u3048\u305arc-gui\u306f\u30d3\u30eb\u30c9\u306b\u5fc5\u8981\u306a\u30d1\u30c3\u30b1\u30fc\u30b8\u5897\u3048\u3066\u305f\u306e\u3067\u30e1\u30e2\u3057\u3066\u304a\u304d\u307e\u3059\uff0e
\ncontrol\u306b\u306f\u672a\u3060\u8f09\u3063\u3066\u306a\u3044\u3088\u3046\uff0e

\n
$ sudo apt-get build-dep rc-gui
$ git pull
$ ./configure --prefix=/opt/local
   :
configure: error: Package requirements ( gtk+-2.0 >= 2.18.0              libxml-2.0) were not met:
 
No package 'libxml-2.0' found
   :
$ sudo apt install libxml2-dev
$ ./configure --prefix=/opt/local
$ make
$ sudo make install
\n\n
\n

\n
\n", "content_text": "Rasbian jessie\u306eGUI\u306a\u8a2d\u5b9a\u30c4\u30fc\u30eb\u306erc-gui\u306e\u8a00\u8a9e\u30d5\u30a1\u30a4\u30eb\u306e\u9805\u76ee\u304c\u5897\u3048\u3066\u3044\u308b\u307f\u305f\u3044\u306a\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\nWi-Fi\u306eCountry Code\u8fba\u308a\u304c\u5897\u3048\u3066\u308b\u307f\u305f\u3044\u306a\u3093\u3060\u3051\u3069\u753b\u9762\u4e0a\u306b\u898b\u5f53\u305f\u3089\u306a\u3044\u3067\u3059\uff0e\n\u5bfe\u5fdc\u30c7\u30d0\u30a4\u30b9\u7e4b\u304c\u306a\u3044\u3068\u51fa\u306a\u3044\u306e\u304b\u306a?\n\n\u8a33\u306f\u3053\u3093\u306a\u611f\u3058?\n\n\u3068\u308a\u3042\u3048\u305arc-gui\u306f\u30d3\u30eb\u30c9\u306b\u5fc5\u8981\u306a\u30d1\u30c3\u30b1\u30fc\u30b8\u5897\u3048\u3066\u305f\u306e\u3067\u30e1\u30e2\u3057\u3066\u304a\u304d\u307e\u3059\uff0e\ncontrol\u306b\u306f\u672a\u3060\u8f09\u3063\u3066\u306a\u3044\u3088\u3046\uff0e\n$ sudo apt-get build-dep rc-gui$ git pull$ ./configure --prefix=/opt/local   :configure: error: Package requirements ( gtk+-2.0 >= 2.18.0              libxml-2.0) were not met: No package 'libxml-2.0' found   :$ sudo apt install libxml2-dev$ ./configure --prefix=/opt/local$ make$ sudo make install\n\nRasbian \u306e rc_gui \u306e\u65e5\u672c\u8a9e\u8a33\u3092\u3057\u3066\u307f\u308b | matoken\u2019s meme", "date_published": "2016-02-26T07:47:37+09:00", "date_modified": "2016-02-26T07:48:33+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Linux", "Rasbian", "Rasbian_jessie", "RaspberryPi", "\u7ffb\u8a33", "Raspberry Pi" ] }, { "id": "http://matoken.org/blog/?p=1191", "url": "https://matoken.org/blog/2016/02/19/try-podget-of-podcast-aggregator-downloader-that-specializes-in-cron/", "title": "cron\u306b\u7279\u5316\u3057\u305fPodcast\u30a2\u30b0\u30ea\u30b2\u30fc\u30bf/\u30c0\u30a6\u30f3\u30ed\u30fc\u30c0\u306epodget\u3092\u8a66\u3059", "content_html": "

\n

\u5148\u65e5\u8a66\u3057\u305fpodracer\u306f\u4f55\u6c17\u306b10\u5e74\u524d\u306e\u30bd\u30d5\u30c8\u3067\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u3082\u3055\u308c\u3066\u3044\u306a\u3044\u3057\uff0c\u8d77\u52d5\u4e2d\u306b\u5f37\u5236\u7d42\u4e86\u3059\u308b\u3068\u30b4\u30df\u304c\u6b8b\u3063\u3066\u6b21\u304b\u3089\u8d77\u52d5\u3057\u306a\u304f\u306a\u3063\u305f\u308a\u3068\u304b\u3068\u304b\u7d50\u69cb\u4e0d\u6e80\u70b9\u304c\u51fa\u3066\u304d\u307e\u3057\u305f\uff0e

\n\n

\u4eca\u306f\u524d\u51e6\u7406\u3092\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u3057\u3066\uff0c

\n
if [ $(pgrep podracer) ] ; then
  echo 'running podracer.'
  exit -1
fi
 
echo run podracer
if [ -f ~/.podracer/tempsub ] ; then
  rm ~/.podracer/tempsub
  echo 'rm tempsub'
fi
\n

\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u3082\u3053\u3093\u306a\u611f\u3058\u3067\u5225\u306b\u4f5c\u3063\u3066\u307e\u3059\uff0e

\n
cd ~/podcasts
PODCASTLIST=($(cd ~/podcasts ; find . -mmin -$LISTTIME -type f -print0 | xargs -0n1 file | grep -i audio | cut -f1 -d:))
if [ ${#PODCASTLIST[@]} -eq 0 ] ; then
  echo 'podcast not found.'
  exit -1;
fi
 
echo num = ${#PODCASTLIST[@]}
ls -1tr ${PODCASTLIST[@]} > ~/podcasts/todayspodcast.m3u
\n

\u5f8c\u8005\u306fDebian\u306e\u65b9\u306b\u306f\u30d0\u30b0\u5831\u544a\u3092\u3057\u3066\u3044\u307e\u3059\u304c\u97f3\u6c99\u6c70\u304c\u306a\u3044\u611f\u3058\u3067\u3059\uff0e

\n

\u4ed6\u306b\u306a\u3044\u304b\u306a\u30fc\u3068\u63a2\u3057\u3066(apt-cache search podcast)podget\u3068\u3044\u3046\u3082\u306e\u3092\u898b\u3064\u3051\u307e\u3057\u305f\uff0e

\n
$ apt show podget | grep -A99 Description:
 
Description: cron \u7528\u306b\u6700\u9069\u5316\u3055\u308c\u305f Podcast \u30a2\u30b0\u30ea\u30b2\u30fc\u30bf/\u30c0\u30a6\u30f3\u30ed\u30fc\u30c0
 Podget \u306f\u30b7\u30f3\u30d7\u30eb\u306a podcast \u30a2\u30b0\u30ea\u30b2\u30fc\u30bf\u3067\u3042\u308a\u3001\u5b9a\u671f\u7684\u306a\u30d0\u30c3\u30af\u30b0\u30e9\u30f3\u30c9\u30b8\u30e7\u30d6
 (\u3059\u306a\u308f\u3061 cron) \u3068\u3057\u3066\u8d77\u52d5\u3059\u308b\u305f\u3081\u306b\u6700\u9069\u5316\u3055\u308c\u3066\u3044\u307e\u3059\u3002RSS \u304a\u3088\u3073 XML \u30d5\u30a3\u30fc\u30c9
 \u304b\u3089\u306e podcast \u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3001\u30d5\u30a1\u30a4\u30eb\u3092\u30bd\u30fc\u30c8\u3057\u3066\u30d5\u30a9\u30eb\u30c0\u3084\u30ab\u30c6\u30b4\u30ea\u3054\u3068\u306b\u683c\u7d0d\u3001
 iTunes PCAST \u30d5\u30a1\u30a4\u30eb\u304a\u3088\u3073 OPML \u30ea\u30b9\u30c8\u304b\u3089\u306e URL \u306e\u30a4\u30f3\u30dd\u30fc\u30c8\u3001M3U \u304a\u3088\u3073 ASX
 \u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u306e\u81ea\u52d5\u751f\u6210\u3001\u305d\u3057\u3066\u53e4\u304f\u306a\u3063\u305f\u30d5\u30a1\u30a4\u30eb\u306e\u81ea\u52d5\u30af\u30ea\u30fc\u30f3\u30a2\u30c3\u30d7\u306e\u30b5\u30dd\u30fc\u30c8
 \u304c\u7279\u5fb4\u3067\u3059\u3002\u307e\u305f\u3001MS Windows \u30b5\u30fc\u30d0\u4e0a\u306b\u30db\u30b9\u30c8\u3055\u308c\u305f podcast \u306e UTF-16 \u81ea\u52d5\u5909\u63db\u3082
 \u7279\u5fb4\u3067\u3059\u3002
 podget \u3092\u4e00\u65e6\u8d77\u52d5\u3059\u308b\u3068\u3001\u30e6\u30fc\u30b6\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u3092 $HOME/.podget \u306b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb
 \u3057\u307e\u3059\u306e\u3067\u3001\u305d\u306e\u30d5\u30a1\u30a4\u30eb\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u3002
\n

cron\u306b\u7279\u5316\u3057\u3066\u3044\u3066\u4fbf\u5229\u305d\u3046\u306a\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3059\uff0e

\n

\u5c0e\u5165

\n

Debian stretch testing/Rasbian jessie/Ubuntu 14.04 \u3067\u78ba\u8a8d\u3057\u307e\u3057\u305f\uff0e

\n
$ sudo apt install podget
\n

\u521d\u671f\u5316

\n
$ podget -h
 
Usage /usr/bin/podget [options]
 
    -c --config <FILE>           Name of configuration file.
    -C --cleanup                 Skip downloading and only run cleanup loop.
    --cleanup_simulate           Skip downloading and simulate running
                                 cleanup loop.
                                 Display files to be deleted.
    --cleanup_days               Number of days to retain files.  Anything
                                 older will be removed.
    -d --dir_config <DIRECTORY>  Directory that configuration files are
                                 stored in.
    -f --force                   Force download of items from each feed even
                                 if they have already been downloaded.
    --import_opml <FILE or URL>  Import servers from OPML file or
                                 HTTP/FTP URL.
    --import_pcast <FILE or URL> Import servers from iTunes PCAST file or
                                 HTTP/FTP URL.
    -l --library <DIRECTORY>     Directory to store downloaded files in.
    -p --playlist-asx            In addition to the default M3U playlist,
                                 create an ASX Playlist.
    -r --recent <count>          Download only the <count> newest items from
                                 each feed.
    --serverlist <list>          Serverlist to use.
    -s --silent                  Run silently (for cron jobs).
    --verbosity <LEVEL>          Set verbosity level (0-4).
    -v                           Set verbosity to level 1.
    -vv                          Set verbosity to level 2.
    -vvv                         Set verbosity to level 3.
    -vvvv                        Set verbosity to level 4.
    -h --help                    Display help.
\n

\u521d\u56de\u8d77\u52d5\u6642\u306b\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306a\u3069\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\uff0e\u5f15\u6570\u7121\u3057\u3067\u5b9f\u884c\u3059\u308b\u3068\u521d\u671f\u8a2d\u5b9a\u306e\u4e2d\u306epodcast\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3059\u308b\u306e\u3067--cleanup_simulate\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4ed8\u3051\u3066\u5b9f\u884c\u3059\u308b\u3068\u826f\u3055\u305d\u3046\u3067\u3059\uff0e
\n\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306f\u898f\u5b9a\u5024\u3067\u306f~/.podget\u4ee5\u4e0b\u306b\u4f5c\u6210\u3055\u308c\u307e\u3059\uff0e

\n
$ podget --cleanup_simulate
$ ls -lA ~/.podget
\u5408\u8a08 8
-rw-rw-r-- 1 mk mk 3652  2\u6708 19 05:34 podgetrc
-rw-rw-r-- 1 mk mk 1131  2\u6708 19 05:34 serverlist
\n\n

\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e\u7528\u610f

\n

\u304a\u597d\u307f\u3067\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e~/podgetrc\u3092\u7de8\u96c6\u3057\u307e\u3059\uff0e\u79c1\u306f\u4ee5\u4e0b\u306e\u8fba\u308a\u3092\u66f8\u304d\u63db\u3048\u307e\u3057\u305f\uff0e

\n

\u30ed\u30b0\u30d5\u30a1\u30a4\u30eb\u3092\u6709\u52b9\u306b

\n
# Directory to store logs in
dir_log=/home/mk/POD/LOG
\n

\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u306e\u5e74\u6708\u65e5\u306e\u5f62\u5f0f\u3092\u66f8\u304d\u63db\u3048

\n
# Date format for new playlist names
date_format=+%Y-%m-%d
\n

Podcast\u306e\u53d6\u5f97\u6570\u30923\u3064\u306b

\n
# Most Recent
# 0  == download all new items.
# 1+ == download only the <count> most recent
most_recent=3
\n

\u30b5\u30fc\u30d0\u30ea\u30b9\u30c8\u306e\u4f5c\u6210

\n

\u53d6\u5f97\u3059\u308bPodcast\u3092~/.podget/serverlist\u306b\u66f8\u3044\u3066\u3044\u304d\u307e\u3059\uff0e

\n

\u66f8\u5f0f\u306f\u30b9\u30da\u30fc\u30b9\u533a\u5207\u308a\u3067

\n
\n

URL \u30ab\u30c6\u30b4\u30ea\u30fc \u756a\u7d44\u540d

\n
\n

\u306b\u306a\u3063\u3066\u3044\u307e\u3059\uff0epodget\u3092\u5b9f\u884c\u3057\u305f\u6642\u306b
\n\u30ab\u30c6\u30b4\u30ea\u30fc/\u756a\u7d44\u540d/\u756a\u7d44\u3068\u3044\u3046\u3075\u3046\u306b\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u304c\u6398\u3089\u308c\u307e\u3059\uff0e
\n\u5177\u4f53\u7684\u306b\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u66f8\u3044\u3066\u3044\u304d\u307e\u3059\uff0e

\n
http://feeds.feedburner.com/weblogs/csc tech \u96fb\u8133\u7a7a\u9593\u30ab\u30a6\u30dc\u30fc\u30a4\u30ba
http://feeds.backspace.fm/backspacefm tech backspace.fm
http://www.joqr.co.jp/science-podcast/index.xml science \u65e5\u7acb\u30cf\u30a4\u30c6\u30af\u30d7\u30ec\u30bc\u30f3\u30c4 \u5927\u6751\u6b63\u6a39\u306e\u30b5\u30a4\u30a8\u30f3\u30b9\u30ad\u30c3\u30ba
http://www.tbsradio.jp/life/rss.xml etc \u6587\u5316\u7cfb\u30c8\u30fc\u30af\u30e9\u30b8\u30aa Life
http://www.tbsradio.jp/cycle-r/index.xml bike \u30df\u30e9\u30af\u30eb\u30fb\u30b5\u30a4\u30af\u30eb\u30fb\u30e9\u30a4\u30d5
http://sokoani.com/feed anime \u305d\u3053\u3042\u306b
  :
\n

\u4ed6\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3089\u306e\u79fb\u884c\u3067OPML\u30d5\u30a1\u30a4\u30eb\u306e\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u304c\u53ef\u80fd\u306a\u5834\u5408\u306f\u305d\u306e\u30d5\u30a1\u30a4\u30eb\u3084URL\u3092\u5143\u306b\u30a4\u30f3\u30dd\u30fc\u30c8\u3067\u304d\u308b\u3088\u3046\u3067\u3059\uff0e\u203b\u672a\u78ba\u8a8d

\n
$ podget --import_opml <FILE or URL>
\n

\u82e5\u3057\u304f\u306fPCAST\u5f62\u5f0f(iTunes\u5411\u3051?)\u3082\u540c\u69d8\u306b\u5229\u7528\u3067\u304d\u308b\u3088\u3046\u3067\u3059\uff0e\u203b\u672a\u78ba\u8a8d

\n
$ podget --import_pcast <FILE or URL>
\n

OPML\u66f8\u304d\u51fa\u3057\u306e\u6a5f\u80fd\u3082\u3042\u308a\u307e\u3059\uff0e\u4f46\u3057\u3053\u306e\u6a5f\u80fd\u306f
\nUbuntu 14.04\u306e0.6.9\u306b\u306f\u306a\u304f\uff0c
\nRasbian jessie\u306e0.7.3\uff0c
\nDebian stretch\u306e0.7.9\u306b\u306f\u5b58\u5728\u3057\u307e\u3057\u305f\uff0e

\n
$ podget --export_opml /tmp/podcast.opml
podget
 
Session file not found.  Creating podget.22189 .
 
Export serverlist to OPML file: /tmp/podcast.opml
 
Closing session and removing lock file.
$ head /tmp/podcast.opml
<?xml version="1.0" encoding="utf-8" ?>
<opml version="1.0">
<head/>
<body>
<outline text="tech"><outline text="\u96fb\u8133\u7a7a\u9593\u30ab\u30a6\u30dc\u30fc\u30a4\u30ba" type="rss" xmlUrl="http://feeds.feedburner.com/weblogs/csc" /></outline>
<outline text="tech"><outline text="backspace.fm" type="rss" xmlUrl="http://feeds.backspace.fm/backspacefm" /></outline>
<outline text="science"><outline text="\u65e5\u7acb\u30cf\u30a4\u30c6\u30af\u30d7\u30ec\u30bc\u30f3\u30c4 \u5927\u6751\u6b63\u6a39\u306e\u30b5\u30a4\u30a8\u30f3\u30b9\u30ad\u30c3\u30ba" type="rss" xmlUrl="http://www.joqr.co.jp/science-podcast/index.xml" /></outline>
<outline text="etc"><outline text="\u6587\u5316\u7cfb\u30c8\u30fc\u30af\u30e9\u30b8\u30aa Life" type="rss" xmlUrl="http://www.tbsradio.jp/life/rss.xml" /></outline>
<outline text="bike"><outline text="\u30df\u30e9\u30af\u30eb\u30fb\u30b5\u30a4\u30af\u30eb\u30fb\u30e9\u30a4\u30d5" type="rss" xmlUrl="http://www.tbsradio.jp/cycle-r/index.xml" /></outline>
<outline text="anime"><outline text="\u305d\u3053\u3042\u306b" type="rss" xmlUrl="http://sokoani.com/feed" /></outline>
\n

\u5b9f\u884c

\n

\u3068\u308a\u3042\u3048\u305a\u5f15\u6570\u7121\u3057\u3067\u5b9f\u884c\u3059\u308b\u3053\u3068\u3067Podcast\u304c\u53d6\u5f97\u3067\u304d\u307e\u3059\uff0e

\n
$ podget
-------------------------------------------------
Category: anime         Name: \u305d\u3053\u3042\u306b
Downloading feed index from http://sokoani.com/feed
2016-02-19 07:37:15 URL:http://sokoani.com/feed [673868] -> "-" [1]
 
Downloading 0_s413.mp3 from http://sokoani.com/podpress_trac/feed/9818/0/
 :
 :
\n

Podcast\u306f\u898f\u5b9a\u5024\u3067\u306f~/POD\u4ee5\u4e0b\u306b\u30ab\u30c6\u30b4\u30ea/\u756a\u7d44\u540d/\u756a\u7d44\u30d5\u30a1\u30a4\u30eb\u306e\u5f62\u3067\u4fdd\u5b58\u3055\u308c\u307e\u3059\uff0e

\n
$ find ~/POD -type f | tail -3
/home/mk/POD/etc/JUNK \u4f0a\u96c6\u9662\u5149 \u6df1\u591c\u306e\u99ac\u9e7f\u529b/files_20160216.mp3
/home/mk/POD/etc/JUNK \u4f0a\u96c6\u9662\u5149 \u6df1\u591c\u306e\u99ac\u9e7f\u529b/files_20160202.mp3
/home/mk/POD/etc/JUNK \u4f0a\u96c6\u9662\u5149 \u6df1\u591c\u306e\u99ac\u9e7f\u529b/files_20160209.mp3
\n

\u307e\u305f\uff0c~/POD/*.m3u\u3068\u30b9\u30c6\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u3082\u4f5c\u6210\u3055\u308c\u307e\u3059\uff0e\u3053\u308c\u306f\u5b9f\u884c\u5358\u4f4d\u3067\u4f5c\u3089\u308c\u308b\u306e\u304b\u306a?

\n
$ ls -l ~/POD/*.m3u
-rw-rw-r-- 1 mk mk  946  2\u6708 19 07:14 /home/mk/POD/New-2016-02-19.m3u
-rw-rw-r-- 1 mk mk 1924  2\u6708 19 07:50 /home/mk/POD/New-2016-02-19.r2.m3u
\n

\u3046\u307e\u304f\u52d5\u4f5c\u3059\u308b\u3088\u3046\u306a\u3089-s\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4ed8\u3051\u3066cron\u306b\u767b\u9332\u3057\u3066\u3042\u3052\u308b\u3068\u826f\u3055\u305d\u3046\u3067\u3059\uff0e\u4ee5\u4e0b\u306e\u4f8b\u3067\u306f\u6bce\u66423\u5206\u306bpodget\u3092\u5b9f\u884c\u3057\u3066\u3044\u307e\u3059\uff0e

\n
$ crontab -e
$ crontab -l | tail -2
# get podcast
3 * * * *       podget -s
\n

podracer\u306fPodcast\u3092\u756a\u7d44\u95a2\u4fc2\u306a\u304f\u5b9f\u884c\u65e5\u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u4fdd\u5b58\u3055\u308c\u3066Podcast\u756a\u7d44\u3092\u63a2\u3057\u305f\u308a\u3059\u308b\u306e\u306b\u4e0d\u4fbf\u3067\u3057\u305f\u304cpodget\u3060\u3068\u30ab\u30c6\u30b4\u30ea\u3068\u756a\u7d44\u3067\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u304c\u5206\u304b\u308c\u308b\u306e\u3067\u4fbf\u5229\u3067\u3059\uff0e
\n\u3057\u3070\u3089\u304f\u4f75\u7528\u3057\u3066\u307f\u3088\u3046\u3068\u601d\u3044\u307e\u3059\uff0e

\n

\n", "content_text": "\u5148\u65e5\u8a66\u3057\u305fpodracer\u306f\u4f55\u6c17\u306b10\u5e74\u524d\u306e\u30bd\u30d5\u30c8\u3067\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u3082\u3055\u308c\u3066\u3044\u306a\u3044\u3057\uff0c\u8d77\u52d5\u4e2d\u306b\u5f37\u5236\u7d42\u4e86\u3059\u308b\u3068\u30b4\u30df\u304c\u6b8b\u3063\u3066\u6b21\u304b\u3089\u8d77\u52d5\u3057\u306a\u304f\u306a\u3063\u305f\u308a\u3068\u304b\u3068\u304b\u7d50\u69cb\u4e0d\u6e80\u70b9\u304c\u51fa\u3066\u304d\u307e\u3057\u305f\uff0e\n\nCLI \u306a podcast aggregator/downloader \u306a podracer \u3092\u8a66\u3057\u3066\u307f\u308b | matoken\u2019s meme\n\n\u4eca\u306f\u524d\u51e6\u7406\u3092\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u3057\u3066\uff0c\nif [ $(pgrep podracer) ] ; then  echo 'running podracer.'  exit -1fi echo run podracerif [ -f ~/.podracer/tempsub ] ; then  rm ~/.podracer/tempsub  echo 'rm tempsub'fi\n\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u3082\u3053\u3093\u306a\u611f\u3058\u3067\u5225\u306b\u4f5c\u3063\u3066\u307e\u3059\uff0e\ncd ~/podcastsPODCASTLIST=($(cd ~/podcasts ; find . -mmin -$LISTTIME -type f -print0 | xargs -0n1 file | grep -i audio | cut -f1 -d:))if [ ${#PODCASTLIST[@]} -eq 0 ] ; then  echo 'podcast not found.'  exit -1;fi echo num = ${#PODCASTLIST[@]}ls -1tr ${PODCASTLIST[@]} > ~/podcasts/todayspodcast.m3u\n\u5f8c\u8005\u306fDebian\u306e\u65b9\u306b\u306f\u30d0\u30b0\u5831\u544a\u3092\u3057\u3066\u3044\u307e\u3059\u304c\u97f3\u6c99\u6c70\u304c\u306a\u3044\u611f\u3058\u3067\u3059\uff0e\n\u4ed6\u306b\u306a\u3044\u304b\u306a\u30fc\u3068\u63a2\u3057\u3066(apt-cache search podcast)podget\u3068\u3044\u3046\u3082\u306e\u3092\u898b\u3064\u3051\u307e\u3057\u305f\uff0e\n$ apt show podget | grep -A99 Description: Description: cron \u7528\u306b\u6700\u9069\u5316\u3055\u308c\u305f Podcast \u30a2\u30b0\u30ea\u30b2\u30fc\u30bf/\u30c0\u30a6\u30f3\u30ed\u30fc\u30c0 Podget \u306f\u30b7\u30f3\u30d7\u30eb\u306a podcast \u30a2\u30b0\u30ea\u30b2\u30fc\u30bf\u3067\u3042\u308a\u3001\u5b9a\u671f\u7684\u306a\u30d0\u30c3\u30af\u30b0\u30e9\u30f3\u30c9\u30b8\u30e7\u30d6 (\u3059\u306a\u308f\u3061 cron) \u3068\u3057\u3066\u8d77\u52d5\u3059\u308b\u305f\u3081\u306b\u6700\u9069\u5316\u3055\u308c\u3066\u3044\u307e\u3059\u3002RSS \u304a\u3088\u3073 XML \u30d5\u30a3\u30fc\u30c9 \u304b\u3089\u306e podcast \u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3001\u30d5\u30a1\u30a4\u30eb\u3092\u30bd\u30fc\u30c8\u3057\u3066\u30d5\u30a9\u30eb\u30c0\u3084\u30ab\u30c6\u30b4\u30ea\u3054\u3068\u306b\u683c\u7d0d\u3001 iTunes PCAST \u30d5\u30a1\u30a4\u30eb\u304a\u3088\u3073 OPML \u30ea\u30b9\u30c8\u304b\u3089\u306e URL \u306e\u30a4\u30f3\u30dd\u30fc\u30c8\u3001M3U \u304a\u3088\u3073 ASX \u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u306e\u81ea\u52d5\u751f\u6210\u3001\u305d\u3057\u3066\u53e4\u304f\u306a\u3063\u305f\u30d5\u30a1\u30a4\u30eb\u306e\u81ea\u52d5\u30af\u30ea\u30fc\u30f3\u30a2\u30c3\u30d7\u306e\u30b5\u30dd\u30fc\u30c8 \u304c\u7279\u5fb4\u3067\u3059\u3002\u307e\u305f\u3001MS Windows \u30b5\u30fc\u30d0\u4e0a\u306b\u30db\u30b9\u30c8\u3055\u308c\u305f podcast \u306e UTF-16 \u81ea\u52d5\u5909\u63db\u3082 \u7279\u5fb4\u3067\u3059\u3002 podget \u3092\u4e00\u65e6\u8d77\u52d5\u3059\u308b\u3068\u3001\u30e6\u30fc\u30b6\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u3092 $HOME/.podget \u306b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb \u3057\u307e\u3059\u306e\u3067\u3001\u305d\u306e\u30d5\u30a1\u30a4\u30eb\u3092\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3067\u304d\u307e\u3059\u3002\ncron\u306b\u7279\u5316\u3057\u3066\u3044\u3066\u4fbf\u5229\u305d\u3046\u306a\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3059\uff0e\n\u5c0e\u5165\nDebian stretch testing/Rasbian jessie/Ubuntu 14.04 \u3067\u78ba\u8a8d\u3057\u307e\u3057\u305f\uff0e\n$ sudo apt install podget\n\u521d\u671f\u5316\n$ podget -h Usage /usr/bin/podget [options]     -c --config <FILE>           Name of configuration file.    -C --cleanup                 Skip downloading and only run cleanup loop.    --cleanup_simulate           Skip downloading and simulate running                                 cleanup loop.                                 Display files to be deleted.    --cleanup_days               Number of days to retain files.  Anything                                 older will be removed.    -d --dir_config <DIRECTORY>  Directory that configuration files are                                 stored in.    -f --force                   Force download of items from each feed even                                 if they have already been downloaded.    --import_opml <FILE or URL>  Import servers from OPML file or                                 HTTP/FTP URL.    --import_pcast <FILE or URL> Import servers from iTunes PCAST file or                                 HTTP/FTP URL.    -l --library <DIRECTORY>     Directory to store downloaded files in.    -p --playlist-asx            In addition to the default M3U playlist,                                 create an ASX Playlist.    -r --recent <count>          Download only the <count> newest items from                                 each feed.    --serverlist <list>          Serverlist to use.    -s --silent                  Run silently (for cron jobs).    --verbosity <LEVEL>          Set verbosity level (0-4).    -v                           Set verbosity to level 1.    -vv                          Set verbosity to level 2.    -vvv                         Set verbosity to level 3.    -vvvv                        Set verbosity to level 4.    -h --help                    Display help.\n\u521d\u56de\u8d77\u52d5\u6642\u306b\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306a\u3069\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\uff0e\u5f15\u6570\u7121\u3057\u3067\u5b9f\u884c\u3059\u308b\u3068\u521d\u671f\u8a2d\u5b9a\u306e\u4e2d\u306epodcast\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3059\u308b\u306e\u3067--cleanup_simulate\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4ed8\u3051\u3066\u5b9f\u884c\u3059\u308b\u3068\u826f\u3055\u305d\u3046\u3067\u3059\uff0e\n\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306f\u898f\u5b9a\u5024\u3067\u306f~/.podget\u4ee5\u4e0b\u306b\u4f5c\u6210\u3055\u308c\u307e\u3059\uff0e\n$ podget --cleanup_simulate$ ls -lA ~/.podget\u5408\u8a08 8-rw-rw-r-- 1 mk mk 3652  2\u6708 19 05:34 podgetrc-rw-rw-r-- 1 mk mk 1131  2\u6708 19 05:34 serverlist\n\npodgetrc : \u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\nserverlist : podcast\u306e\u30ea\u30b9\u30c8\n\n\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e\u7528\u610f\n\u304a\u597d\u307f\u3067\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e~/podgetrc\u3092\u7de8\u96c6\u3057\u307e\u3059\uff0e\u79c1\u306f\u4ee5\u4e0b\u306e\u8fba\u308a\u3092\u66f8\u304d\u63db\u3048\u307e\u3057\u305f\uff0e\n\u30ed\u30b0\u30d5\u30a1\u30a4\u30eb\u3092\u6709\u52b9\u306b\n# Directory to store logs indir_log=/home/mk/POD/LOG\n\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u306e\u5e74\u6708\u65e5\u306e\u5f62\u5f0f\u3092\u66f8\u304d\u63db\u3048\n# Date format for new playlist namesdate_format=+%Y-%m-%d\nPodcast\u306e\u53d6\u5f97\u6570\u30923\u3064\u306b\n# Most Recent# 0  == download all new items.# 1+ == download only the <count> most recentmost_recent=3\n\u30b5\u30fc\u30d0\u30ea\u30b9\u30c8\u306e\u4f5c\u6210\n\u53d6\u5f97\u3059\u308bPodcast\u3092~/.podget/serverlist\u306b\u66f8\u3044\u3066\u3044\u304d\u307e\u3059\uff0e\n\u66f8\u5f0f\u306f\u30b9\u30da\u30fc\u30b9\u533a\u5207\u308a\u3067\n\nURL \u30ab\u30c6\u30b4\u30ea\u30fc \u756a\u7d44\u540d\n\n\u306b\u306a\u3063\u3066\u3044\u307e\u3059\uff0epodget\u3092\u5b9f\u884c\u3057\u305f\u6642\u306b\n\u30ab\u30c6\u30b4\u30ea\u30fc/\u756a\u7d44\u540d/\u756a\u7d44\u3068\u3044\u3046\u3075\u3046\u306b\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u304c\u6398\u3089\u308c\u307e\u3059\uff0e\n\u5177\u4f53\u7684\u306b\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u66f8\u3044\u3066\u3044\u304d\u307e\u3059\uff0e\nhttp://feeds.feedburner.com/weblogs/csc tech \u96fb\u8133\u7a7a\u9593\u30ab\u30a6\u30dc\u30fc\u30a4\u30bahttp://feeds.backspace.fm/backspacefm tech backspace.fmhttp://www.joqr.co.jp/science-podcast/index.xml science \u65e5\u7acb\u30cf\u30a4\u30c6\u30af\u30d7\u30ec\u30bc\u30f3\u30c4 \u5927\u6751\u6b63\u6a39\u306e\u30b5\u30a4\u30a8\u30f3\u30b9\u30ad\u30c3\u30bahttp://www.tbsradio.jp/life/rss.xml etc \u6587\u5316\u7cfb\u30c8\u30fc\u30af\u30e9\u30b8\u30aa Lifehttp://www.tbsradio.jp/cycle-r/index.xml bike \u30df\u30e9\u30af\u30eb\u30fb\u30b5\u30a4\u30af\u30eb\u30fb\u30e9\u30a4\u30d5http://sokoani.com/feed anime \u305d\u3053\u3042\u306b  :\n\u4ed6\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3089\u306e\u79fb\u884c\u3067OPML\u30d5\u30a1\u30a4\u30eb\u306e\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u304c\u53ef\u80fd\u306a\u5834\u5408\u306f\u305d\u306e\u30d5\u30a1\u30a4\u30eb\u3084URL\u3092\u5143\u306b\u30a4\u30f3\u30dd\u30fc\u30c8\u3067\u304d\u308b\u3088\u3046\u3067\u3059\uff0e\u203b\u672a\u78ba\u8a8d\n$ podget --import_opml <FILE or URL>\n\u82e5\u3057\u304f\u306fPCAST\u5f62\u5f0f(iTunes\u5411\u3051?)\u3082\u540c\u69d8\u306b\u5229\u7528\u3067\u304d\u308b\u3088\u3046\u3067\u3059\uff0e\u203b\u672a\u78ba\u8a8d\n$ podget --import_pcast <FILE or URL>\nOPML\u66f8\u304d\u51fa\u3057\u306e\u6a5f\u80fd\u3082\u3042\u308a\u307e\u3059\uff0e\u4f46\u3057\u3053\u306e\u6a5f\u80fd\u306f\nUbuntu 14.04\u306e0.6.9\u306b\u306f\u306a\u304f\uff0c\nRasbian jessie\u306e0.7.3\uff0c\nDebian stretch\u306e0.7.9\u306b\u306f\u5b58\u5728\u3057\u307e\u3057\u305f\uff0e\n$ podget --export_opml /tmp/podcast.opmlpodget Session file not found.  Creating podget.22189 . Export serverlist to OPML file: /tmp/podcast.opml Closing session and removing lock file.$ head /tmp/podcast.opml<?xml version="1.0" encoding="utf-8" ?><opml version="1.0"><head/><body><outline text="tech"><outline text="\u96fb\u8133\u7a7a\u9593\u30ab\u30a6\u30dc\u30fc\u30a4\u30ba" type="rss" xmlUrl="http://feeds.feedburner.com/weblogs/csc" /></outline><outline text="tech"><outline text="backspace.fm" type="rss" xmlUrl="http://feeds.backspace.fm/backspacefm" /></outline><outline text="science"><outline text="\u65e5\u7acb\u30cf\u30a4\u30c6\u30af\u30d7\u30ec\u30bc\u30f3\u30c4 \u5927\u6751\u6b63\u6a39\u306e\u30b5\u30a4\u30a8\u30f3\u30b9\u30ad\u30c3\u30ba" type="rss" xmlUrl="http://www.joqr.co.jp/science-podcast/index.xml" /></outline><outline text="etc"><outline text="\u6587\u5316\u7cfb\u30c8\u30fc\u30af\u30e9\u30b8\u30aa Life" type="rss" xmlUrl="http://www.tbsradio.jp/life/rss.xml" /></outline><outline text="bike"><outline text="\u30df\u30e9\u30af\u30eb\u30fb\u30b5\u30a4\u30af\u30eb\u30fb\u30e9\u30a4\u30d5" type="rss" xmlUrl="http://www.tbsradio.jp/cycle-r/index.xml" /></outline><outline text="anime"><outline text="\u305d\u3053\u3042\u306b" type="rss" xmlUrl="http://sokoani.com/feed" /></outline>\n\u5b9f\u884c\n\u3068\u308a\u3042\u3048\u305a\u5f15\u6570\u7121\u3057\u3067\u5b9f\u884c\u3059\u308b\u3053\u3068\u3067Podcast\u304c\u53d6\u5f97\u3067\u304d\u307e\u3059\uff0e\n$ podget-------------------------------------------------Category: anime         Name: \u305d\u3053\u3042\u306bDownloading feed index from http://sokoani.com/feed2016-02-19 07:37:15 URL:http://sokoani.com/feed [673868] -> "-" [1] Downloading 0_s413.mp3 from http://sokoani.com/podpress_trac/feed/9818/0/ : :\nPodcast\u306f\u898f\u5b9a\u5024\u3067\u306f~/POD\u4ee5\u4e0b\u306b\u30ab\u30c6\u30b4\u30ea/\u756a\u7d44\u540d/\u756a\u7d44\u30d5\u30a1\u30a4\u30eb\u306e\u5f62\u3067\u4fdd\u5b58\u3055\u308c\u307e\u3059\uff0e\n$ find ~/POD -type f | tail -3/home/mk/POD/etc/JUNK \u4f0a\u96c6\u9662\u5149 \u6df1\u591c\u306e\u99ac\u9e7f\u529b/files_20160216.mp3/home/mk/POD/etc/JUNK \u4f0a\u96c6\u9662\u5149 \u6df1\u591c\u306e\u99ac\u9e7f\u529b/files_20160202.mp3/home/mk/POD/etc/JUNK \u4f0a\u96c6\u9662\u5149 \u6df1\u591c\u306e\u99ac\u9e7f\u529b/files_20160209.mp3\n\u307e\u305f\uff0c~/POD/*.m3u\u3068\u30b9\u30c6\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u3082\u4f5c\u6210\u3055\u308c\u307e\u3059\uff0e\u3053\u308c\u306f\u5b9f\u884c\u5358\u4f4d\u3067\u4f5c\u3089\u308c\u308b\u306e\u304b\u306a?\n$ ls -l ~/POD/*.m3u-rw-rw-r-- 1 mk mk  946  2\u6708 19 07:14 /home/mk/POD/New-2016-02-19.m3u-rw-rw-r-- 1 mk mk 1924  2\u6708 19 07:50 /home/mk/POD/New-2016-02-19.r2.m3u\n\u3046\u307e\u304f\u52d5\u4f5c\u3059\u308b\u3088\u3046\u306a\u3089-s\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4ed8\u3051\u3066cron\u306b\u767b\u9332\u3057\u3066\u3042\u3052\u308b\u3068\u826f\u3055\u305d\u3046\u3067\u3059\uff0e\u4ee5\u4e0b\u306e\u4f8b\u3067\u306f\u6bce\u66423\u5206\u306bpodget\u3092\u5b9f\u884c\u3057\u3066\u3044\u307e\u3059\uff0e\n$ crontab -e$ crontab -l | tail -2# get podcast3 * * * *       podget -s\npodracer\u306fPodcast\u3092\u756a\u7d44\u95a2\u4fc2\u306a\u304f\u5b9f\u884c\u65e5\u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u4fdd\u5b58\u3055\u308c\u3066Podcast\u756a\u7d44\u3092\u63a2\u3057\u305f\u308a\u3059\u308b\u306e\u306b\u4e0d\u4fbf\u3067\u3057\u305f\u304cpodget\u3060\u3068\u30ab\u30c6\u30b4\u30ea\u3068\u756a\u7d44\u3067\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u304c\u5206\u304b\u308c\u308b\u306e\u3067\u4fbf\u5229\u3067\u3059\uff0e\n\u3057\u3070\u3089\u304f\u4f75\u7528\u3057\u3066\u307f\u3088\u3046\u3068\u601d\u3044\u307e\u3059\uff0e", "date_published": "2016-02-19T08:01:18+09:00", "date_modified": "2016-02-19T08:01:18+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Debian", "Linux", "podcast", "Rasbian_jessie", "stretch", "testing", "Ubuntu14.04", "trusty(14.04)", "Ubuntu" ] }, { "id": "http://matoken.org/blog/?p=1118", "url": "https://matoken.org/blog/2016/02/05/call-the-procconfig-gz-in-configs-module/", "title": "configs module\u3067/proc/config.gz\u3092\u547c\u3073\u51fa\u3059", "content_html": "

kernel build\u3057\u3088\u3046\u3068\u73fe\u5728\u306econfig\u3092\u30b3\u30d4\u30fc\u3057\u3088\u3046\u3068\u3057\u305f\u3068\u3053\u308d/boot\u4ee5\u4e0b\u306b\u3082/proc/config.gz\u3082\u898b\u5f53\u305f\u3089\u306a\u3044\uff0e\u3053\u3046\u3044\u3046\u5834\u5408configs\u3068\u3044\u3046\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u8aad\u307f\u8fbc\u3080\u3068/proc/config.gz\u304c\u51fa\u6765\u308b\u3089\u3057\u3044\uff0e

\n
$ ls -l /proc/config.gz
ls: cannot access /proc/config.gz: No such file or directory
$ ls -la /boot/config-*
ls: cannot access /boot/config-*: No such file or directory
$ sudo modprobe configs
$ lsmod|grep configs
configs                30516  0
$ ls -l /proc/config.gz
-r--r--r-- 1 root root 29305 Feb  4 18:34 /proc/config.gz
$ zcat /proc/config.gz > /usr/src/linux/.config
$ sudo rmmod configs
$ ls -l /proc/config.gz
ls: cannot access /proc/config.gz: No such file or directory
\n

\u3053\u308c\u306fRasbina jessie\u3067\u906d\u9047\u3057\u307e\u3057\u305f\uff0e
\nDebian stretch amd64\u3067\u3082\u8a66\u3057\u3066\u307f\u305f\u3068\u3053\u308dmodule\u304c\u3042\u308a\u307e\u305b\u3093\u3067\u3057\u305f\uff0e\u3067\u3082\u666e\u901a\u306b/boot/config-x.x.x\u304c\u3042\u308b\u306e\u3067\u56f0\u3089\u306a\u3044\u3067\u3059\uff0e

\n
$ sudo modprobe configs
modprobe: FATAL: Module configs not found in directory /lib/modules/4.3.0-1-amd64
\n

menuconfig\u3067\u306f\u3053\u306e\u8fba\u307f\u305f\u3044\u3067\u3059\uff0e

\n
General setup
  [*] Kernel .config support
    [*]   Enable access to .config through /proc/config.gz[*]   Enable access to .config through /proc/config.gz
\n", "content_text": "kernel build\u3057\u3088\u3046\u3068\u73fe\u5728\u306econfig\u3092\u30b3\u30d4\u30fc\u3057\u3088\u3046\u3068\u3057\u305f\u3068\u3053\u308d/boot\u4ee5\u4e0b\u306b\u3082/proc/config.gz\u3082\u898b\u5f53\u305f\u3089\u306a\u3044\uff0e\u3053\u3046\u3044\u3046\u5834\u5408configs\u3068\u3044\u3046\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u8aad\u307f\u8fbc\u3080\u3068/proc/config.gz\u304c\u51fa\u6765\u308b\u3089\u3057\u3044\uff0e\n$ ls -l /proc/config.gzls: cannot access /proc/config.gz: No such file or directory$ ls -la /boot/config-*ls: cannot access /boot/config-*: No such file or directory$ sudo modprobe configs$ lsmod|grep configsconfigs                30516  0$ ls -l /proc/config.gz-r--r--r-- 1 root root 29305 Feb  4 18:34 /proc/config.gz$ zcat /proc/config.gz > /usr/src/linux/.config$ sudo rmmod configs$ ls -l /proc/config.gzls: cannot access /proc/config.gz: No such file or directory\n\u3053\u308c\u306fRasbina jessie\u3067\u906d\u9047\u3057\u307e\u3057\u305f\uff0e\nDebian stretch amd64\u3067\u3082\u8a66\u3057\u3066\u307f\u305f\u3068\u3053\u308dmodule\u304c\u3042\u308a\u307e\u305b\u3093\u3067\u3057\u305f\uff0e\u3067\u3082\u666e\u901a\u306b/boot/config-x.x.x\u304c\u3042\u308b\u306e\u3067\u56f0\u3089\u306a\u3044\u3067\u3059\uff0e\n$ sudo modprobe configsmodprobe: FATAL: Module configs not found in directory /lib/modules/4.3.0-1-amd64\nmenuconfig\u3067\u306f\u3053\u306e\u8fba\u307f\u305f\u3044\u3067\u3059\uff0e\nGeneral setup  [*] Kernel .config support    [*]   Enable access to .config through /proc/config.gz[*]   Enable access to .config through /proc/config.gz", "date_published": "2016-02-05T18:09:30+09:00", "date_modified": "2016-02-05T18:46:59+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Linux", "Rasbian_jessie", "Raspberry Pi" ] }, { "id": "http://matoken.org/blog/?p=1116", "url": "https://matoken.org/blog/2016/02/04/to-a-little-better-the-sloppy-podcast-server/", "title": "\u96d1\u306aPadcast\u30b5\u30fc\u30d0\u3092\u5c11\u3057\u307e\u3057\u306b\u3059\u308b", "content_html": "

\n

\u5148\u65e5\u4f5c\u3063\u305fPodcast\u30b5\u30fc\u30d0\u3067\u3059\u304c\u3042\u308c\u304b\u3089\u305a\u3063\u3068\u52d5\u304b\u3057\u3066\u3044\u307e\u3059\u304c\u5b89\u5b9a\u3057\u3066\u52d5\u3044\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0e\u96d1\u3055\u3092\u307e\u3057\u306b\u3059\u308b\u305f\u3081\u306b\u5c11\u3057\u4fee\u6b63\u3057\u307e\u3057\u305f\uff0e

\n\n

\u30d7\u30ec\u30a4\u30e4\u30fc\u90e8\u5206\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u5c11\u3057\u5909\u308f\u308a\u307e\u3057\u305f\uff0e

\n
@reboot while true; do cvlc --ignore-config --extraintf=http --http-port=8081 --http-password='raspberry' ~/podcasts/todayspodcast.m3u --play-and-exit --norm-max-level=2.0 --sout='#transcode{acodec=mp3,ab=64,channels=1}:standard{access=http,mux=ts,dst=:8080}' ; done
40 * * * *      podracer ; cd ~/podcasts ; find . -mmin -1440 -type f -print0 | xargs -0n1 file | grep -i audio | cut -f1 -d: | xargs ls -1tr > ~/podcasts/todayspodcast.m3u
10 0 * * *  rm -rf ~/podcasts/`date --date '1 weeks ago' +\\%F`
\n\n

VLC\u306e\u30aa\u30d7\u30b7\u30e7\u30f3

\n\n

VLC\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u306fman\u306b\u306f\u3042\u307e\u308a\u8f09\u3063\u3066\u306a\u304f\u3066\u56f0\u3063\u3066\u3044\u305f\u306e\u3067\u3059\u304c\uff0cvlc -H\u306b\u5927\u91cf\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u8f09\u3063\u3066\u3044\u308b\u306e\u306b\u6c17\u3065\u3044\u3066\u304b\u3089\u306f\u304b\u3069\u308a\u307e\u3057\u305f\uff0e

\n
$ vlc -h| tail -1
\u7db2\u7f85\u7684\u306a\u30d8\u30eb\u30d7\u3092\u8868\u793a\u3059\u308b\u305f\u3081\u306b\u306f\u3001'-H'\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002
$ vlc -h | wc -l
372
$ vlc -H | wc -l
5674
\n

\u305d\u306e\u4ed6\u7d30\u304b\u3044\u3068\u3053\u308d\u3067

\n\n

\u3068\u3044\u3063\u305f\u8fba\u308a\u3082\u8a2d\u5b9a\u3057\u307e\u3057\u305f\u304c\u3053\u306e\u8fba\u306f\u4f55\u6642\u3082\u306e\u8a2d\u5b9a\u306a\u306e\u3067\u4eca\u56de\u306f\u7701\u7565\uff0e

\n

\u3068\uff0c\u3053\u3093\u306a\u611f\u3058\u3067\u3060\u3044\u305f\u3044\u3084\u308a\u305f\u3044\u3053\u3068\u306f\u51fa\u6765\u305f\u304b\u306a\u30fc\u3068\u3044\u3046\u611f\u3058\u3067\u3059\u304c\uff0cVLC\u3067\u306a\u304fMPD\u8fba\u308a\u3067\u66f2\u7ba1\u7406\u3057\u3066\u518d\u751f\uff0c\u914d\u4fe1\u306f\u307e\u305f\u5225\u30a2\u30d7\u30ea\u3067\u3084\u3063\u305f\u307b\u3046\u304c\u3044\u3044\u3088\u3046\u306a\u6c17\u3082\u3057\u3066\u304d\u307e\u3057\u305f\uff0eVLC\u306f1\u3064\u3067\u4f55\u3067\u3082\u3067\u304d\u308b\u3057\u30a6\u30a7\u30d6\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u3082\u3042\u3063\u3066\u3044\u3044\u306e\u3067\u3059\u304c\uff0cMPD\u306e\u65b9\u304c\u30ea\u30e2\u30fc\u30c8\u7ba1\u7406\u304c\u3057\u3084\u3059\u305d\u3046\u306a\u306e\u3067\u6c17\u304c\u5411\u3044\u305f\u3089\u305d\u3063\u3061\u3082\u7d44\u3080\u304b\u3082\u3067\u3059\uff0e

\n

\u4eca100\u5186\u30b7\u30e7\u30c3\u30d7\u306e\u30a4\u30e4\u30db\u30f3\u3092\u4f7f\u3063\u3066\u805e\u3044\u3066\u3044\u308b\u306e\u3067\u305d\u306e\u90e8\u5206\u304c\u4e00\u756a\u30b9\u30c8\u30ec\u30b9\u306a\u611f\u3058\u3067\u3059\uff0e

\n
\n

\n
\n", "content_text": "\u5148\u65e5\u4f5c\u3063\u305fPodcast\u30b5\u30fc\u30d0\u3067\u3059\u304c\u3042\u308c\u304b\u3089\u305a\u3063\u3068\u52d5\u304b\u3057\u3066\u3044\u307e\u3059\u304c\u5b89\u5b9a\u3057\u3066\u52d5\u3044\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0e\u96d1\u3055\u3092\u307e\u3057\u306b\u3059\u308b\u305f\u3081\u306b\u5c11\u3057\u4fee\u6b63\u3057\u307e\u3057\u305f\uff0e\n\nRaspberry Pi\u3067\u96d1\u3044podcast\u30b5\u30fc\u30d0\u3092\u4f5c\u3063\u305f | matoken\u2019s meme\n\n\u30d7\u30ec\u30a4\u30e4\u30fc\u90e8\u5206\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u5c11\u3057\u5909\u308f\u308a\u307e\u3057\u305f\uff0e\n@reboot while true; do cvlc --ignore-config --extraintf=http --http-port=8081 --http-password='raspberry' ~/podcasts/todayspodcast.m3u --play-and-exit --norm-max-level=2.0 --sout='#transcode{acodec=mp3,ab=64,channels=1}:standard{access=http,mux=ts,dst=:8080}' ; done40 * * * *      podracer ; cd ~/podcasts ; find . -mmin -1440 -type f -print0 | xargs -0n1 file | grep -i audio | cut -f1 -d: | xargs ls -1tr > ~/podcasts/todayspodcast.m3u10 0 * * *  rm -rf ~/podcasts/`date --date '1 weeks ago' +\\%F`\n\nkill\u305b\u305a\u306b1\u5468\u6bce\u306bVLC\u3092\u547c\u3076\u3088\u3046\u306b\u3057\u3066\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u66f4\u65b0\nPodcast\u53d6\u5f97\u30921\u6642\u9593\u306b1\u5ea6\u306b\u5909\u66f4\n\u30dc\u30ea\u30e5\u30fc\u30e0\u306e\u30ce\u30fc\u30de\u30e9\u30a4\u30ba\n\u30d3\u30c3\u30c8\u30ec\u30fc\u30c8\u309264k\u306b\u30ea\u30a2\u30eb\u30bf\u30a4\u30e0\u30a8\u30f3\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0\n\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u306e\u4f5c\u6210\u30821\u6642\u9593\u306b\u4e00\u5ea6\n\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u306e\u9806\u5e8f\u3092\u6642\u9593\u9806\u306b\u30bd\u30fc\u30c8\n\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u306e\u5185\u5bb9\u306f\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u4f5c\u6210\u6642\u304b\u3089\u904e\u53bb1\u65e5\u5206(1440\u5206)\n\u97f3\u6cc9\u306e\u756a\u7d44\u306b\u5bfe\u5fdc(RSS\u5316\u3057\u3066podracer\u306b\u767b\u9332\uff0e\u7c21\u5358\u3060\u3051\u3069\u516c\u958b\u3059\u308b\u3068\u6012\u3089\u308c\u305d\u3046\u306a\u6c17\u304c\u3059\u308b)\n\n\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u30e9\u30b8\u30aa\u30b9\u30c6\u30fc\u30b7\u30e7\u30f3\uff1c\u97f3\u6cc9\uff1e\n\n\n\nVLC\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\n\n--ignore-config\n\u8a2d\u5b9a\u3092\u8aad\u307f\u8fbc\u307f\u307e\u305b\u3093\n--extraintf=http\n\u30a6\u30a7\u30d6\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u3092\u6709\u52b9\u306b\n--http-port=8081\n\u30a6\u30a7\u30d6\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u5f85\u3061\u53d7\u3051\u30dd\u30fc\u30c8\u30928081\u756a\u306b\n--http-password='raspberry'\n\u30a6\u30a7\u30d6\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u8a8d\u8a3c\u30d1\u30b9\u30ef\u30fc\u30c9\u3092raspberry\u306b\n~/podcasts/todayspodcast.m3u\n\u518d\u751f\u30d5\u30a1\u30a4\u30eb(\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u3092\u6307\u5b9a)\n--play-and-exit\n\u518d\u751f\u5f8c\u7d42\u4e86\u3059\u308b\uff0e\u3053\u308c\u304c\u306a\u3044\u3068\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u3092\u518d\u751f\u5f8c\u3082\u8d77\u52d5\u3057\u3063\u3071\u306a\u3057\u306b\u306a\u3063\u3066\u6b21\u306e\u5468\u306b\u5165\u3089\u306a\u3044\uff0e(vlc://quit\u3067\u3082\u5927\u4e08\u592b\u3060\u304c\uff0cvlc://quit\u3060\u3068\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u306b\u3082\u8868\u793a\u3055\u308c\u308b)\n--norm-max-level=2.0\n\u30dc\u30ea\u30e5\u30fc\u30e0\u306e\u30ce\u30fc\u30de\u30e9\u30a4\u30ba\uff0e\u3053\u306e\u5024\u306f\u3082\u3046\u5c11\u3057\u3044\u3058\u3063\u305f\u307b\u3046\u304c\u3044\u3044\u304b\u3082?\n--sout='#transcode{acodec=mp3,ab=64,channels=1}\n\u30e2\u30ce\u30e9\u30eb64k\u306emp3\u306b\u5909\u63db\u3057\u3066\u3044\u308b\uff0ePodcast\u3092\u8abf\u3079\u308b\u3068\u6b86\u3069\u306e\u756a\u7d44\u304c64k\u3067\u4e00\u90e840,96,128,160\u304c\u6df7\u3058\u3063\u3066\u3044\u308b\uff0e1\u65e5\u8a66\u3057\u305f\u304c32k\u3067\u3082\u5927\u4e08\u592b\u305d\u3046\uff0e\nstandard{access=http,mux=ts,dst=:8080}\n8080\u756a\u30dd\u30fc\u30c8\u3067HTTP\u30e9\u30a4\u30d6\u30b9\u30c8\u30ea\u30fc\u30df\u30f3\u30b0\u914d\u4fe1\n\nVLC\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u306fman\u306b\u306f\u3042\u307e\u308a\u8f09\u3063\u3066\u306a\u304f\u3066\u56f0\u3063\u3066\u3044\u305f\u306e\u3067\u3059\u304c\uff0cvlc -H\u306b\u5927\u91cf\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u8f09\u3063\u3066\u3044\u308b\u306e\u306b\u6c17\u3065\u3044\u3066\u304b\u3089\u306f\u304b\u3069\u308a\u307e\u3057\u305f\uff0e\n$ vlc -h| tail -1\u7db2\u7f85\u7684\u306a\u30d8\u30eb\u30d7\u3092\u8868\u793a\u3059\u308b\u305f\u3081\u306b\u306f\u3001'-H'\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002$ vlc -h | wc -l372$ vlc -H | wc -l5674\n\u305d\u306e\u4ed6\u7d30\u304b\u3044\u3068\u3053\u308d\u3067\n\n\u8a2d\u7f6e\u5834\u6240\u306e\u5909\u66f4\nDNS\u306b\u540d\u524d\u3092\u767b\u9332\u3057\u3066\u56fa\u5b9aIP\u306b(Android\u3067\u3082\u540d\u524d\u3067\u30a2\u30af\u30bb\u30b9\u53ef\u80fd\u306b)\n\u5408\u308f\u305b\u3066\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u7b49\u306eurl\u3092\u540d\u524d\u306b\nhostname\u306e\u5909\u66f4\nsshd\u8a2d\u5b9a\niptable\u8a2d\u5b9a\nOS\u306e\u81ea\u52d5\u66f4\u65b0\u8a2d\u5b9a\nwatch dog\u306e\u8a2d\u5b9a\n\n\u3068\u3044\u3063\u305f\u8fba\u308a\u3082\u8a2d\u5b9a\u3057\u307e\u3057\u305f\u304c\u3053\u306e\u8fba\u306f\u4f55\u6642\u3082\u306e\u8a2d\u5b9a\u306a\u306e\u3067\u4eca\u56de\u306f\u7701\u7565\uff0e\n\u3068\uff0c\u3053\u3093\u306a\u611f\u3058\u3067\u3060\u3044\u305f\u3044\u3084\u308a\u305f\u3044\u3053\u3068\u306f\u51fa\u6765\u305f\u304b\u306a\u30fc\u3068\u3044\u3046\u611f\u3058\u3067\u3059\u304c\uff0cVLC\u3067\u306a\u304fMPD\u8fba\u308a\u3067\u66f2\u7ba1\u7406\u3057\u3066\u518d\u751f\uff0c\u914d\u4fe1\u306f\u307e\u305f\u5225\u30a2\u30d7\u30ea\u3067\u3084\u3063\u305f\u307b\u3046\u304c\u3044\u3044\u3088\u3046\u306a\u6c17\u3082\u3057\u3066\u304d\u307e\u3057\u305f\uff0eVLC\u306f1\u3064\u3067\u4f55\u3067\u3082\u3067\u304d\u308b\u3057\u30a6\u30a7\u30d6\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u3082\u3042\u3063\u3066\u3044\u3044\u306e\u3067\u3059\u304c\uff0cMPD\u306e\u65b9\u304c\u30ea\u30e2\u30fc\u30c8\u7ba1\u7406\u304c\u3057\u3084\u3059\u305d\u3046\u306a\u306e\u3067\u6c17\u304c\u5411\u3044\u305f\u3089\u305d\u3063\u3061\u3082\u7d44\u3080\u304b\u3082\u3067\u3059\uff0e\n\u4eca100\u5186\u30b7\u30e7\u30c3\u30d7\u306e\u30a4\u30e4\u30db\u30f3\u3092\u4f7f\u3063\u3066\u805e\u3044\u3066\u3044\u308b\u306e\u3067\u305d\u306e\u90e8\u5206\u304c\u4e00\u756a\u30b9\u30c8\u30ec\u30b9\u306a\u611f\u3058\u3067\u3059\uff0e", "date_published": "2016-02-04T22:39:54+09:00", "date_modified": "2016-02-04T22:39:54+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Jessie", "Linux", "podcast", "Rasbian", "RaspberryPi", "Rasbian_jessie", "Raspberry Pi" ] }, { "id": "http://matoken.org/blog/?p=1111", "url": "https://matoken.org/blog/2016/02/04/pitft-of-raspberry-pi-could-not-be-used-widely-in-the-virtual-screen-scrolling/", "title": "Raspberry Pi\u306e\u5c0f\u3055\u306a\u6db2\u6676\u306ePiTFT\u3092\u4eee\u60f3\u753b\u9762\u30b9\u30af\u30ed\u30fc\u30eb\u3067\u5e83\u304f\u4f7f\u3044\u305f\u304b\u3063\u305f\u3051\u3069\u632b\u6298", "content_html": "

\n

\"IMGP2681\"

\n

Raspberry Pi\u7528\u3067Adaruit\u88fd\u306eGPIO\u7d4c\u7531(SPI)\u3067\u63a5\u7d9a\u3059\u308b320×240 2.8"\u306e\u30bf\u30c3\u30c1\u30b9\u30af\u30ea\u30fc\u30f3\u4ed8\u304d\u306e\u30c7\u30a3\u30b9\u30d7\u30ec\u30a4\uff0e\u52d5\u4f5c\u306b\u306f\u5c02\u7528\u306e\u30c9\u30e9\u30a4\u30d0\u304c\u5fc5\u8981\uff0e\u30c9\u30e9\u30a4\u30d0\u306fsource\u306e\u4ed6\u306bAdaruit\u304cRasbian\u306b\u7d44\u307f\u8fbc\u307f\u6e08\u307f\u306e\u3082\u306e\u3068\uff0c\u30d3\u30eb\u30c9\u6e08\u307f\u306e\u30ea\u30dd\u30b8\u30c8\u30ea\u304c\u7528\u610f\u3055\u308c\u3066\u3044\u308b\uff0e

\n\n

Afafruit\u8b39\u88fd\u306eOS\u30a4\u30e1\u30fc\u30b8\u5165\u624b

\n

\u901a\u5e38\u306eRasbian\u306bAdafruit\u306e\u30ea\u30dd\u30b8\u30c8\u30ea\u3092\u8ffd\u52a0\u3059\u308b\u65b9\u6cd5\u3068\uff0c\u305d\u308c\u3092\u53cd\u6620\u6e08\u307f\u306eOS\u30a4\u30e1\u30fc\u30b8\u3092\u4f7f\u3046\u65b9\u6cd5(\u3068\u81ea\u5206\u3067build\u3059\u308b\u65b9\u6cd5)\u304c\u3042\u308b\uff0e\u3053\u3053\u3067\u306f\u624b\u9806\u306e\u5c11\u306a\u3044Afafruit\u8b39\u88fd\u306eOS\u30a4\u30e1\u30fc\u30b8\u3092\u5229\u7528\u3059\u308b\uff0e\u3053\u3061\u3089\u304b\u3089wheesy/jessie\u306e\u3082\u306e\u304c\u5165\u624b\u53ef\u80fd\uff0e

\n\n

\u4eca\u56de\u306fjessie(2015-09-24-raspbian-jessie-pitft28r.zip)\u3092\u5229\u7528\uff0ehash\u3084\u7f72\u540d\u306f\u898b\u5f53\u305f\u3089\u305a\uff0e\u624b\u5143\u3067\u306f\u3053\u3093\u306a\u611f\u3058\u3060\u3063\u305f\uff0e

\n
$ md5sum 2015-09-24-raspbian-jessie-pitft28r.zip
e78c764abbd3426d63d9ae7180fcdfa8  2015-09-24-raspbian-jessie-pitft28r.zip
$ sha512sum 2015-09-24-raspbian-jessie-pitft28r.zip
a6be01345be6030aaf0bc85293a946be4db54e80a42dbbab0034ddff3c21e842fc10f7f066acd605ffd9d16b6d43e14631e7d5a969a7f2a0869d7d00f013d8fd  2015-09-24-raspbian-jessie-pitft28r.zip
\n

SD Card\u30c7\u30d0\u30a4\u30b9\u78ba\u8a8d

\n
$ dmesg | tail -3
[793679.349596] mmc0: new high speed SDHC card at address 59b4
[793679.350315] mmcblk0: mmc0:59b4 USDU1 14.9 GiB
[793679.351411]  mmcblk0: p1 p2 p3
$ sudo fdisk -l /dev/mmcblk0
Disk /dev/mmcblk0: 15 GiB, 16088301568 bytes, 31422464 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xb3c5e39a
 
Device         Boot    Start      End  Sectors  Size Id Type
/dev/mmcblk0p1          8192   131071   122880   60M  c W95 FAT32 (LBA)
/dev/mmcblk0p2        131072 27228158 27097087 12.9G 83 Linux
/dev/mmcblk0p3      27228159 31422463  4194305    2G 83 Linux
$ mount|grep /dev/mmcblk0
\n

\u30d1\u30fc\u30c6\u30a3\u30b7\u30e7\u30f3\u60c5\u5831\u306e\u78ba\u8a8d\u3068\u6d88\u53bb

\n
$ sudo wipefs /dev/mmcblk0
offset               type
----------------------------------------------------------------
0x1fe                dos   [partition table]
 
$ sudo wipefs -a /dev/mmcblk0
/dev/mmcblk0: 2 bytes were erased at offset 0x000001fe (dos): 55 aa
/dev/mmcblk0: calling ioctl to re-read partition table: \u6210\u529f\u3067\u3059
$ sudo wipefs /dev/mmcblk0
\n

\u203bMac/Windows\u3067\u306f\u3053\u306e\u8fba\u3092\u4f7f\u3046\u3068\u3044\u3044\u3068\u601d\u3046\uff0e

\n\n

\u30a4\u30e1\u30fc\u30b8\u66f8\u304d\u8fbc\u307f

\n
$ unzip -p 2015-09-24-raspbian-jessie-pitft28r.zip | pv | sudo ionice -c2 dd of=/dev/mmcblk0 bs=4M
4.03GiB 0:05:58 [11.5MiB/s] [                                                                                                              <=>                         ]
0+36176 \u30ec\u30b3\u30fc\u30c9\u5165\u529b
0+36176 \u30ec\u30b3\u30fc\u30c9\u51fa\u529b
4325376000 \u30d0\u30a4\u30c8 (4.3 GB) \u30b3\u30d4\u30fc\u3055\u308c\u307e\u3057\u305f\u3001 452.676 \u79d2\u3001 9.6 MB/\u79d2
$ sync
$ sync
$ mount|grep /dev/mmcblk0
\n

\u30b3\u30de\u30f3\u30c9\u306e\u610f\u5473\u306a\u3069\u306f\u3053\u3061\u3089\u3092

\n\n

\u66f8\u304d\u8fbc\u3093\u3060SD Card\u3092PiTFT\u306e\u7e4b\u304c\u3063\u305fRaspberry Pi\u306b\u633f\u5165\u3057\u3066\u8d77\u52d5\u3059\u308b\u3068X\u304c\u81ea\u52d5\u8d77\u52d5\u3057\u3066LXDE\u306bpi\u30e6\u30fc\u30b6\u3067\u81ea\u52d5\u30ed\u30b0\u30a4\u30f3\u3057\u305f\u72b6\u614b\u306b\u306a\u308b\uff0e

\n

\u30ea\u30e2\u30fc\u30c8\u63a5\u7d9a(ssh)

\n

Rasbian jessie\u306f\u521d\u671f\u72b6\u614b\u3067avahi&ssh\u304c\u8d77\u52d5\u3057\u3066\u3044\u308b\u306e\u3067IP\u30a2\u30c9\u30ec\u30b9\u3092\u8abf\u3079\u306a\u304f\u3066\u3082\u63a5\u7d9a\u3067\u304d\u3066\u4fbf\u5229\uff0e

\n
$ ssh pi@raspberrypi.local -CY
\n

\u30ea\u30e2\u30fc\u30c8\u63a5\u7d9a(vnc)

\n

x11vnc\u3092\u4f7f\u3063\u3066vino\u307f\u305f\u3044\u306b\u65e2\u306b\u8d77\u52d5\u3057\u3066\u3044\u308bX\u753b\u9762(DISPLAY=:0)\u3092\u8ee2\u9001

\n
$ sudo apt install x11vnc
$ x11vnc -display :0 &
\n

\u30ea\u30dd\u30b8\u30c8\u30ea\u30b5\u30fc\u30d0\u306e\u65e5\u672c\u3078\u306e\u5207\u308a\u66ff\u3048\u3068\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8

\n
$ sudo apt edit-sources
$ cat /etc/apt/sources.list
deb http://ftp.tsukuba.wide.ad.jp/Linux/raspbian/raspbian/  jessie main contrib non-free rpi
deb-src http://ftp.tsukuba.wide.ad.jp/Linux/raspbian/raspbian/  jessie main contrib non-free rpi
deb http://apt.adafruit.com/raspbian/ jessie main
$ sudo apt update && sudo apt upgrade
\n

X\u306e\u78ba\u8a8d

\n
$ ps -ef|grep X
root       557   550  0 05:50 tty7     00:00:01 /usr/bin/X :0 -seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch
pi         733   698  0 05:50 ?        00:00:00 /usr/bin/lxsession -s LXDE-pi -e LXDE
pi         837   733  1 05:51 ?        00:00:02 lxpanel --profile LXDE-pi
pi         838   733  0 05:51 ?        00:00:01 pcmanfm --desktop --profile LXDE-pi
pi         968   942  0 05:55 pts/0    00:00:00 grep --color=auto X
$ DISPLAY=:0 xrandr --verbose
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 320 x 240, current 320 x 240, maximum 320 x 240
default connected 320x240+0+0 (0x4f) normal (normal) 0mm x 0mm
        Identifier: 0x4e
        Timestamp:  35831
        Subpixel:   unknown
        Clones:
        CRTC:       0
        CRTCs:      0
        Transform:  1.000000 0.000000 0.000000
                    0.000000 1.000000 0.000000
                    0.000000 0.000000 1.000000
                   filter:
  320x240 (0x4f)  0.000MHz *current
        h: width   320 start    0 end    0 total  320 skew    0 clock   0.00KHz
        v: height  240 start    0 end    0 total  240           clock   0.00Hz
$ ls -l /dev/fb*
crw-rw---- 1 root video 29, 0 Sep 24 17:32 /dev/fb0
crw-rw---- 1 root video 29, 1 Feb  3 05:52 /dev/fb1
\n

PiTFT\u5206\u306eX\u3060\u3051\u304c\u8d77\u52d5\u3057\u3066\u3044\u3066\uff0c\u30c7\u30a3\u30b9\u30d7\u30ec\u30a4\u756a\u53f7\u306f:0\u306e\u3088\u3046\uff0e\u89e3\u50cf\u5ea6\u306f320x240\u3060\u3051\uff0e\u30e2\u30cb\u30bf\u540d\u306fdefault?

\n

XRandR\u306epanning\u3092\u4f7f\u3063\u3066\u753b\u9762\u3092\u30b9\u30af\u30ed\u30fc\u30eb\u3057\u3066\u5e83\u304f\u4f7f\u3046(\u5931\u6557)

\n

\u3084\u3063\u3068\u672c\u984c\uff0e
\nxrandr\u306eman\u3092\u898b\u308b\u3068panning\u3068\u3044\u3046\u305d\u308c\u3089\u3057\u3044\u8a2d\u5b9a\u304c\uff0e

\n
       Per-output options
 
       --panning widthxheight[+x+y[/track_widthxtrack_height+track_x+track_y[/border_left/border_top/border_right/border_bottom]]]
              This option sets the panning parameters.  As soon as panning is enabled, the CRTC position can change with every pointer move.  The first four param\u2010
              eters specify the total panning area, the next four the pointer tracking area (which defaults to the same area). The last four parameters specify the
              border and default to 0. A width or height set to zero disables panning on the according axis. You typically have to set the screen  size  with  --fb
              simultaneously.
 
       --transform a,b,c,d,e,f,g,h,i
              Specifies a transformation matrix to apply on the output. Automatically a bilinear filter is selected.  The mathematical form corresponds to:
                     a b c
                     d e f
                     g h i
              The transformation is based on homogeneous coordinates. The matrix multiplied by the coordinate vector of a pixel of the output gives the transformed
              coordinate vector of a pixel in the graphic buffer.  More precisely, the vector (x y) of the output pixel is extended to 3 values (x y w), with 1  as
              the  w coordinate and multiplied against the matrix. The final device coordinates of the pixel are then calculated with the so-called homogenic divi\u2010
              sion by the transformed w coordinate.  In other words, the device coordinates (x' y') of the transformed pixel are:
                     x' = (ax + by + c) / w'   and
                     y' = (dx + ey + f) / w'   ,
                     with  w' = (gx + hy + i)  .
              Typically, a and e corresponds to the scaling on the X and Y axes, c and f corresponds to the translation on those axes, and g, h, and i are  respec\u2010
              tively  0,  0 and 1. The matrix can also be used to express more complex transformations such as keystone correction, or rotation.  For a rotation of
              an angle T, this formula can be used:
                     cos T  -sin T   0
                     sin T   cos T   0
                      0       0      1
              As a special argument, instead of passing a matrix, one can pass the string none, in which case the default values are used (a  unit  matrix  without
              filter).
 
       --scale xxy
              Changes  the  dimensions  of the output picture. Values superior to 1 will lead to a compressed screen (screen dimension bigger than the dimension of
              the output mode), and values below 1 leads to a zoom in on the output. This option is actually a shortcut version of the --transform option.
 
       --scale-from wxh
              Specifies the size in pixels of the area of the framebuffer to be displayed on this output.  This option  is  actually  a  shortcut  version  of  the
              --transform option.
 
       --primary
              Set the output as primary.  It will be sorted first in Xinerama and RANDR geometry requests.
\n

\u3061\u3087\u3063\u3068\u8907\u96d1\u305d\u3046\uff0exrandr\u306eGUI\u306e\u76ae\u306earandr/lxrandr\u3067\u8a2d\u5b9a\u3067\u304d\u308b\u3068\u4fbf\u5229\u306a\u3093\u3060\u308d\u3046\u3051\u3069\u5b9f\u88c5\u3055\u308c\u305f\u6a5f\u80fd\u304c\u5c11\u306a\u304f\u3066\u3053\u306e\u5f53\u305f\u308a\u306e\u8a2d\u5b9a\u306f\u4f7f\u3048\u306a\u3044\u611f\u3058\u3067\u6b8b\u5ff5\uff0e
\n\uff03arandr\u306f\u5916\u90e8\u30e2\u30cb\u30bf\u306e\u8a2d\u5b9a\u3084\u89e3\u50cf\u5ea6\u306e\u5909\u66f4\u306b\u306f\u3088\u304f\u4f7f\u3063\u3066\u307e\u3059\uff0e

\n

XRandR\u3092\u624b\u52d5\u3067\u8a2d\u5b9a\u3057\u3066mode\u306e\u767b\u9332\u3092\u8a66\u307f\u308b

\n

cvt\u30b3\u30de\u30f3\u30c9\u3067\u53d6\u5f97\u3057\u305f\u5024\u3092xrandr\u306b\u6e21\u3059\u3068\u3044\u3044\u306f\u305a\u3060\u3051\u3069\u3046\u307e\u304f\u884c\u304b\u306a\u3044\uff0e

\n
$ cvt 800 600
# 800x600 59.86 Hz (CVT 0.48M3) hsync: 37.35 kHz; pclk: 38.25 MHz
Modeline "800x600_60.00"   38.25  800 832 912 1024  600 603 607 624 -hsync +vsync
$ xrandr --newmode "800x600_60.00"   38.25  800 832 912 1024  600 603 607 624 -hsync +vsync
$ xrandr --addmode default 800x600_60.00
xrandr: cannot find output "default"
$ DISPLAY=:0 xrandr --addmode default 800x600_60.00
xrandr: Failed to get size of gamma for output default
xrandr: cannot find mode "800x600_60.00"
$ DISPLAY=:0 xrandr --addmode default 800x600_60.00
xrandr: Failed to get size of gamma for output default
xrandr: cannot find mode "800x600_60.00"
\n

PC(i915\u306aDebian stretch amd64)\u3067\u306f\u60f3\u5b9a\u3057\u305f\u52d5\u4f5c\u306b\u306a\u3063\u305f\uff0e
\n\u3053\u306e\u4f8b\u3067\u306f\u5b58\u5728\u3059\u308b\u30e2\u30fc\u30c9\u3088\u308a\u3082\u5e83\u30441904×720\u306e\u30e2\u30fc\u30c9\u3092\u8ffd\u52a0\u3057\u305f\u5f8c\uff0c\u753b\u9762\u306e\u30e2\u30fc\u30c9\u3092640×480\u306b\u3057\u3066\u4eee\u60f3\u30b9\u30af\u30ea\u30fc\u30f3\u30921904×720\u306b\u3057\u3066\u3044\u308b\uff0e\u30de\u30a6\u30b9\u30ab\u30fc\u30bd\u30eb\u3092\u7aef\u306b\u6301\u3063\u3066\u884c\u304f\u3068\u81ea\u52d5\u30b9\u30af\u30ed\u30fc\u30eb\u3059\u308b\uff0e

\n
$ xrandr | grep LVDS1 -A5
LVDS1 connected 1366x768+0+0 (normal left inverted right x axis y axis) 277mm x 156mm panning 1366x768+0+0
   1366x768      60.00*+
   1360x768      59.80    59.96  
   1024x768      60.00  
   800x600       60.32    56.25  
   640x480       59.94  
$ cvt 1904 720
# 1904x720 59.97 Hz (CVT) hsync: 44.86 kHz; pclk: 111.25 MHz
Modeline "1904x720_60.00"  111.25  1904 2000 2192 2480  720 723 733 748 -hsync +vsync
$ cvt 1904 720
# 1904x720 59.97 Hz (CVT) hsync: 44.86 kHz; pclk: 111.25 MHz
Modeline "1904x720_60.00"  111.25  1904 2000 2192 2480  720 723 733 748 -hsync +vsync
$ xrandr --newmode "1904x720_60.00"  111.25  1904 2000 2192 2480  720 723 733 748 -hsync +vsync
$ xrandr --addmode VGA1 1904x720_60.00
$ xrandr --output LVDS1 --mode 640x480 --panning 1904x720
\n

\u305d\u3082\u305d\u3082panning\u306fmode\u3092\u8ffd\u52a0\u3057\u306a\u304f\u3066\u3082\u4f7f\u3048\u308b\u3088\u3046\u3060\uff0e

\n
$ xrandr --output LVDS1 --mode 1366x768 --panning 2000x768
$ xrandr --output LVDS1 --mode 1366x768 --panning 2732x1536 --scale 2x2
\n

\u3068\u3044\u3046\u3053\u3068\u306f\u3053\u308c\u3060\u3051\u3067\u3044\u3044\u306f\u305a\u3060\u3051\u3069\u30e2\u30cb\u30bf\u540d\u304c\u3046\u307e\u304f\u884c\u3051\u3066\u306a\u3044\uff0e\u30e2\u30cb\u30bf\u540d\u3092\u30c9\u30e9\u30a4\u30d0\u3067\u3061\u3083\u3093\u3068\u8a2d\u5b9a\u3057\u3066\u306a\u3044?

\n
$ DISPLAY=:0 xrandr default --mode 320x240 --panning 800x600
xrandr: unrecognized option 'default'
Try 'xrandr --help' for more information.$ DISPLAY=:0 xrandr default --mode 320x240 --panning 800x600
xrandr: unrecognized option 'default'
Try 'xrandr --help' for more information.
\n

Adafruit\u306e\u30d5\u30a9\u30fc\u30e9\u30e0\u306b\u540c\u3058\u8cea\u554f\u304c\u3042\u3063\u305f\u3051\u3069\u52d5\u3044\u3066\u7121\u3055\u305d\u3046\uff0e

\n\n

\u3082\u3046\u5c11\u3057\u53e9\u3044\u3066\u307f\u305f\u3089\u30e2\u30cb\u30bf\u540d\u306fdefault\u3067OK\u306e\u3088\u3046\uff0e320×240\u3088\u308a\u5c0f\u3055\u306amode\u3092\u4f5c\u3063\u3066\u307f\u3066\u3082\u30c0\u30e1\uff0e
\nxrandr\u30b3\u30de\u30f3\u30c9\u3092\u5f15\u6570\u7121\u3057\u3067\u5b9f\u884c\u3057\u305f\u6642\u306emaximum 320 x 240\u304c\u3044\u3051\u306a\u3044\u306e\u304b\u3082\uff0ePC\u3067\u306fmaximum 32767 x 32767\u3068\u6050\u3089\u304f\u30d3\u30c7\u30aa\u30ab\u30fc\u30c9\u306e\u6700\u5927\u89e3\u50cf\u5ea6\u3067\u3042\u308d\u3046\u5024\u304c\u8868\u793a\u3055\u308c\u308b\uff0eVRAM\u3092\u5897\u3084\u3057\u305f\u308a\u3059\u308b\u3068\u884c\u3051\u308b\u3051\u308b\u306e\u304b\u3082\u3057\u308c\u306a\u3044\uff0e

\n
$ DISPLAY=:0 xrandr
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 320 x 240, current 320 x 240, maximum 320 x 240
default connected 320x240+0+0 0mm x 0mm
   320x240        0.00*
$ DISPLAY=:0 xrandr --output default --auto --mode 320x240 --panning 800x600
xrandr: Failed to get size of gamma for output default
xrandr: screen cannot be larger than 320x240 (desired size 800x600)
$ DISPLAY=:0 xrandr --output default --auto --mode 160x120 --panning 320x240
xrandr: cannot find mode 160x120
$ cvt 160 120
# 160x120 50.08 Hz (CVT 0.02M3) hsync: 6.51 kHz; pclk: 1.25 MHz
Modeline "160x120_60.00"    1.25  160 168 176 192  120 123 127 130 -hsync +vsync
$ xrandr --newmode "160x120_60.00"    1.25  160 168 176 192  120 123 127 130 -hsync +vsync
$ DISPLAY=:0 xrandr --newmode "160x120_60.00"    1.25  160 168 176 192  120 123 127 130 -hsync +vsync
xrandr: Failed to get size of gamma for output default
$ DISPLAY=:0 xrandr --addmode default 160x120_60.00
xrandr: Failed to get size of gamma for output default
$ DISPLAY=:0 xrandr
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 320 x 240, current 320 x 240, maximum 320 x 240
default connected 320x240+0+0 0mm x 0mm
   320x240        0.00*
   160x120_60.00  50.08  
pi@raspberrypi ~ $ DISPLAY=:0 xrandr --output default --auto --mode 160x120_60.00 --panning 320x240
xrandr: Failed to get size of gamma for output default
xrandr: Configure crtc 0 failed
\n

\u6050\u3089\u304f\u3053\u308c\u4ee5\u4e0a\u306fsource\u3092\u4fee\u6b63\u3057\u306a\u3044\u3068\u30c0\u30e1\u3060\u3068\u601d\u3046\uff0e

\n

fbcp\u3092\u5229\u7528\u3057\u3066Raspberry Pi\u6a19\u6e96\u306e\u30c7\u30a3\u30b9\u30d7\u30ec\u30a4\u3092\u30b3\u30d4\u30fc\u3057\u3066\u5229\u7528

\n

\u30d5\u30ec\u30fc\u30e0\u30d0\u30c3\u30d5\u30a1\u3092\u30b3\u30d4\u30fc\u3059\u308bfbcp\u3092\u5229\u7528\u3059\u308b\u65b9\u6cd5\uff0e\u4fbf\u5229\u3060\u3051\u3069\u30bf\u30c3\u30c1\u30d1\u30cd\u30eb\u6a5f\u80fd\u304c\u4f7f\u3048\u306a\u3044\uff0e

\n\n

\u5185\u8535\u304c/dev/fb0\u3067PiTFT\u304c/dev/fb1\u306b\u306a\u3063\u3066\u3044\u308b\u306e\u3067\u901a\u5e38\u306eRaspberry Pi\u3067\u884c\u3063\u305f\u8a2d\u5b9a\u3092\u305d\u306e\u307e\u307ePiTFT\u306e\u753b\u9762\u306b\u6620\u3059\u3053\u3068\u304c\u51fa\u6765\u308b\uff0e
\n\u30d5\u30ec\u30fc\u30e0\u30d0\u30c3\u30d5\u30a1\u306e\u30b3\u30d4\u30fc\u306a\u306e\u3067X\u3060\u3051\u3067\u306a\u304f\u30b3\u30f3\u30bd\u30fc\u30eb\u5229\u7528\u6642\u306b\u3082\u4f7f\u3048\u308b\uff0e

\n

fbcp\u306ebuild

\n
$ sudo apt install cmake
$ git clone https://github.com/tasanakorn/rpi-fbcp.git
$ cd rpi-fbcp
$ mkdir build
$ cd build
$ cmake ..
$ make
\n

fbcp\u30b3\u30de\u30f3\u30c9\u3092\u9069\u5f53\u306a\u5834\u6240\u306b\u7f6e\u304f\uff0e

\n
$ sudo cp fbcp /usr/local/bin/
\n

/dev/fb1\u3092\u6307\u5b9a\u3057\u3066\u3044\u308b\u30d5\u30a1\u30a4\u30eb\u3092\u9000\u907f\u3057\u3066\uff0c\u8d77\u52d5\u6642\u306bfbcp\u3092\u8d77\u52d5\u3059\u308b\u3088\u3046\u8a2d\u5b9a\u3057\u3066\u518d\u8d77\u52d5\uff0e

\n
$ sudo mv /etc/X11/xorg.conf.d/99-fbdev.conf ~pi/99-fbdev.conf
$ sudo sed -i 's/exit/\\/usr\\/local\\/bin\\/fbcp \\&\\n\\nexit/g' /etc/rc.local
$ sudo reboot
\n

\u30b3\u30f3\u30bd\u30fc\u30eb\u306e\u9014\u4e2d\u304b\u3089fbcp\u304c\u52d5\u4f5c\u3057\u3066X\u3082\u8868\u793a\u3055\u308c\u308b\uff0e\u89e3\u50cf\u5ea6\u306f656×416\u306b\u306a\u3063\u3066\u3044\u308b\uff0e\u3082\u3063\u3068\u9ad8\u89e3\u50cf\u5ea6\u306b\u3082\u3067\u304d\u308b\u304c\u4f7f\u3044\u3084\u3059\u3055\u3092\u8003\u3048\u308b\u3068\u3053\u306e\u304f\u3089\u3044\u3067\u3044\u3044\u3068\u601d\u3046\uff0e

\n
$ DISPLAY=:0 xrandr --verbose
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 656 x 416, current 656 x 416, maximum 656 x 416
default connected 656x416+0+0 (0x4f) normal (normal) 0mm x 0mm
        Identifier: 0x4e
        Timestamp:  19289
        Subpixel:   unknown
        Clones:    
        CRTC:       0
        CRTCs:      0
        Transform:  1.000000 0.000000 0.000000
                    0.000000 1.000000 0.000000
                    0.000000 0.000000 1.000000
                   filter:
  656x416 (0x4f)  0.000MHz *current
        h: width   656 start    0 end    0 total  656 skew    0 clock   0.00KHz
        v: height  416 start    0 end    0 total  416           clock   0.00Hz
\n

\u904e\u53bb\u306e\u8a66\u307f

\n

\n
RaspberryPi \u3092\u6301\u3061\u904b\u3073\u30d1\u30bd\u30b3\u30f3\u3068\u3057\u3066\u4f7f\u3044\u305f\u3044 from Kenichiro MATOHARA

\n", "content_text": "Raspberry Pi\u7528\u3067Adaruit\u88fd\u306eGPIO\u7d4c\u7531(SPI)\u3067\u63a5\u7d9a\u3059\u308b320×240 2.8"\u306e\u30bf\u30c3\u30c1\u30b9\u30af\u30ea\u30fc\u30f3\u4ed8\u304d\u306e\u30c7\u30a3\u30b9\u30d7\u30ec\u30a4\uff0e\u52d5\u4f5c\u306b\u306f\u5c02\u7528\u306e\u30c9\u30e9\u30a4\u30d0\u304c\u5fc5\u8981\uff0e\u30c9\u30e9\u30a4\u30d0\u306fsource\u306e\u4ed6\u306bAdaruit\u304cRasbian\u306b\u7d44\u307f\u8fbc\u307f\u6e08\u307f\u306e\u3082\u306e\u3068\uff0c\u30d3\u30eb\u30c9\u6e08\u307f\u306e\u30ea\u30dd\u30b8\u30c8\u30ea\u304c\u7528\u610f\u3055\u308c\u3066\u3044\u308b\uff0e\n\nPiTFT – Assembled 320×240 2.8 TFT+Touchscreen for Raspberry Pi ID: 1601 – $34.95 : Adafruit Industries, Unique & fun DIY electronics and kits (\u88fd\u54c1\u30da\u30fc\u30b8)\nOverview | Adafruit PiTFT – 2.8" Touchscreen Display for Raspberry Pi | Adafruit Learning System (\u89e3\u8aac\u30da\u30fc\u30b8)\nnotro/fbtft: Linux Framebuffer drivers for small TFT LCD display modules (source)\n\nAfafruit\u8b39\u88fd\u306eOS\u30a4\u30e1\u30fc\u30b8\u5165\u624b\n\u901a\u5e38\u306eRasbian\u306bAdafruit\u306e\u30ea\u30dd\u30b8\u30c8\u30ea\u3092\u8ffd\u52a0\u3059\u308b\u65b9\u6cd5\u3068\uff0c\u305d\u308c\u3092\u53cd\u6620\u6e08\u307f\u306eOS\u30a4\u30e1\u30fc\u30b8\u3092\u4f7f\u3046\u65b9\u6cd5(\u3068\u81ea\u5206\u3067build\u3059\u308b\u65b9\u6cd5)\u304c\u3042\u308b\uff0e\u3053\u3053\u3067\u306f\u624b\u9806\u306e\u5c11\u306a\u3044Afafruit\u8b39\u88fd\u306eOS\u30a4\u30e1\u30fc\u30b8\u3092\u5229\u7528\u3059\u308b\uff0e\u3053\u3061\u3089\u304b\u3089wheesy/jessie\u306e\u3082\u306e\u304c\u5165\u624b\u53ef\u80fd\uff0e\n\nEasy Install | Adafruit PiTFT – 2.8" Touchscreen Display for Raspberry Pi | Adafruit Learning System\n\n\u4eca\u56de\u306fjessie(2015-09-24-raspbian-jessie-pitft28r.zip)\u3092\u5229\u7528\uff0ehash\u3084\u7f72\u540d\u306f\u898b\u5f53\u305f\u3089\u305a\uff0e\u624b\u5143\u3067\u306f\u3053\u3093\u306a\u611f\u3058\u3060\u3063\u305f\uff0e\n$ md5sum 2015-09-24-raspbian-jessie-pitft28r.zipe78c764abbd3426d63d9ae7180fcdfa8  2015-09-24-raspbian-jessie-pitft28r.zip$ sha512sum 2015-09-24-raspbian-jessie-pitft28r.zipa6be01345be6030aaf0bc85293a946be4db54e80a42dbbab0034ddff3c21e842fc10f7f066acd605ffd9d16b6d43e14631e7d5a969a7f2a0869d7d00f013d8fd  2015-09-24-raspbian-jessie-pitft28r.zip\nSD Card\u30c7\u30d0\u30a4\u30b9\u78ba\u8a8d\n$ dmesg | tail -3[793679.349596] mmc0: new high speed SDHC card at address 59b4[793679.350315] mmcblk0: mmc0:59b4 USDU1 14.9 GiB[793679.351411]  mmcblk0: p1 p2 p3$ sudo fdisk -l /dev/mmcblk0Disk /dev/mmcblk0: 15 GiB, 16088301568 bytes, 31422464 sectorsUnits: sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisklabel type: dosDisk identifier: 0xb3c5e39a Device         Boot    Start      End  Sectors  Size Id Type/dev/mmcblk0p1          8192   131071   122880   60M  c W95 FAT32 (LBA)/dev/mmcblk0p2        131072 27228158 27097087 12.9G 83 Linux/dev/mmcblk0p3      27228159 31422463  4194305    2G 83 Linux$ mount|grep /dev/mmcblk0\n\u30d1\u30fc\u30c6\u30a3\u30b7\u30e7\u30f3\u60c5\u5831\u306e\u78ba\u8a8d\u3068\u6d88\u53bb\n$ sudo wipefs /dev/mmcblk0offset               type----------------------------------------------------------------0x1fe                dos   [partition table] $ sudo wipefs -a /dev/mmcblk0/dev/mmcblk0: 2 bytes were erased at offset 0x000001fe (dos): 55 aa/dev/mmcblk0: calling ioctl to re-read partition table: \u6210\u529f\u3067\u3059$ sudo wipefs /dev/mmcblk0\n\u203bMac/Windows\u3067\u306f\u3053\u306e\u8fba\u3092\u4f7f\u3046\u3068\u3044\u3044\u3068\u601d\u3046\uff0e\n\nSD Formatter 4.0 for SD/SDHC/SDXC – SD Association\n\n\u30a4\u30e1\u30fc\u30b8\u66f8\u304d\u8fbc\u307f\n$ unzip -p 2015-09-24-raspbian-jessie-pitft28r.zip | pv | sudo ionice -c2 dd of=/dev/mmcblk0 bs=4M4.03GiB 0:05:58 [11.5MiB/s] [                                                                                                              <=>                         ]0+36176 \u30ec\u30b3\u30fc\u30c9\u5165\u529b0+36176 \u30ec\u30b3\u30fc\u30c9\u51fa\u529b4325376000 \u30d0\u30a4\u30c8 (4.3 GB) \u30b3\u30d4\u30fc\u3055\u308c\u307e\u3057\u305f\u3001 452.676 \u79d2\u3001 9.6 MB/\u79d2$ sync$ sync$ mount|grep /dev/mmcblk0\n\u30b3\u30de\u30f3\u30c9\u306e\u610f\u5473\u306a\u3069\u306f\u3053\u3061\u3089\u3092\n\nLinux \u74b0\u5883\u3067\u306e Raspberry Pi \u5411\u3051 OS \u66f8\u304d\u8fbc\u307fTips | matoken\u2019s meme\n\n\u66f8\u304d\u8fbc\u3093\u3060SD Card\u3092PiTFT\u306e\u7e4b\u304c\u3063\u305fRaspberry Pi\u306b\u633f\u5165\u3057\u3066\u8d77\u52d5\u3059\u308b\u3068X\u304c\u81ea\u52d5\u8d77\u52d5\u3057\u3066LXDE\u306bpi\u30e6\u30fc\u30b6\u3067\u81ea\u52d5\u30ed\u30b0\u30a4\u30f3\u3057\u305f\u72b6\u614b\u306b\u306a\u308b\uff0e\n\u30ea\u30e2\u30fc\u30c8\u63a5\u7d9a(ssh)\nRasbian jessie\u306f\u521d\u671f\u72b6\u614b\u3067avahi&ssh\u304c\u8d77\u52d5\u3057\u3066\u3044\u308b\u306e\u3067IP\u30a2\u30c9\u30ec\u30b9\u3092\u8abf\u3079\u306a\u304f\u3066\u3082\u63a5\u7d9a\u3067\u304d\u3066\u4fbf\u5229\uff0e\n$ ssh pi@raspberrypi.local -CY\n\u30ea\u30e2\u30fc\u30c8\u63a5\u7d9a(vnc)\nx11vnc\u3092\u4f7f\u3063\u3066vino\u307f\u305f\u3044\u306b\u65e2\u306b\u8d77\u52d5\u3057\u3066\u3044\u308bX\u753b\u9762(DISPLAY=:0)\u3092\u8ee2\u9001\n$ sudo apt install x11vnc$ x11vnc -display :0 &\n\u30ea\u30dd\u30b8\u30c8\u30ea\u30b5\u30fc\u30d0\u306e\u65e5\u672c\u3078\u306e\u5207\u308a\u66ff\u3048\u3068\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\n$ sudo apt edit-sources$ cat /etc/apt/sources.listdeb http://ftp.tsukuba.wide.ad.jp/Linux/raspbian/raspbian/  jessie main contrib non-free rpideb-src http://ftp.tsukuba.wide.ad.jp/Linux/raspbian/raspbian/  jessie main contrib non-free rpideb http://apt.adafruit.com/raspbian/ jessie main$ sudo apt update && sudo apt upgrade\nX\u306e\u78ba\u8a8d\n$ ps -ef|grep Xroot       557   550  0 05:50 tty7     00:00:01 /usr/bin/X :0 -seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitchpi         733   698  0 05:50 ?        00:00:00 /usr/bin/lxsession -s LXDE-pi -e LXDEpi         837   733  1 05:51 ?        00:00:02 lxpanel --profile LXDE-pipi         838   733  0 05:51 ?        00:00:01 pcmanfm --desktop --profile LXDE-pipi         968   942  0 05:55 pts/0    00:00:00 grep --color=auto X$ DISPLAY=:0 xrandr --verbosexrandr: Failed to get size of gamma for output defaultScreen 0: minimum 320 x 240, current 320 x 240, maximum 320 x 240default connected 320x240+0+0 (0x4f) normal (normal) 0mm x 0mm        Identifier: 0x4e        Timestamp:  35831        Subpixel:   unknown        Clones:        CRTC:       0        CRTCs:      0        Transform:  1.000000 0.000000 0.000000                    0.000000 1.000000 0.000000                    0.000000 0.000000 1.000000                   filter:  320x240 (0x4f)  0.000MHz *current        h: width   320 start    0 end    0 total  320 skew    0 clock   0.00KHz        v: height  240 start    0 end    0 total  240           clock   0.00Hz$ ls -l /dev/fb*crw-rw---- 1 root video 29, 0 Sep 24 17:32 /dev/fb0crw-rw---- 1 root video 29, 1 Feb  3 05:52 /dev/fb1\nPiTFT\u5206\u306eX\u3060\u3051\u304c\u8d77\u52d5\u3057\u3066\u3044\u3066\uff0c\u30c7\u30a3\u30b9\u30d7\u30ec\u30a4\u756a\u53f7\u306f:0\u306e\u3088\u3046\uff0e\u89e3\u50cf\u5ea6\u306f320x240\u3060\u3051\uff0e\u30e2\u30cb\u30bf\u540d\u306fdefault?\nXRandR\u306epanning\u3092\u4f7f\u3063\u3066\u753b\u9762\u3092\u30b9\u30af\u30ed\u30fc\u30eb\u3057\u3066\u5e83\u304f\u4f7f\u3046(\u5931\u6557)\n\u3084\u3063\u3068\u672c\u984c\uff0e\nxrandr\u306eman\u3092\u898b\u308b\u3068panning\u3068\u3044\u3046\u305d\u308c\u3089\u3057\u3044\u8a2d\u5b9a\u304c\uff0e\n       Per-output options        --panning widthxheight[+x+y[/track_widthxtrack_height+track_x+track_y[/border_left/border_top/border_right/border_bottom]]]              This option sets the panning parameters.  As soon as panning is enabled, the CRTC position can change with every pointer move.  The first four param\u2010              eters specify the total panning area, the next four the pointer tracking area (which defaults to the same area). The last four parameters specify the              border and default to 0. A width or height set to zero disables panning on the according axis. You typically have to set the screen  size  with  --fb              simultaneously.        --transform a,b,c,d,e,f,g,h,i              Specifies a transformation matrix to apply on the output. Automatically a bilinear filter is selected.  The mathematical form corresponds to:                     a b c                     d e f                     g h i              The transformation is based on homogeneous coordinates. The matrix multiplied by the coordinate vector of a pixel of the output gives the transformed              coordinate vector of a pixel in the graphic buffer.  More precisely, the vector (x y) of the output pixel is extended to 3 values (x y w), with 1  as              the  w coordinate and multiplied against the matrix. The final device coordinates of the pixel are then calculated with the so-called homogenic divi\u2010              sion by the transformed w coordinate.  In other words, the device coordinates (x' y') of the transformed pixel are:                     x' = (ax + by + c) / w'   and                     y' = (dx + ey + f) / w'   ,                     with  w' = (gx + hy + i)  .              Typically, a and e corresponds to the scaling on the X and Y axes, c and f corresponds to the translation on those axes, and g, h, and i are  respec\u2010              tively  0,  0 and 1. The matrix can also be used to express more complex transformations such as keystone correction, or rotation.  For a rotation of              an angle T, this formula can be used:                     cos T  -sin T   0                     sin T   cos T   0                      0       0      1              As a special argument, instead of passing a matrix, one can pass the string none, in which case the default values are used (a  unit  matrix  without              filter).        --scale xxy              Changes  the  dimensions  of the output picture. Values superior to 1 will lead to a compressed screen (screen dimension bigger than the dimension of              the output mode), and values below 1 leads to a zoom in on the output. This option is actually a shortcut version of the --transform option.        --scale-from wxh              Specifies the size in pixels of the area of the framebuffer to be displayed on this output.  This option  is  actually  a  shortcut  version  of  the              --transform option.        --primary              Set the output as primary.  It will be sorted first in Xinerama and RANDR geometry requests.\n\u3061\u3087\u3063\u3068\u8907\u96d1\u305d\u3046\uff0exrandr\u306eGUI\u306e\u76ae\u306earandr/lxrandr\u3067\u8a2d\u5b9a\u3067\u304d\u308b\u3068\u4fbf\u5229\u306a\u3093\u3060\u308d\u3046\u3051\u3069\u5b9f\u88c5\u3055\u308c\u305f\u6a5f\u80fd\u304c\u5c11\u306a\u304f\u3066\u3053\u306e\u5f53\u305f\u308a\u306e\u8a2d\u5b9a\u306f\u4f7f\u3048\u306a\u3044\u611f\u3058\u3067\u6b8b\u5ff5\uff0e\n\uff03arandr\u306f\u5916\u90e8\u30e2\u30cb\u30bf\u306e\u8a2d\u5b9a\u3084\u89e3\u50cf\u5ea6\u306e\u5909\u66f4\u306b\u306f\u3088\u304f\u4f7f\u3063\u3066\u307e\u3059\uff0e\nXRandR\u3092\u624b\u52d5\u3067\u8a2d\u5b9a\u3057\u3066mode\u306e\u767b\u9332\u3092\u8a66\u307f\u308b\ncvt\u30b3\u30de\u30f3\u30c9\u3067\u53d6\u5f97\u3057\u305f\u5024\u3092xrandr\u306b\u6e21\u3059\u3068\u3044\u3044\u306f\u305a\u3060\u3051\u3069\u3046\u307e\u304f\u884c\u304b\u306a\u3044\uff0e\n$ cvt 800 600# 800x600 59.86 Hz (CVT 0.48M3) hsync: 37.35 kHz; pclk: 38.25 MHzModeline "800x600_60.00"   38.25  800 832 912 1024  600 603 607 624 -hsync +vsync$ xrandr --newmode "800x600_60.00"   38.25  800 832 912 1024  600 603 607 624 -hsync +vsync$ xrandr --addmode default 800x600_60.00xrandr: cannot find output "default"$ DISPLAY=:0 xrandr --addmode default 800x600_60.00xrandr: Failed to get size of gamma for output defaultxrandr: cannot find mode "800x600_60.00"$ DISPLAY=:0 xrandr --addmode default 800x600_60.00xrandr: Failed to get size of gamma for output defaultxrandr: cannot find mode "800x600_60.00"\nPC(i915\u306aDebian stretch amd64)\u3067\u306f\u60f3\u5b9a\u3057\u305f\u52d5\u4f5c\u306b\u306a\u3063\u305f\uff0e\n\u3053\u306e\u4f8b\u3067\u306f\u5b58\u5728\u3059\u308b\u30e2\u30fc\u30c9\u3088\u308a\u3082\u5e83\u30441904×720\u306e\u30e2\u30fc\u30c9\u3092\u8ffd\u52a0\u3057\u305f\u5f8c\uff0c\u753b\u9762\u306e\u30e2\u30fc\u30c9\u3092640×480\u306b\u3057\u3066\u4eee\u60f3\u30b9\u30af\u30ea\u30fc\u30f3\u30921904×720\u306b\u3057\u3066\u3044\u308b\uff0e\u30de\u30a6\u30b9\u30ab\u30fc\u30bd\u30eb\u3092\u7aef\u306b\u6301\u3063\u3066\u884c\u304f\u3068\u81ea\u52d5\u30b9\u30af\u30ed\u30fc\u30eb\u3059\u308b\uff0e\n$ xrandr | grep LVDS1 -A5LVDS1 connected 1366x768+0+0 (normal left inverted right x axis y axis) 277mm x 156mm panning 1366x768+0+0   1366x768      60.00*+   1360x768      59.80    59.96     1024x768      60.00     800x600       60.32    56.25     640x480       59.94  $ cvt 1904 720# 1904x720 59.97 Hz (CVT) hsync: 44.86 kHz; pclk: 111.25 MHzModeline "1904x720_60.00"  111.25  1904 2000 2192 2480  720 723 733 748 -hsync +vsync$ cvt 1904 720# 1904x720 59.97 Hz (CVT) hsync: 44.86 kHz; pclk: 111.25 MHzModeline "1904x720_60.00"  111.25  1904 2000 2192 2480  720 723 733 748 -hsync +vsync$ xrandr --newmode "1904x720_60.00"  111.25  1904 2000 2192 2480  720 723 733 748 -hsync +vsync$ xrandr --addmode VGA1 1904x720_60.00$ xrandr --output LVDS1 --mode 640x480 --panning 1904x720\n\u305d\u3082\u305d\u3082panning\u306fmode\u3092\u8ffd\u52a0\u3057\u306a\u304f\u3066\u3082\u4f7f\u3048\u308b\u3088\u3046\u3060\uff0e\n$ xrandr --output LVDS1 --mode 1366x768 --panning 2000x768$ xrandr --output LVDS1 --mode 1366x768 --panning 2732x1536 --scale 2x2\n\u3068\u3044\u3046\u3053\u3068\u306f\u3053\u308c\u3060\u3051\u3067\u3044\u3044\u306f\u305a\u3060\u3051\u3069\u30e2\u30cb\u30bf\u540d\u304c\u3046\u307e\u304f\u884c\u3051\u3066\u306a\u3044\uff0e\u30e2\u30cb\u30bf\u540d\u3092\u30c9\u30e9\u30a4\u30d0\u3067\u3061\u3083\u3093\u3068\u8a2d\u5b9a\u3057\u3066\u306a\u3044?\n$ DISPLAY=:0 xrandr default --mode 320x240 --panning 800x600xrandr: unrecognized option 'default'Try 'xrandr --help' for more information.$ DISPLAY=:0 xrandr default --mode 320x240 --panning 800x600xrandr: unrecognized option 'default'Try 'xrandr --help' for more information.\nAdafruit\u306e\u30d5\u30a9\u30fc\u30e9\u30e0\u306b\u540c\u3058\u8cea\u554f\u304c\u3042\u3063\u305f\u3051\u3069\u52d5\u3044\u3066\u7121\u3055\u305d\u3046\uff0e\n\nAdafruit customer service forums \u2022 View topic – pitft panning\n\n\u3082\u3046\u5c11\u3057\u53e9\u3044\u3066\u307f\u305f\u3089\u30e2\u30cb\u30bf\u540d\u306fdefault\u3067OK\u306e\u3088\u3046\uff0e320×240\u3088\u308a\u5c0f\u3055\u306amode\u3092\u4f5c\u3063\u3066\u307f\u3066\u3082\u30c0\u30e1\uff0e\nxrandr\u30b3\u30de\u30f3\u30c9\u3092\u5f15\u6570\u7121\u3057\u3067\u5b9f\u884c\u3057\u305f\u6642\u306emaximum 320 x 240\u304c\u3044\u3051\u306a\u3044\u306e\u304b\u3082\uff0ePC\u3067\u306fmaximum 32767 x 32767\u3068\u6050\u3089\u304f\u30d3\u30c7\u30aa\u30ab\u30fc\u30c9\u306e\u6700\u5927\u89e3\u50cf\u5ea6\u3067\u3042\u308d\u3046\u5024\u304c\u8868\u793a\u3055\u308c\u308b\uff0eVRAM\u3092\u5897\u3084\u3057\u305f\u308a\u3059\u308b\u3068\u884c\u3051\u308b\u3051\u308b\u306e\u304b\u3082\u3057\u308c\u306a\u3044\uff0e\n$ DISPLAY=:0 xrandrxrandr: Failed to get size of gamma for output defaultScreen 0: minimum 320 x 240, current 320 x 240, maximum 320 x 240default connected 320x240+0+0 0mm x 0mm   320x240        0.00*$ DISPLAY=:0 xrandr --output default --auto --mode 320x240 --panning 800x600xrandr: Failed to get size of gamma for output defaultxrandr: screen cannot be larger than 320x240 (desired size 800x600)$ DISPLAY=:0 xrandr --output default --auto --mode 160x120 --panning 320x240xrandr: cannot find mode 160x120$ cvt 160 120# 160x120 50.08 Hz (CVT 0.02M3) hsync: 6.51 kHz; pclk: 1.25 MHzModeline "160x120_60.00"    1.25  160 168 176 192  120 123 127 130 -hsync +vsync$ xrandr --newmode "160x120_60.00"    1.25  160 168 176 192  120 123 127 130 -hsync +vsync$ DISPLAY=:0 xrandr --newmode "160x120_60.00"    1.25  160 168 176 192  120 123 127 130 -hsync +vsyncxrandr: Failed to get size of gamma for output default$ DISPLAY=:0 xrandr --addmode default 160x120_60.00xrandr: Failed to get size of gamma for output default$ DISPLAY=:0 xrandrxrandr: Failed to get size of gamma for output defaultScreen 0: minimum 320 x 240, current 320 x 240, maximum 320 x 240default connected 320x240+0+0 0mm x 0mm   320x240        0.00*   160x120_60.00  50.08  pi@raspberrypi ~ $ DISPLAY=:0 xrandr --output default --auto --mode 160x120_60.00 --panning 320x240xrandr: Failed to get size of gamma for output defaultxrandr: Configure crtc 0 failed\n\u6050\u3089\u304f\u3053\u308c\u4ee5\u4e0a\u306fsource\u3092\u4fee\u6b63\u3057\u306a\u3044\u3068\u30c0\u30e1\u3060\u3068\u601d\u3046\uff0e\nfbcp\u3092\u5229\u7528\u3057\u3066Raspberry Pi\u6a19\u6e96\u306e\u30c7\u30a3\u30b9\u30d7\u30ec\u30a4\u3092\u30b3\u30d4\u30fc\u3057\u3066\u5229\u7528\n\u30d5\u30ec\u30fc\u30e0\u30d0\u30c3\u30d5\u30a1\u3092\u30b3\u30d4\u30fc\u3059\u308bfbcp\u3092\u5229\u7528\u3059\u308b\u65b9\u6cd5\uff0e\u4fbf\u5229\u3060\u3051\u3069\u30bf\u30c3\u30c1\u30d1\u30cd\u30eb\u6a5f\u80fd\u304c\u4f7f\u3048\u306a\u3044\uff0e\n\ntasanakorn/rpi-fbcp: Raspberry Pi utility. Used for mirror primary framebuffer to secondary framebuffer.\n\n\u5185\u8535\u304c/dev/fb0\u3067PiTFT\u304c/dev/fb1\u306b\u306a\u3063\u3066\u3044\u308b\u306e\u3067\u901a\u5e38\u306eRaspberry Pi\u3067\u884c\u3063\u305f\u8a2d\u5b9a\u3092\u305d\u306e\u307e\u307ePiTFT\u306e\u753b\u9762\u306b\u6620\u3059\u3053\u3068\u304c\u51fa\u6765\u308b\uff0e\n\u30d5\u30ec\u30fc\u30e0\u30d0\u30c3\u30d5\u30a1\u306e\u30b3\u30d4\u30fc\u306a\u306e\u3067X\u3060\u3051\u3067\u306a\u304f\u30b3\u30f3\u30bd\u30fc\u30eb\u5229\u7528\u6642\u306b\u3082\u4f7f\u3048\u308b\uff0e\nfbcp\u306ebuild\n$ sudo apt install cmake$ git clone https://github.com/tasanakorn/rpi-fbcp.git$ cd rpi-fbcp$ mkdir build$ cd build$ cmake ..$ make\nfbcp\u30b3\u30de\u30f3\u30c9\u3092\u9069\u5f53\u306a\u5834\u6240\u306b\u7f6e\u304f\uff0e\n$ sudo cp fbcp /usr/local/bin/\n/dev/fb1\u3092\u6307\u5b9a\u3057\u3066\u3044\u308b\u30d5\u30a1\u30a4\u30eb\u3092\u9000\u907f\u3057\u3066\uff0c\u8d77\u52d5\u6642\u306bfbcp\u3092\u8d77\u52d5\u3059\u308b\u3088\u3046\u8a2d\u5b9a\u3057\u3066\u518d\u8d77\u52d5\uff0e\n$ sudo mv /etc/X11/xorg.conf.d/99-fbdev.conf ~pi/99-fbdev.conf$ sudo sed -i 's/exit/\\/usr\\/local\\/bin\\/fbcp \\&\\n\\nexit/g' /etc/rc.local$ sudo reboot\n\u30b3\u30f3\u30bd\u30fc\u30eb\u306e\u9014\u4e2d\u304b\u3089fbcp\u304c\u52d5\u4f5c\u3057\u3066X\u3082\u8868\u793a\u3055\u308c\u308b\uff0e\u89e3\u50cf\u5ea6\u306f656×416\u306b\u306a\u3063\u3066\u3044\u308b\uff0e\u3082\u3063\u3068\u9ad8\u89e3\u50cf\u5ea6\u306b\u3082\u3067\u304d\u308b\u304c\u4f7f\u3044\u3084\u3059\u3055\u3092\u8003\u3048\u308b\u3068\u3053\u306e\u304f\u3089\u3044\u3067\u3044\u3044\u3068\u601d\u3046\uff0e\n$ DISPLAY=:0 xrandr --verbosexrandr: Failed to get size of gamma for output defaultScreen 0: minimum 656 x 416, current 656 x 416, maximum 656 x 416default connected 656x416+0+0 (0x4f) normal (normal) 0mm x 0mm        Identifier: 0x4e        Timestamp:  19289        Subpixel:   unknown        Clones:            CRTC:       0        CRTCs:      0        Transform:  1.000000 0.000000 0.000000                    0.000000 1.000000 0.000000                    0.000000 0.000000 1.000000                   filter:  656x416 (0x4f)  0.000MHz *current        h: width   656 start    0 end    0 total  656 skew    0 clock   0.00KHz        v: height  416 start    0 end    0 total  416           clock   0.00Hz\n\u904e\u53bb\u306e\u8a66\u307f\n \n RaspberryPi \u3092\u6301\u3061\u904b\u3073\u30d1\u30bd\u30b3\u30f3\u3068\u3057\u3066\u4f7f\u3044\u305f\u3044 from Kenichiro MATOHARA", "date_published": "2016-02-04T00:33:41+09:00", "date_modified": "2016-02-04T00:33:41+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Jessie", "Rasbian", "RaspberryPi", "Linux", "Rasbian_jessie", "Raspberry Pi" ] }, { "id": "http://matoken.org/blog/?p=1102", "url": "https://matoken.org/blog/2016/02/01/convenient-edit-sources-option-of-apt-command/", "title": "apt\u30b3\u30de\u30f3\u30c9\u306eedit-sources\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u4fbf\u5229", "content_html": "

\n

Rasbian\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u30b5\u30fc\u30d0\u306bjaist\u3092\u6307\u5b9a\u3057\u3066\u3044\u305f\u306e\u3060\u3051\u3069\u6700\u8fd1\u9045\u3044\u306e\u3067mirror list\u3092\u898b\u3066

\n\n
$ w3m -dump https://www.raspbian.org/RaspbianMirrors|grep -i japan -A1
Asia^*    Japan       JAIST                    (http|rsync)://ftp.jaist.ac.jp/pub/
                                               Linux/raspbian-archive/raspbian
--
Asia^*    Japan       WIDE Project Tsukuba NOC raspbian/raspbian/
                                               rsync://ftp.tsukuba.wide.ad.jp/
--
Asia^*    Japan       Yamagata University      http://ftp.yz.yamagata-u.ac.jp/pub/
                                               linux/raspbian/raspbian/
\n

/etc/apt/sources.list\u3092WIDE\u306b\u5909\u66f4\u3057\u305f\uff0e

\n
-deb http://ftp.jaist.ac.jp/pub/Linux/raspbian-archive/raspbian/ jessie main contrib non-free rpi
-deb-src http://ftp.jaist.ac.jp/pub/Linux/raspbian-archive/raspbian/ jessie main contrib non-free rpi
+deb http://ftp.tsukuba.wide.ad.jp/Linux/raspbian/raspbian/  jessie main contrib non-free rpi
+deb-src http://ftp.tsukuba.wide.ad.jp/Linux/raspbian/raspbian/  jessie main contrib non-free rpi
\n

\u3068\u3053\u308d\u3067apt\u30b3\u30de\u30f3\u30c9\u306eedit-sources\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u4fbf\u5229\u306a\u306e\u3067\u305c\u3072\u4f7f\u3046\u3079\u304d\uff0evisudo\u3068\u304b\u307f\u305f\u3044\u306b\u9593\u9055\u3048\u308b\u3068\u6559\u3048\u3066\u304f\u308c\u308b\uff0e

\n
$ sudo apt edit-sources
E: Type 'eb' is not known on line 3 in source list /etc/apt/sources.list
Failed to parse /etc/apt/sources.list. Edit again?  [Y/n]
\n

\u5f15\u6570\u3092\u4ed8\u3051\u3066/etc/apt/sources.list.d/\u4ee5\u4e0b\u306e\u7de8\u96c6\u3082\u51fa\u6765\u308b

\n
$ ls /etc/apt/sources.list.d/
google-chrome.list  gyazo_gyazo-for-linux.list  owncloud-client.list
$ sudo apt edit-sources owncloud-client
\n

Debian jessie\u4ee5\u964d\uff0cRasbian jessie\u4ee5\u964d\uff0cUbuntu vivid(15.04)\u4ee5\u964d\u3067\u305d\u308c\u305e\u308c\u5229\u7528\u53ef\u80fd\u3060\u3068\u601d\u3046\uff0e

\n
apt (0.9.13.1) unstable; urgency=low
 
  [ Colin Watson ]
  * fix "apt-get  --purge build-dep" (closes: #720597)
  * fix regression that APT::Keep-Fds is not honored (closes: #730490)
 
  [ Michael Vogt ]
  * add "-f" option to "build-dep" as sbuild is using it to fix
    regression with cross-building (LP: #1255806)
  * add autopkgtest support for the integration testsuite
  * merge mvo/feature/short-list
  * merge mvo/feature/edit-sources
  * fix segfault in pkgDepCache::SetCandidateRelease() (closes: #709560)
  * reset terminal on error (closes: #730795)
  * fix apport report writing (LP: #1254499)
 
 -- Michael Vogt <mvo@debian.org>  Fri, 29 Nov 2013 20:50:17 +0100
\n


\n

\n

\n
\n", "content_text": "Rasbian\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u30b5\u30fc\u30d0\u306bjaist\u3092\u6307\u5b9a\u3057\u3066\u3044\u305f\u306e\u3060\u3051\u3069\u6700\u8fd1\u9045\u3044\u306e\u3067mirror list\u3092\u898b\u3066\n\nRaspbianMirrors – Raspbian\n\n$ w3m -dump https://www.raspbian.org/RaspbianMirrors|grep -i japan -A1Asia^*    Japan       JAIST                    (http|rsync)://ftp.jaist.ac.jp/pub/                                               Linux/raspbian-archive/raspbian--Asia^*    Japan       WIDE Project Tsukuba NOC raspbian/raspbian/                                               rsync://ftp.tsukuba.wide.ad.jp/--Asia^*    Japan       Yamagata University      http://ftp.yz.yamagata-u.ac.jp/pub/                                               linux/raspbian/raspbian/\n/etc/apt/sources.list\u3092WIDE\u306b\u5909\u66f4\u3057\u305f\uff0e\n-deb http://ftp.jaist.ac.jp/pub/Linux/raspbian-archive/raspbian/ jessie main contrib non-free rpi-deb-src http://ftp.jaist.ac.jp/pub/Linux/raspbian-archive/raspbian/ jessie main contrib non-free rpi+deb http://ftp.tsukuba.wide.ad.jp/Linux/raspbian/raspbian/  jessie main contrib non-free rpi+deb-src http://ftp.tsukuba.wide.ad.jp/Linux/raspbian/raspbian/  jessie main contrib non-free rpi\n\u3068\u3053\u308d\u3067apt\u30b3\u30de\u30f3\u30c9\u306eedit-sources\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u4fbf\u5229\u306a\u306e\u3067\u305c\u3072\u4f7f\u3046\u3079\u304d\uff0evisudo\u3068\u304b\u307f\u305f\u3044\u306b\u9593\u9055\u3048\u308b\u3068\u6559\u3048\u3066\u304f\u308c\u308b\uff0e\n$ sudo apt edit-sourcesE: Type 'eb' is not known on line 3 in source list /etc/apt/sources.listFailed to parse /etc/apt/sources.list. Edit again?  [Y/n]\n\u5f15\u6570\u3092\u4ed8\u3051\u3066/etc/apt/sources.list.d/\u4ee5\u4e0b\u306e\u7de8\u96c6\u3082\u51fa\u6765\u308b\n$ ls /etc/apt/sources.list.d/google-chrome.list  gyazo_gyazo-for-linux.list  owncloud-client.list$ sudo apt edit-sources owncloud-client\nDebian jessie\u4ee5\u964d\uff0cRasbian jessie\u4ee5\u964d\uff0cUbuntu vivid(15.04)\u4ee5\u964d\u3067\u305d\u308c\u305e\u308c\u5229\u7528\u53ef\u80fd\u3060\u3068\u601d\u3046\uff0e\napt (0.9.13.1) unstable; urgency=low   [ Colin Watson ]  * fix "apt-get  --purge build-dep" (closes: #720597)  * fix regression that APT::Keep-Fds is not honored (closes: #730490)   [ Michael Vogt ]  * add "-f" option to "build-dep" as sbuild is using it to fix    regression with cross-building (LP: #1255806)  * add autopkgtest support for the integration testsuite  * merge mvo/feature/short-list  * merge mvo/feature/edit-sources  * fix segfault in pkgDepCache::SetCandidateRelease() (closes: #709560)  * reset terminal on error (closes: #730795)  * fix apport report writing (LP: #1254499)  -- Michael Vogt <mvo@debian.org>  Fri, 29 Nov 2013 20:50:17 +0100", "date_published": "2016-02-01T19:25:20+09:00", "date_modified": "2016-02-01T19:32:46+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Debian", "Jessie", "Linux", "Rasbian", "RaspberryPi", "stretch", "Ubuntu", "vivid", "jessie", "Rasbian_jessie", "Raspberry Pi" ] }, { "id": "http://matoken.org/blog/?p=1092", "url": "https://matoken.org/blog/2016/01/31/i-made-a-sloppy-podcast-server-in-the-raspberry-pi/", "title": "Raspberry Pi\u3067\u96d1\u3044podcast\u30b5\u30fc\u30d0\u3092\u4f5c\u3063\u305f", "content_html": "

\n

\"IMGP2678\"

\n

\u5148\u65e5\u8a66\u3057\u305fpodracer\u3067

\n
\n

\u6bce\u65e5\u5b9f\u884c\u3057\u3066\u4eca\u65e5\u306e\u5206\u3092\u307e\u3068\u3081\u3066\u518d\u751f\u3057\u3066\u6d88\u3057\u3066\u3068\u3044\u3046\u3088\u3046\u306b\u4f7f\u3046\u611f\u3058\u306a\u306e\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e

\n
\n\n

\u3068\u3044\u3046\u3053\u3068\u3067\u81ea\u52d5\u53d6\u5f97\uff0c\u81ea\u52d5\u518d\u751f\u3059\u308b\u3068\u5bb6\u5ead\u5185\u30e9\u30b8\u30aa\u306e\u3088\u3046\u306b\u3067\u304d\u308b\u306e\u3067\u306f\u3068\u601d\u3044\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n

\u74b0\u5883\u306fRaspberry Pi 1B (512MB)\u306bRasbian jessie\u3092\u5c0e\u5165\u3057\u305f\u3082\u306e\u3067\u6709\u7ddaLAN \u5229\u7528\u3067\u3059\uff0e

\n

\u5c0e\u5165\u30d1\u30c3\u30b1\u30fc\u30b8

\n

podcast \u306e\u53d6\u5f97\u306e\u305f\u3081\u306bpodracer\uff0c\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u306e\u914d\u4fe1\u306bboa\u3092\u5229\u7528\uff0c\u97f3\u58f0\u914d\u4fe1\u306e\u70ba\u306bvlc-nox\u3092\u5c0e\u5165\u3057\u307e\u3057\u305f\uff0e

\n
$ sudo apt install podracer boa vlc-nox
\n

podcast \u53d6\u5f97\u306e\u6e96\u5099

\n\n

\u3092\u53c2\u8003\u306bpodracer\u306e\u8a2d\u5b9a\u3092\u3057\u3066\u4e0b\u3055\u3044\uff0e~/.podracer/subscriptions\u3092\u7528\u610f\u3057\u305f\u5f8c1\u5ea6catchup mode\u3067\u5b9f\u884c\u3057\u3066\u304a\u304d\u307e\u3059\uff0e

\n
$ podracer -c
\n

\u3053\u308c\u3067RSS Feed\u3092\u3072\u3068\u8210\u3081\u3057\u3066\u904e\u53bb\u306epodcast\u3092\u53d6\u5f97\u3057\u306a\u3044\u3088\u3046\u306b\u3057\u307e\u3059\uff0e

\n

VLC \u3067\u306e\u914d\u4fe1\u30c6\u30b9\u30c8

\n

\u4ee5\u4e0b\u306e\u4f8b\u3067\u306fpodracer\u3067\u4f5c\u6210\u3055\u308c\u305f\u4eca\u65e5\u306e\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u3092\u305d\u306e\u307e\u307ehttp 8080\u30dd\u30fc\u30c8\u3067\u914d\u4fe1\u3057\u3066\u66f4\u306bloop\u3055\u305b\u3066\u3044\u307e\u3059\uff0e

\n
$ cvlc  ~/podcasts/`date +\\%F`/`date +\\%F`-podcasts.m3u --sout '#standard{access=http,mux=ts,dst=:8080}' --loop
\n

\u3053\u306e\u72b6\u614b\u3067\u518d\u751f\u3057\u305f\u3044\u7aef\u672b\u3067 $ cvlc http://raspberrypi.local:8080/ \u3068\u304b mplayer http://raspberrypi.local:8080/ \u306a\u3069\u3068\u3057\u3066\u30a2\u30af\u30bb\u30b9\u3059\u308b\u3068\u518d\u751f\u3055\u308c\u308b\u306f\u305a\u3067\u3059\uff0e
\n1\u66f2\u6bce\u306b\u505c\u307e\u3063\u3066\u3057\u307e\u3044\u518d\u5ea6\u518d\u751f\u3057\u76f4\u3059\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u304c\u3053\u308c\u306f\u5f8c\u3067\u89e3\u6c7a\u3059\u308b\u3053\u3068\u306b\u3057\u307e\u3059\uff0e

\n

VLC \u306e\u8a2d\u5b9a

\n

VLC\u3067\u914d\u4fe1\u3057\u307e\u3059\u304c\uff0c\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u3082\u5229\u7528\u3057\u305f\u3044\u3067\u3059\uff0e--extraintf=http \u30aa\u30d7\u30b7\u30e7\u30f3\u3067web\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u304c\u5229\u7528\u3067\u304d\u307e\u3059\uff0e\u898f\u5b9a\u5024\u3067\u306f localhost \u4ee5\u5916\u304b\u3089\u30a2\u30af\u30bb\u30b9\u3067\u304d\u306a\u3044\u306e\u3067\u5bb6\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u3069\u3053\u304b\u3089\u3067\u3082\u30b3\u30f3\u30c8\u30ed\u30fc\u30eb\u3067\u304d\u308b\u3088\u3046\u306b /usr/share/vlc/lua/http/.hosts \u306b\u5229\u7528\u53ef\u80fd\u306a\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u767b\u9332\u3057\u3066\u304a\u304d\u307e\u3059\uff0e

\n
192.168.1.0/24
192.168.2.0/24
\n

\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u5b9f\u884c\u3059\u308b\u3068web\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u304c8081\u30dd\u30fc\u30c8\u3067\u8d77\u52d5\u3057\u307e\u3059\uff0e\u30d1\u30b9\u30ef\u30fc\u30c9\u306f raspberry \u3067\u3059\uff0e\u9069\u5f53\u306a\u30d6\u30e9\u30a6\u30b6\u3067 http://:raspberry@raspberrypi.local:8081/ \u306a\u611f\u3058\u3067\u30a2\u30af\u30bb\u30b9\u3059\u308b\u3068\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u304c\u5229\u7528\u3067\u304d\u308b\u3068\u601d\u3044\u307e\u3059\uff0e

\n
$ cvlc --extraintf=http --http-port=8081 --http-password='raspberry' ~/podcasts/`date +\\%F`/`date +\\%F`-podcasts.m3u --sout '#standard{access=http,mux=ts,dst=:8080}' --loop
\n

\"Screenshot_2016-01-31-19-04-03\"

\n

\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u8a2d\u5b9a\u3057\u306a\u3044\u3068\u30d1\u30b9\u30ef\u30fc\u30c9\u306e\u8a2d\u5b9a\u3092\u4fc3\u3059\u753b\u9762\u304c\u8868\u793a\u3055\u308c\u3066\u5229\u7528\u3067\u304d\u306a\u3044\u3088\u3046\u3067\u3059\uff0e

\n

http \u306e\u8a2d\u5b9a(\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u306e\u4f5c\u6210)

\n

boa\u306e\u6a19\u6e96\u3067\u306f /var/www \u4ee5\u4e0b\u304cDocumentRoot\u306b\u306a\u3063\u3066\u3044\u307e\u3059\uff0e\u3053\u3053\u306b\u30e1\u30cb\u30e5\u30fc\u7528\u306e index.html \u3068\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u306e podcast.m3u \u3092\u7528\u610f\u3057\u3066\u304a\u304d\u307e\u3059\uff0e

\n

\u6a29\u9650\u306f www-data.www-data \u306a\u306e\u3067\uff0c\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u611f\u3058\u3067\u6a29\u9650\u3092\u8a2d\u5b9a\u3057\u3066\u7de8\u96c6\u3059\u308b\u3068\u3044\u3044\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e

\n
$ sudo chown www-data.www-data /var/www
$ sudo -u www-data vi /var/www/index.html
   :
\n\n
<html>
<body>
<ul>
<li><a href="./podcast.m3u">m3u</a></li>
<li><a href="http://:raspberry@192.168.2.200:8081/">VLC control</a></li>
</ul>
</body>
</html>
\n

\u203bAndroid\u3067\u306fAvahi\u3067\u306e\u540d\u524d\u89e3\u6c7a\u304c\u3046\u307e\u304f\u884c\u304b\u306a\u3044\u306e\u3067IP \u30a2\u30c9\u30ec\u30b9\u3067\u66f8\u3044\u3066\u3044\u307e\u3059\uff0e\u74b0\u5883\u306b\u5408\u308f\u305b\u3066\u5909\u66f4\u3057\u3066\u4e0b\u3055\u3044\uff0e

\n\n
http://192.168.2.200:8080/
http://192.168.2.200/podcast.m3u
\n

1\u884c\u76ee\u3060\u3051\u3060\u30681\u756a\u7d44\u5206\u3067\u518d\u751f\u304c\u505c\u6b62\u3057\u3066\u3057\u307e\u3046\u306e\u3067\uff0c2\u884c\u76ee\u3067\u81ea\u5206\u81ea\u8eab\u3092\u547c\u3073\u51fa\u3057\u3066\u518d\u8d77\u3057\u3066\u3044\u307e\u3059\uff0e\u3053\u308c\u30672\u756a\u7d44\u4ee5\u964d\u3067\u3082\u7d9a\u3051\u3066\u518d\u751f\u3055\u308c\u307e\u3059\uff0e
\n\u203bAndroid\u3067\u306fAvahi\u3067\u306e\u540d\u524d\u89e3\u6c7a\u304c\u3046\u307e\u304f\u884c\u304b\u306a\u3044\u306e\u3067ip \u30a2\u30c9\u30ec\u30b9\u3067\u66f8\u3044\u3066\u3044\u307e\u3059\uff0e\u74b0\u5883\u306b\u5408\u308f\u305b\u3066\u5909\u66f4\u3057\u3066\u4e0b\u3055\u3044\uff0e

\n

\u81ea\u52d5\u8d77\u52d5\u3068podcast\u66f4\u65b0\u51e6\u7406

\n

crontab \u3067\u8d77\u52d5\u6642\u306b\u81ea\u52d5\u7684\u306b\u518d\u751f\u304c\u59cb\u307e\u308b\u3088\u3046\u306b&\u5b9a\u671f\u7684\u306bpodcast\u66f4\u65b0&\u518d\u751f\u30ea\u30b9\u30c8\u66f4\u65b0&\u53e4\u3044podcast\u306e\u524a\u9664\u51e6\u7406\u3092\u3057\u307e\u3059\uff0e

\n

crontab -e \u30b3\u30de\u30f3\u30c9\u3067\u7de8\u96c6\u3057\u307e\u3059\uff0e

\n
@reboot cvlc --extraintf=http --http-port=8081 --http-password='raspberry' ~/podcasts/`date +\\%F`/`date +\\%F`-podcasts.m3u --sout '#standard{access=http,mux=ts,dst=:8080}' --loop
3 */6 * * *     podracer;killall vlc;cvlc --extraintf=http --http-port=8081 --http-password='raspberry' ~/podcasts/`date +\\%F`/`date +\\%F`-podcasts.m3u --sout '#standard{access=http,mux=ts,dst=:8080}' --loop
10 0 * * *  rm -rf ~/podcasts/`date --date '1 weeks ago' +\\%F`
\n

1\u884c\u76ee\u306f @reboot \u3067\u8d77\u52d5\u6642\u306bVLC\u3092\u81ea\u52d5\u8d77\u52d5\u3057\u307e\u3059\uff0e
\n2\u884c\u76ee\u306f6\u6642\u9593\u6bce\u306bpodcast\u3092\u66f4\u65b0\u3057\u3066VLC\u3092\u8d77\u52d5\u3057\u306a\u304a\u3057\u3066\u3044\u307e\u3059\uff0e
\n3\u884c\u76ee\u30671\u9031\u9593\u524d\u306epodcast\u30c7\u30fc\u30bf\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059\uff0e

\n

\u5229\u7528\u65b9\u6cd5

\n

\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067 Raspberry Pi \u306b\u30a2\u30af\u30bb\u30b9\u3057\u307e\u3059\uff0e

\n
\n

http://raspberrypi.local

\n
\n

\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u30e1\u30cb\u30e5\u30fc\u304c\u51fa\u3066\u6765\u307e\u3059\uff0e

\n

\"Screenshot_2016-01-31-20-49-47\"

\n
\n

\u2022 m3u
\n\u2022 VLC control

\n
\n

m3u \u3092\u30af\u30ea\u30c3\u30af\u3059\u308b\u3068\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u304c\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3055\u308c\u307e\u3059\uff0eVLC \u7b49\u306e\u95a2\u9023\u4ed8\u3051\u3089\u308c\u305f\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306a\u3069\u3067\u518d\u751f\u3067\u304d\u308b\u3068\u601d\u3044\u307e\u3059\uff0e
\n\"Screenshot_2016-01-31-19-03-53\"

\n

VLC control \u3092\u30af\u30ea\u30c3\u30af\u3059\u308b\u3068VLC\u306e\u30a6\u30a7\u30d6\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u304c\u8868\u793a\u3055\u308c\u307e\u3059\uff0eURL\u306b\u8a8d\u8a3c\u60c5\u5831\u3092\u57cb\u3081\u8fbc\u3093\u3067\u3044\u308b\u306e\u3067\u8a8d\u8a3c\u306f\u30b9\u30ad\u30c3\u30d7\u3055\u308c\u307e\u3059\uff0e

\n

\u554f\u984c\u70b9\u3084\u6539\u5584\u70b9\u306a\u3069

\n\n


\n

\n

\n
\n

\u73fe\u5728\u306f\u4e3b\u306bAndroid\u30a2\u30d7\u30ea\u306eVLC\u3067\u518d\u751f\u3057\u3066\u3044\u307e\u3059\uff0eAndroid\u3068PC\u306fBluetooth A2DP\u3067\u7e4b\u304c\u3063\u3066\u3044\u3066\uff0cPC\u3067\u805e\u3044\u3066\u3044\u307e\u3059\uff0ePC\u304b\u3089\u96e2\u308c\u308b\u3068\u304d\u306fAndroid\u306b\u30a4\u30e4\u30db\u30f3\u30b8\u30e3\u30c3\u30af\u3092\u5dee\u3057\u66ff\u3048\u308b\u3068\u30b7\u30fc\u30e0\u30ec\u30b9\u306b\u79fb\u52d5\u3067\u304d\u307e\u3059\uff0e

\n

\"20160201_01:02:04-5807\"

\n

\n", "content_text": "\u5148\u65e5\u8a66\u3057\u305fpodracer\u3067\n\n\u6bce\u65e5\u5b9f\u884c\u3057\u3066\u4eca\u65e5\u306e\u5206\u3092\u307e\u3068\u3081\u3066\u518d\u751f\u3057\u3066\u6d88\u3057\u3066\u3068\u3044\u3046\u3088\u3046\u306b\u4f7f\u3046\u611f\u3058\u306a\u306e\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e\n\n\nCLI \u306a podcast aggregator/downloader \u306a podracer \u3092\u8a66\u3057\u3066\u307f\u308b | matoken\u2019s meme\n\n\u3068\u3044\u3046\u3053\u3068\u3067\u81ea\u52d5\u53d6\u5f97\uff0c\u81ea\u52d5\u518d\u751f\u3059\u308b\u3068\u5bb6\u5ead\u5185\u30e9\u30b8\u30aa\u306e\u3088\u3046\u306b\u3067\u304d\u308b\u306e\u3067\u306f\u3068\u601d\u3044\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\u74b0\u5883\u306fRaspberry Pi 1B (512MB)\u306bRasbian jessie\u3092\u5c0e\u5165\u3057\u305f\u3082\u306e\u3067\u6709\u7ddaLAN \u5229\u7528\u3067\u3059\uff0e\n\u5c0e\u5165\u30d1\u30c3\u30b1\u30fc\u30b8\npodcast \u306e\u53d6\u5f97\u306e\u305f\u3081\u306bpodracer\uff0c\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u306e\u914d\u4fe1\u306bboa\u3092\u5229\u7528\uff0c\u97f3\u58f0\u914d\u4fe1\u306e\u70ba\u306bvlc-nox\u3092\u5c0e\u5165\u3057\u307e\u3057\u305f\uff0e\n$ sudo apt install podracer boa vlc-nox\npodcast \u53d6\u5f97\u306e\u6e96\u5099\n\nCLI \u306a podcast aggregator/downloader \u306a podracer \u3092\u8a66\u3057\u3066\u307f\u308b | matoken\u2019s meme\n\n\u3092\u53c2\u8003\u306bpodracer\u306e\u8a2d\u5b9a\u3092\u3057\u3066\u4e0b\u3055\u3044\uff0e~/.podracer/subscriptions\u3092\u7528\u610f\u3057\u305f\u5f8c1\u5ea6catchup mode\u3067\u5b9f\u884c\u3057\u3066\u304a\u304d\u307e\u3059\uff0e\n$ podracer -c\n\u3053\u308c\u3067RSS Feed\u3092\u3072\u3068\u8210\u3081\u3057\u3066\u904e\u53bb\u306epodcast\u3092\u53d6\u5f97\u3057\u306a\u3044\u3088\u3046\u306b\u3057\u307e\u3059\uff0e\nVLC \u3067\u306e\u914d\u4fe1\u30c6\u30b9\u30c8\n\u4ee5\u4e0b\u306e\u4f8b\u3067\u306fpodracer\u3067\u4f5c\u6210\u3055\u308c\u305f\u4eca\u65e5\u306e\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u3092\u305d\u306e\u307e\u307ehttp 8080\u30dd\u30fc\u30c8\u3067\u914d\u4fe1\u3057\u3066\u66f4\u306bloop\u3055\u305b\u3066\u3044\u307e\u3059\uff0e\n$ cvlc  ~/podcasts/`date +\\%F`/`date +\\%F`-podcasts.m3u --sout '#standard{access=http,mux=ts,dst=:8080}' --loop\n\u3053\u306e\u72b6\u614b\u3067\u518d\u751f\u3057\u305f\u3044\u7aef\u672b\u3067 $ cvlc http://raspberrypi.local:8080/ \u3068\u304b mplayer http://raspberrypi.local:8080/ \u306a\u3069\u3068\u3057\u3066\u30a2\u30af\u30bb\u30b9\u3059\u308b\u3068\u518d\u751f\u3055\u308c\u308b\u306f\u305a\u3067\u3059\uff0e\n1\u66f2\u6bce\u306b\u505c\u307e\u3063\u3066\u3057\u307e\u3044\u518d\u5ea6\u518d\u751f\u3057\u76f4\u3059\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u304c\u3053\u308c\u306f\u5f8c\u3067\u89e3\u6c7a\u3059\u308b\u3053\u3068\u306b\u3057\u307e\u3059\uff0e\nVLC \u306e\u8a2d\u5b9a\nVLC\u3067\u914d\u4fe1\u3057\u307e\u3059\u304c\uff0c\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u3082\u5229\u7528\u3057\u305f\u3044\u3067\u3059\uff0e--extraintf=http \u30aa\u30d7\u30b7\u30e7\u30f3\u3067web\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u304c\u5229\u7528\u3067\u304d\u307e\u3059\uff0e\u898f\u5b9a\u5024\u3067\u306f localhost \u4ee5\u5916\u304b\u3089\u30a2\u30af\u30bb\u30b9\u3067\u304d\u306a\u3044\u306e\u3067\u5bb6\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u3069\u3053\u304b\u3089\u3067\u3082\u30b3\u30f3\u30c8\u30ed\u30fc\u30eb\u3067\u304d\u308b\u3088\u3046\u306b /usr/share/vlc/lua/http/.hosts \u306b\u5229\u7528\u53ef\u80fd\u306a\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u767b\u9332\u3057\u3066\u304a\u304d\u307e\u3059\uff0e\n192.168.1.0/24192.168.2.0/24\n\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u5b9f\u884c\u3059\u308b\u3068web\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u304c8081\u30dd\u30fc\u30c8\u3067\u8d77\u52d5\u3057\u307e\u3059\uff0e\u30d1\u30b9\u30ef\u30fc\u30c9\u306f raspberry \u3067\u3059\uff0e\u9069\u5f53\u306a\u30d6\u30e9\u30a6\u30b6\u3067 http://:raspberry@raspberrypi.local:8081/ \u306a\u611f\u3058\u3067\u30a2\u30af\u30bb\u30b9\u3059\u308b\u3068\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u304c\u5229\u7528\u3067\u304d\u308b\u3068\u601d\u3044\u307e\u3059\uff0e\n$ cvlc --extraintf=http --http-port=8081 --http-password='raspberry' ~/podcasts/`date +\\%F`/`date +\\%F`-podcasts.m3u --sout '#standard{access=http,mux=ts,dst=:8080}' --loop\n\n\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u8a2d\u5b9a\u3057\u306a\u3044\u3068\u30d1\u30b9\u30ef\u30fc\u30c9\u306e\u8a2d\u5b9a\u3092\u4fc3\u3059\u753b\u9762\u304c\u8868\u793a\u3055\u308c\u3066\u5229\u7528\u3067\u304d\u306a\u3044\u3088\u3046\u3067\u3059\uff0e\nhttp \u306e\u8a2d\u5b9a(\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u306e\u4f5c\u6210)\nboa\u306e\u6a19\u6e96\u3067\u306f /var/www \u4ee5\u4e0b\u304cDocumentRoot\u306b\u306a\u3063\u3066\u3044\u307e\u3059\uff0e\u3053\u3053\u306b\u30e1\u30cb\u30e5\u30fc\u7528\u306e index.html \u3068\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u306e podcast.m3u \u3092\u7528\u610f\u3057\u3066\u304a\u304d\u307e\u3059\uff0e\n\u6a29\u9650\u306f www-data.www-data \u306a\u306e\u3067\uff0c\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u611f\u3058\u3067\u6a29\u9650\u3092\u8a2d\u5b9a\u3057\u3066\u7de8\u96c6\u3059\u308b\u3068\u3044\u3044\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e\n$ sudo chown www-data.www-data /var/www$ sudo -u www-data vi /var/www/index.html   :\n\n/var/www/index.html \u306e\u4f8b\n\n<html><body><ul><li><a href="./podcast.m3u">m3u</a></li><li><a href="http://:raspberry@192.168.2.200:8081/">VLC control</a></li></ul></body></html>\n\u203bAndroid\u3067\u306fAvahi\u3067\u306e\u540d\u524d\u89e3\u6c7a\u304c\u3046\u307e\u304f\u884c\u304b\u306a\u3044\u306e\u3067IP \u30a2\u30c9\u30ec\u30b9\u3067\u66f8\u3044\u3066\u3044\u307e\u3059\uff0e\u74b0\u5883\u306b\u5408\u308f\u305b\u3066\u5909\u66f4\u3057\u3066\u4e0b\u3055\u3044\uff0e\n\n/var/www/podcast.m3u \u306e\u4f8b\n\nhttp://192.168.2.200:8080/http://192.168.2.200/podcast.m3u\n1\u884c\u76ee\u3060\u3051\u3060\u30681\u756a\u7d44\u5206\u3067\u518d\u751f\u304c\u505c\u6b62\u3057\u3066\u3057\u307e\u3046\u306e\u3067\uff0c2\u884c\u76ee\u3067\u81ea\u5206\u81ea\u8eab\u3092\u547c\u3073\u51fa\u3057\u3066\u518d\u8d77\u3057\u3066\u3044\u307e\u3059\uff0e\u3053\u308c\u30672\u756a\u7d44\u4ee5\u964d\u3067\u3082\u7d9a\u3051\u3066\u518d\u751f\u3055\u308c\u307e\u3059\uff0e\n\u203bAndroid\u3067\u306fAvahi\u3067\u306e\u540d\u524d\u89e3\u6c7a\u304c\u3046\u307e\u304f\u884c\u304b\u306a\u3044\u306e\u3067ip \u30a2\u30c9\u30ec\u30b9\u3067\u66f8\u3044\u3066\u3044\u307e\u3059\uff0e\u74b0\u5883\u306b\u5408\u308f\u305b\u3066\u5909\u66f4\u3057\u3066\u4e0b\u3055\u3044\uff0e\n\u81ea\u52d5\u8d77\u52d5\u3068podcast\u66f4\u65b0\u51e6\u7406\ncrontab \u3067\u8d77\u52d5\u6642\u306b\u81ea\u52d5\u7684\u306b\u518d\u751f\u304c\u59cb\u307e\u308b\u3088\u3046\u306b&\u5b9a\u671f\u7684\u306bpodcast\u66f4\u65b0&\u518d\u751f\u30ea\u30b9\u30c8\u66f4\u65b0&\u53e4\u3044podcast\u306e\u524a\u9664\u51e6\u7406\u3092\u3057\u307e\u3059\uff0e\ncrontab -e \u30b3\u30de\u30f3\u30c9\u3067\u7de8\u96c6\u3057\u307e\u3059\uff0e\n@reboot cvlc --extraintf=http --http-port=8081 --http-password='raspberry' ~/podcasts/`date +\\%F`/`date +\\%F`-podcasts.m3u --sout '#standard{access=http,mux=ts,dst=:8080}' --loop3 */6 * * *     podracer;killall vlc;cvlc --extraintf=http --http-port=8081 --http-password='raspberry' ~/podcasts/`date +\\%F`/`date +\\%F`-podcasts.m3u --sout '#standard{access=http,mux=ts,dst=:8080}' --loop10 0 * * *  rm -rf ~/podcasts/`date --date '1 weeks ago' +\\%F`\n1\u884c\u76ee\u306f @reboot \u3067\u8d77\u52d5\u6642\u306bVLC\u3092\u81ea\u52d5\u8d77\u52d5\u3057\u307e\u3059\uff0e\n2\u884c\u76ee\u306f6\u6642\u9593\u6bce\u306bpodcast\u3092\u66f4\u65b0\u3057\u3066VLC\u3092\u8d77\u52d5\u3057\u306a\u304a\u3057\u3066\u3044\u307e\u3059\uff0e\n3\u884c\u76ee\u30671\u9031\u9593\u524d\u306epodcast\u30c7\u30fc\u30bf\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059\uff0e\n\u5229\u7528\u65b9\u6cd5\n\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067 Raspberry Pi \u306b\u30a2\u30af\u30bb\u30b9\u3057\u307e\u3059\uff0e\n\nhttp://raspberrypi.local\n\n\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u30e1\u30cb\u30e5\u30fc\u304c\u51fa\u3066\u6765\u307e\u3059\uff0e\n\n\n\u2022 m3u\n\u2022 VLC control\n\nm3u \u3092\u30af\u30ea\u30c3\u30af\u3059\u308b\u3068\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u304c\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3055\u308c\u307e\u3059\uff0eVLC \u7b49\u306e\u95a2\u9023\u4ed8\u3051\u3089\u308c\u305f\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306a\u3069\u3067\u518d\u751f\u3067\u304d\u308b\u3068\u601d\u3044\u307e\u3059\uff0e\n\nVLC control \u3092\u30af\u30ea\u30c3\u30af\u3059\u308b\u3068VLC\u306e\u30a6\u30a7\u30d6\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u304c\u8868\u793a\u3055\u308c\u307e\u3059\uff0eURL\u306b\u8a8d\u8a3c\u60c5\u5831\u3092\u57cb\u3081\u8fbc\u3093\u3067\u3044\u308b\u306e\u3067\u8a8d\u8a3c\u306f\u30b9\u30ad\u30c3\u30d7\u3055\u308c\u307e\u3059\uff0e\n\u554f\u984c\u70b9\u3084\u6539\u5584\u70b9\u306a\u3069\n\n\u30d6\u30ed\u30fc\u30c9\u30ad\u30e3\u30b9\u30c8\u914d\u4fe1\u306e\u65ad\u5ff5\uff0e \u306f\u3058\u3081\u30d6\u30ed\u30fc\u30c9\u30ad\u30e3\u30b9\u30c8\u914d\u4fe1\u3092\u8a66\u3057\u305f\u306e\u3067\u3059\u304c\uff0c\u304b\u306a\u308a\u306e\u983b\u5ea6\u3067\u30d1\u30b1\u30c3\u30c8\u30ed\u30b9\u3057\u3066\u305d\u306e\u305f\u3073\u306b\u97f3\u304c\u9014\u5207\u308c\u307e\u3057\u305f\uff0e\u97f3\u304c\u9014\u5207\u308c\u308b\u306e\u306f\u304b\u306a\u308a\u30b9\u30c8\u30ec\u30b9\u306a\u306e\u3067\u8ae6\u3081\u307e\u3057\u305f\uff0e\u30d7\u30ec\u30a4\u30ea\u30b9\u30c8\u304c\u306a\u304f\u3066\u3082\u9023\u7d9a\u518d\u751f\u53ef\u80fd\u306a\u306e\u306f\u826f\u304b\u3063\u305f\u306e\u3067\u3059\u304c\u2026\u2026\uff0e\npodcast\u66f4\u65b0\u6642\u306e\u756a\u7d44\u5f37\u5236\u7d42\u4e86\uff0e\u66f4\u65b0\u6642\u306bVLC\u3092kill\u3057\u3066\u3044\u307e\u3059\uff0e\u756a\u7d44\u306e\u9014\u4e2d\u3067\u5207\u308c\u3066\u3057\u307e\u3046\u306e\u3067\u6539\u5584\u3057\u305f\u3044\u3067\u3059\uff0e\npodcast \u306e\u97f3\u91cf\u3084\u97f3\u8cea\u3092\u63c3\u3048\u308b\uff0e\u8a66\u3057\u306bmp3/128kbps\u308464kbps\u306b\u30ea\u30a2\u30eb\u30bf\u30a4\u30e0\u30a8\u30f3\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0\u3057\u3064\u3064\u914d\u4fe1\u3082\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\u304c Raspberry Pi \u3067\u3082CPU 25%\u524d\u5f8c\u306a\u306e\u3067\u5b9f\u7528\u7684\u306a\u611f\u3058\u3067\u3059\uff0e\n\u5e2f\u57df\u3092\u7d5e\u3063\u305f\u30b9\u30c8\u30ea\u30fc\u30e0\u3082\u540c\u6642\u914d\u4fe1\u3059\u308b\u3088\u3046\u306b\u3057\u3066\u5916\u3067\u8074\u304d\u3084\u3059\u304f\u3059\u308b\u306e\u3082\u3042\u308a\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e\nVLC \u304b\u3089\u4ed6\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306b\u5909\u66f4\uff0e\u4eca\u56de\u304a\u624b\u8efd\u306a\u306e\u3067 VLC \u3092\u5229\u7528\u3057\u307e\u3057\u305f\u304c Gstreamer \u3084 ffmpeg \u306a\u3069\u3092\u8a66\u3059\u306e\u3082\u3042\u308a\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e\n\u30b9\u30d4\u30fc\u30ab\u30fc\u3067\u3082\u518d\u751f\uff0e\u74b0\u5883\u306b\u3088\u3063\u3066\u306f\u540c\u6642\u306b\u30b9\u30d4\u30fc\u30ab\u30fc\u3067\u518d\u751f\u3057\u3066\u3082\u3044\u3044\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e\n\u756a\u7d44\u60c5\u5831\u306e\u914d\u4fe1\uff0e\u4eca\u306f\u672a\u77e5\u306e\u30a2\u30fc\u30c6\u30a3\u30b9\u30c8\u306a\u3069\u3068\u8868\u793a\u3055\u308c\u308b\uff0e\u30a2\u30fc\u30c8\u30ef\u30fc\u30af\u3082\u542b\u3081\u3066\u6539\u5584\u3057\u305f\u3044\uff0e\n\n\u66f4\u65b0\u9593\u9694\u306e\u8abf\u6574\uff0e\u30cb\u30e5\u30fc\u30b9\u756a\u7d44\u306a\u3069\u5b9a\u6642\u306e\u3042\u308b\u756a\u7d44\u304c\u3042\u308b\u306e\u3067\u305d\u308c\u3089\u306b\u5408\u308f\u305b\u3066\u66f4\u65b0\u51e6\u7406\u3092\u884c\u3046\u3088\u3046\u306b\u3059\u308b\u3068\u4fbf\u5229\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e\n\u540d\u524d\u89e3\u6c7a\uff0eAndroid\u3067Avahi\u304c\u5229\u7528\u3067\u304d\u306a\u3044\u306e\u3067\u5bb6\u306e\u4e2d\u306eDNS\u30b5\u30fc\u30d0\u306b\u540d\u524d\u3092\u767b\u9332\u3057\u3066\u3042\u3052\u308b\u3068\u4fbf\u5229\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e\npifm\u3092\u4f7f\u3063\u3066FM\u30e9\u30b8\u30aa\u3067\u3082\u8996\u8074\uff0e\u65e5\u672c\u3060\u3068\u96fb\u6ce2\u6cd5\u9055\u53cd\u306b\u306a\u308b\u306e\u3067\u81ea\u91cd\u3057\u307e\u3057\u305f\uff0e\n\n\n\n\n\n\u73fe\u5728\u306f\u4e3b\u306bAndroid\u30a2\u30d7\u30ea\u306eVLC\u3067\u518d\u751f\u3057\u3066\u3044\u307e\u3059\uff0eAndroid\u3068PC\u306fBluetooth A2DP\u3067\u7e4b\u304c\u3063\u3066\u3044\u3066\uff0cPC\u3067\u805e\u3044\u3066\u3044\u307e\u3059\uff0ePC\u304b\u3089\u96e2\u308c\u308b\u3068\u304d\u306fAndroid\u306b\u30a4\u30e4\u30db\u30f3\u30b8\u30e3\u30c3\u30af\u3092\u5dee\u3057\u66ff\u3048\u308b\u3068\u30b7\u30fc\u30e0\u30ec\u30b9\u306b\u79fb\u52d5\u3067\u304d\u307e\u3059\uff0e", "date_published": "2016-01-31T21:14:42+09:00", "date_modified": "2016-02-01T01:14:21+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Android", "Jessie", "Linux", "podcast", "Rasbian", "RaspberryPi", "Rasbian_jessie", "Raspberry Pi" ] }, { "id": "http://matoken.org/blog/?p=1090", "url": "https://matoken.org/blog/2016/01/30/setting-the-watchdog-in-raspbian-jessie/", "title": "Rasbian jessie \u3067 watchdog \u3092\u8a2d\u5b9a\u3059\u308b", "content_html": "

\n

Rasbian jessie \u74b0\u5883\u3067\u3082\u8a2d\u5b9a\u3057\u305f\u306e\u3067\u30e1\u30e2\u3068\u3057\u3066\uff0e

\n

\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u5c0e\u5165

\n
$ sudo apt install watchdog
\n

\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u4fee\u6b63

\n

/etc/watchdog.conf \u3092\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u7de8\u96c6

\n
-#min-memory              = 1
+min-memory              = 5000
 
-#watchdog-device       = /dev/watchdog
+watchdog-device        = /dev/watchdog
\n

min-memory \u306f\u30da\u30fc\u30b8\u30b5\u30a4\u30ba\uff0e\u4eca\u56de\u306f4096*5000\u3067\u7d0420MB\uff0e\u3053\u306e\u30b5\u30a4\u30ba(swap\u3092\u542b\u3081\u305f\u5bb9\u91cf)\u3092\u5207\u3063\u305f\u3089\u518d\u8d77\u52d5\u3059\u308b\u306f\u305a\uff0e\u5927\u304d\u3044\u3088\u3046\u306a\u6c17\u3082\u3059\u308b\u3051\u3069\u307e\u305a\u306f\u52d5\u4f5c\u78ba\u8a8d\u306e\u305f\u3081\u306b\u3053\u306e\u304f\u3089\u3044\u306b\u3057\u3066\u307f\u308b\uff0e

\n

/etc/default/watchdog \u3092\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u611f\u3058\u306b\u7de8\u96c6\u3057\u3066 bcm2708_wdog \u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u8aad\u307f\u3053\u3080\u3088\u3046\u306b\u3059\u308b\uff0e

\n
-watchdog_module="none"
+watchdog_module="bcm2708_wdog"
\n

\u8d77\u52d5\u8a2d\u5b9a

\n
$ sudo update-rc.d watchdog defaults
$ sudo update-rc.d watchdog enable
\n

\u52d5\u4f5c\u78ba\u8a8d

\n

\u518d\u8d77\u52d5\u3057\u3066

\n
$ sudo reboot
\n

\u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u8aad\u307f\u8fbc\u307f\uff0c\u30c7\u30d0\u30a4\u30b9\u306e\u78ba\u8a8d\uff0c\u30c7\u30fc\u30e2\u30f3\u306e\u78ba\u8a8d\u3092\u3059\u308b\uff0e

\n
$ lsmod|grep dog
bcm2708_wdog            3926  1
$ ls -l /dev/watchdog
crw------- 1 root root 10, 130  1\u6708 26 23:32 /dev/watchdog
$ ps -ef|grep dog
root       642     1  0 23:32 ?        00:00:00 /usr/sbin/watchdog
\n

\u554f\u984c\u7121\u3055\u305d\u3046\u306a\u3089 swap \u3092\u7121\u52b9\u306b\u3057\u3066\u30d5\u30a1\u30a4\u30eb\u30b7\u30b9\u30c6\u30e0\u3092 read only \u3084 sync \u3092\u6709\u52b9\u306b\u3057\u3066\u304a\u3044\u3066\u304b\u3089 Forkbomb \u3067\u52d5\u4f5c\u78ba\u8a8d\u3092\u3057\u3066\u307f\u308b\uff0e\u4ee5\u4e0b\u306e\u4f8b\u3067\u306fbash\u3067\u306eForkbomb

\n
$ sudo swapoff -a
$ sync
$ sudo mount -o remount,ro /boot
$ sudo mount -o remount,sync /
$ :(){ :|:& };:
\n

\u3046\u307e\u304f\u518d\u8d77\u52d5\u304c\u8d70\u3063\u305f\u3089\u5f8c\u306f /etc/watchdog.conf \u3092\u8a70\u3081\u3066\u3044\u304f\ufeff\uff0e

\n\n

kernel panic \u6642\u306e\u8a2d\u5b9a

\n

bcm2708_wdog \u3092\u4f7f\u3063\u3066\u3044\u308b\u306e\u3067kernel panic \u6642\u306b\u3082 watchdog \u306f\u52b9\u304f\u306f\u305a\u3060\u3051\u3069\u5ff5\u306e\u70ba\u8a2d\u5b9a\u3057\u3066\u304a\u304f\uff0e

\n

/etc/sysctl.conf \u306b\u4ee5\u4e0b\u3092\u8ffd\u8a18

\n
kernel.panic = 180
kernel.panic_on_oops = 1
\n

sysctl \u3084\u518d\u8d77\u52d5\u3067\u53cd\u6620\uff0e

\n
$ sudo sysctl -p
kernel.panic = 60
kernel.panic_on_oops = 1
\n

\n

\n", "content_text": "Rasbian jessie \u74b0\u5883\u3067\u3082\u8a2d\u5b9a\u3057\u305f\u306e\u3067\u30e1\u30e2\u3068\u3057\u3066\uff0e\n\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u5c0e\u5165\n$ sudo apt install watchdog\n\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u4fee\u6b63\n/etc/watchdog.conf \u3092\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u7de8\u96c6\n-#min-memory              = 1+min-memory              = 5000 -#watchdog-device       = /dev/watchdog+watchdog-device        = /dev/watchdog\nmin-memory \u306f\u30da\u30fc\u30b8\u30b5\u30a4\u30ba\uff0e\u4eca\u56de\u306f4096*5000\u3067\u7d0420MB\uff0e\u3053\u306e\u30b5\u30a4\u30ba(swap\u3092\u542b\u3081\u305f\u5bb9\u91cf)\u3092\u5207\u3063\u305f\u3089\u518d\u8d77\u52d5\u3059\u308b\u306f\u305a\uff0e\u5927\u304d\u3044\u3088\u3046\u306a\u6c17\u3082\u3059\u308b\u3051\u3069\u307e\u305a\u306f\u52d5\u4f5c\u78ba\u8a8d\u306e\u305f\u3081\u306b\u3053\u306e\u304f\u3089\u3044\u306b\u3057\u3066\u307f\u308b\uff0e\n/etc/default/watchdog \u3092\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u611f\u3058\u306b\u7de8\u96c6\u3057\u3066 bcm2708_wdog \u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u8aad\u307f\u3053\u3080\u3088\u3046\u306b\u3059\u308b\uff0e\n-watchdog_module="none"+watchdog_module="bcm2708_wdog"\n\u8d77\u52d5\u8a2d\u5b9a\n$ sudo update-rc.d watchdog defaults$ sudo update-rc.d watchdog enable\n\u52d5\u4f5c\u78ba\u8a8d\n\u518d\u8d77\u52d5\u3057\u3066\n$ sudo reboot\n\u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u8aad\u307f\u8fbc\u307f\uff0c\u30c7\u30d0\u30a4\u30b9\u306e\u78ba\u8a8d\uff0c\u30c7\u30fc\u30e2\u30f3\u306e\u78ba\u8a8d\u3092\u3059\u308b\uff0e\n$ lsmod|grep dogbcm2708_wdog            3926  1$ ls -l /dev/watchdogcrw------- 1 root root 10, 130  1\u6708 26 23:32 /dev/watchdog$ ps -ef|grep dogroot       642     1  0 23:32 ?        00:00:00 /usr/sbin/watchdog\n\u554f\u984c\u7121\u3055\u305d\u3046\u306a\u3089 swap \u3092\u7121\u52b9\u306b\u3057\u3066\u30d5\u30a1\u30a4\u30eb\u30b7\u30b9\u30c6\u30e0\u3092 read only \u3084 sync \u3092\u6709\u52b9\u306b\u3057\u3066\u304a\u3044\u3066\u304b\u3089 Forkbomb \u3067\u52d5\u4f5c\u78ba\u8a8d\u3092\u3057\u3066\u307f\u308b\uff0e\u4ee5\u4e0b\u306e\u4f8b\u3067\u306fbash\u3067\u306eForkbomb\n$ sudo swapoff -a$ sync$ sudo mount -o remount,ro /boot$ sudo mount -o remount,sync /$ :(){ :|:& };:\n\u3046\u307e\u304f\u518d\u8d77\u52d5\u304c\u8d70\u3063\u305f\u3089\u5f8c\u306f /etc/watchdog.conf \u3092\u8a70\u3081\u3066\u3044\u304f\ufeff\uff0e\n\nFork bomb – Wikipedia, the free encyclopediaFork bomb – Wikipedia, the free encyclopedia\n\nkernel panic \u6642\u306e\u8a2d\u5b9a\nbcm2708_wdog \u3092\u4f7f\u3063\u3066\u3044\u308b\u306e\u3067kernel panic \u6642\u306b\u3082 watchdog \u306f\u52b9\u304f\u306f\u305a\u3060\u3051\u3069\u5ff5\u306e\u70ba\u8a2d\u5b9a\u3057\u3066\u304a\u304f\uff0e\n/etc/sysctl.conf \u306b\u4ee5\u4e0b\u3092\u8ffd\u8a18\nkernel.panic = 180kernel.panic_on_oops = 1\nsysctl \u3084\u518d\u8d77\u52d5\u3067\u53cd\u6620\uff0e\n$ sudo sysctl -pkernel.panic = 60kernel.panic_on_oops = 1", "date_published": "2016-01-30T21:38:55+09:00", "date_modified": "2016-01-30T21:38:55+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Jessie", "RaspberryPi", "Raspbian", "Linux", "Rasbian_jessie", "Raspberry Pi" ] }, { "id": "http://matoken.org/blog/?p=1071", "url": "https://matoken.org/blog/2016/01/18/i-tried-playing-around-with-awk-made-3d-shooter-game-awkaster/", "title": "awk \u88fd 3D\u30b7\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0\u30b2\u30fc\u30e0 awkaster \u3067\u904a\u3093\u3067\u307f\u305f", "content_html": "

awk \u88fd 3D\u30b7\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0\u30b2\u30fc\u30e0\u304c\u3042\u308b\u3068\u805e\u3044\u3066\u904a\u3093\u3067\u307f\u307e\u3057\u305f\uff0e

\n\n

\u904a\u3076\u306b\u306f GNU awk 4.0.0 \u4ee5\u4e0a\u304c\u5fc5\u8981\u3067\u3059\uff0eDebian \u3060\u3068 gawk \u3068\u3044\u3046\u30d1\u30c3\u30b1\u30fc\u30b8\u3067\u3059\uff0e\u3068\u308a\u3042\u3048\u305a\u904a\u3093\u3067\u307f\u308b\u306b\u306f\u3053\u3093\u306a\u611f\u3058\u3067\uff0e

\n
$ sudo apt install gawk
$ wget https://raw.githubusercontent.com/TheMozg/awk-raycaster/master/awkaster.awk
$ awk -f ./awkaster.awk
\n

\u64cd\u4f5c\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u3059\uff0e

\n\n

\u4ee5\u4e0b\u306f\u904a\u3093\u3067\u3044\u308b\u69d8\u5b50\u3067\u3059\uff0e

\n

\"asciicast\"

\n

3D\u30b7\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0\u3068\u3044\u3046\u3068\u30b9\u30bf\u30fc\u30d5\u30a9\u30c3\u30af\u30b9\u3092\u601d\u3044\u6d6e\u304b\u3079\u305f\u306e\u3067\u3059\u304c\uff0c\u5358\u7d14\u306a 3D RPG \u7684\u306a\u611f\u3058\u3067\u3059\uff0eWolfenstein 3D \u3068 doom \u306b\u89e6\u767a\u3055\u308c\u305f\u305d\u3046\u3067\u3059\uff0eWolfenstein 3DWolfenstein 3D\u3000\u306f\u77e5\u3089\u306a\u3044\u306e\u3067\u3059\u304c\u78ba\u304b\u306b doom \u307f\u305f\u3044\u306a\u611f\u3058\u3067\u3059\uff0e
\n\u30bf\u30fc\u30f3\u5236?\u306a\u306e\u3067\u6575\u306e\u8d64\u7403\u304c\u51fa\u3066\u304d\u3066\u3082\u614c\u3066\u305a\u64cd\u4f5c\u3067\u304d\u307e\u3059\uff0e

\n

\u6575\u306b\u89e6\u308c\u308b\u3068HP\u304c\u6e1b\u3063\u3066\u3044\u3063\u30660\u306b\u306a\u308b\u3068\u30b2\u30fc\u30e0\u30aa\u30fc\u30d0\u30fc\u3067\u3053\u3093\u306a\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u51fa\u307e\u3059\uff0e

\n
GAME OVER! YOU LOSE!
Credits: Fedor 'TheMozg' Kalugin
https://github.com/TheMozg/awk-raycaster
Gameplay testing - Alex 'Yakojo' & Danya 'bogych97'
Go away!
\n

\u3046\u307e\u3044\u3053\u3068\u30a8\u30ec\u30d9\u30fc\u30bf\u30fc\u306b\u5230\u7740\u3057\u3066 X \u3092\u62bc\u3059\u3068\u30b2\u30fc\u30e0\u30af\u30ea\u30a2\u3067\u3059\uff0e
\n\u4f46\u3057 ELEVATOR COMING \u304c 0 \u306b\u306a\u3063\u3066\u3044\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\uff0e\u3053\u308c\u306f\u521d\u3081 1000 \u30671\u64cd\u4f5c\u30671\u30ab\u30a6\u30f3\u30c8\u30c0\u30a6\u30f3\u3055\u308c\u307e\u3059\uff0e\u30b4\u30fc\u30eb\u306e\u30a8\u30ec\u30d9\u30fc\u30bf\u30fc\u306e\u5834\u6240\u306f\u898b\u305f\u76ee\u308f\u304b\u308a\u307e\u305b\u3093
\n\u6575\u304c\u6ca2\u5c71\u5c45\u308b\u3068\u3053\u308d\u306e\u8fba\u308a\u306b\u3042\u308b\u306e\u3067\u63a2\u3057\u3066\u307f\u3066\u4e0b\u3055\u3044\uff0e
\n(\u79c1\u306f\u5224\u3093\u306a\u304f\u3066\u7d50\u5c40 source \u8aad\u3093\u3067\u30af\u30ea\u30a2\u3057\u307e\u3057\u305forz)

\n
YOU WIN! YOUR SCORE: 4900
Credits: Fedor 'TheMozg' Kalugin
https://github.com/TheMozg/awk-raycaster
Gameplay testing - Alex 'Yakojo' & Danya 'bogych97'
Go away!
\n

\u3061\u306a\u307f\u306b\u305d\u3053\u305d\u3053\u5e83\u3044\u9818\u57df\u304c\u5fc5\u8981\u3067\u3059\uff0e\u9818\u57df\u304c\u72ed\u3044\u3068\u753b\u9762\u306b\u53ce\u307e\u308a\u304d\u3089\u305a\u305a\u308c\u3066\u3057\u307e\u3044\u307e\u3059\uff0e\u30d5\u30a9\u30f3\u30c8\u30b5\u30a4\u30ba\u3092\u5c0f\u3055\u304f\u3059\u308b\u306a\u3069\u3057\u3066\u5217\u3068\u884c\u3092\u78ba\u4fdd\u3057\u307e\u3057\u3087\u3046\uff0e
\nGNU screen \u4e0a\u3067\u3082 Rasbian jessie \u4e0a\u3067\u3082\u554f\u984c\u306a\u304f\u52d5\u304d\u307e\u3057\u305f\uff0e

\n

\u6614\u3053\u3093\u306a3D\u8ff7\u8def\u3068\u304b\u3092\u30dd\u30b1\u30b3\u30f3BASIC \u3067\u4f5c\u3063\u3066\u3044\u305f\u306e\u3092\u601d\u3044\u51fa\u3057\u307e\u3057\u305f\uff0e\u6700\u8fd1\u306e\u30de\u30a4\u30b3\u30f3\u3084Raspberry Pi \u3067\u3053\u3046\u3044\u3046\u30b2\u30fc\u30e0\u3092\u4f5c\u3063\u3066\u307f\u308b\u306e\u3082\u697d\u3057\u305d\u3046\u3067\u3059\u306d :)
\n(Arduboy \u3068\u304b POCKETC.H.I.P. \u3068\u304b )

\n", "content_text": "awk \u88fd 3D\u30b7\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0\u30b2\u30fc\u30e0\u304c\u3042\u308b\u3068\u805e\u3044\u3066\u904a\u3093\u3067\u307f\u307e\u3057\u305f\uff0e\n\nTheMozg/awk-raycaster\n\nShow HN: 3D shooter in your terminal using raycasting in Awk | Hacker News\n\n\n\n\u904a\u3076\u306b\u306f GNU awk 4.0.0 \u4ee5\u4e0a\u304c\u5fc5\u8981\u3067\u3059\uff0eDebian \u3060\u3068 gawk \u3068\u3044\u3046\u30d1\u30c3\u30b1\u30fc\u30b8\u3067\u3059\uff0e\u3068\u308a\u3042\u3048\u305a\u904a\u3093\u3067\u307f\u308b\u306b\u306f\u3053\u3093\u306a\u611f\u3058\u3067\uff0e\n$ sudo apt install gawk$ wget https://raw.githubusercontent.com/TheMozg/awk-raycaster/master/awkaster.awk$ awk -f ./awkaster.awk\n\u64cd\u4f5c\u306f\u3053\u3093\u306a\u611f\u3058\u3067\u3059\uff0e\n\n1234 \u753b\u9762\u8868\u793a\u5207\u308a\u66ff\u3048\nWASD \u79fb\u52d5\nJL \u56de\u8ee2(16\u56de\u30671\u56de\u8ee2)/Shift\u3092\u62bc\u3057\u306a\u304c\u3089\u3067\u9ad8\u901f\u56de\u8ee2(8\u56de\u30671\u56de\u8ee2)\nSPACE \u653b\u6483\nX \u30a8\u30ec\u30d9\u30fc\u30bf\u30fc\u306b\u4e57\u308b\uff08\u30b2\u30fc\u30e0\u30af\u30ea\u30a2\uff09\nQ \u7d42\u4e86\n\n\u4ee5\u4e0b\u306f\u904a\u3093\u3067\u3044\u308b\u69d8\u5b50\u3067\u3059\uff0e\n\n3D\u30b7\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0\u3068\u3044\u3046\u3068\u30b9\u30bf\u30fc\u30d5\u30a9\u30c3\u30af\u30b9\u3092\u601d\u3044\u6d6e\u304b\u3079\u305f\u306e\u3067\u3059\u304c\uff0c\u5358\u7d14\u306a 3D RPG \u7684\u306a\u611f\u3058\u3067\u3059\uff0eWolfenstein 3D \u3068 doom \u306b\u89e6\u767a\u3055\u308c\u305f\u305d\u3046\u3067\u3059\uff0eWolfenstein 3DWolfenstein 3D\u3000\u306f\u77e5\u3089\u306a\u3044\u306e\u3067\u3059\u304c\u78ba\u304b\u306b doom \u307f\u305f\u3044\u306a\u611f\u3058\u3067\u3059\uff0e\n\u30bf\u30fc\u30f3\u5236?\u306a\u306e\u3067\u6575\u306e\u8d64\u7403\u304c\u51fa\u3066\u304d\u3066\u3082\u614c\u3066\u305a\u64cd\u4f5c\u3067\u304d\u307e\u3059\uff0e\n\u6575\u306b\u89e6\u308c\u308b\u3068HP\u304c\u6e1b\u3063\u3066\u3044\u3063\u30660\u306b\u306a\u308b\u3068\u30b2\u30fc\u30e0\u30aa\u30fc\u30d0\u30fc\u3067\u3053\u3093\u306a\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u51fa\u307e\u3059\uff0e\nGAME OVER! YOU LOSE!Credits: Fedor 'TheMozg' Kaluginhttps://github.com/TheMozg/awk-raycasterGameplay testing - Alex 'Yakojo' & Danya 'bogych97'Go away!\n\u3046\u307e\u3044\u3053\u3068\u30a8\u30ec\u30d9\u30fc\u30bf\u30fc\u306b\u5230\u7740\u3057\u3066 X \u3092\u62bc\u3059\u3068\u30b2\u30fc\u30e0\u30af\u30ea\u30a2\u3067\u3059\uff0e\n\u4f46\u3057 ELEVATOR COMING \u304c 0 \u306b\u306a\u3063\u3066\u3044\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\uff0e\u3053\u308c\u306f\u521d\u3081 1000 \u30671\u64cd\u4f5c\u30671\u30ab\u30a6\u30f3\u30c8\u30c0\u30a6\u30f3\u3055\u308c\u307e\u3059\uff0e\u30b4\u30fc\u30eb\u306e\u30a8\u30ec\u30d9\u30fc\u30bf\u30fc\u306e\u5834\u6240\u306f\u898b\u305f\u76ee\u308f\u304b\u308a\u307e\u305b\u3093\n\u6575\u304c\u6ca2\u5c71\u5c45\u308b\u3068\u3053\u308d\u306e\u8fba\u308a\u306b\u3042\u308b\u306e\u3067\u63a2\u3057\u3066\u307f\u3066\u4e0b\u3055\u3044\uff0e\n(\u79c1\u306f\u5224\u3093\u306a\u304f\u3066\u7d50\u5c40 source \u8aad\u3093\u3067\u30af\u30ea\u30a2\u3057\u307e\u3057\u305forz)\nYOU WIN! YOUR SCORE: 4900Credits: Fedor 'TheMozg' Kaluginhttps://github.com/TheMozg/awk-raycasterGameplay testing - Alex 'Yakojo' & Danya 'bogych97'Go away!\n\u3061\u306a\u307f\u306b\u305d\u3053\u305d\u3053\u5e83\u3044\u9818\u57df\u304c\u5fc5\u8981\u3067\u3059\uff0e\u9818\u57df\u304c\u72ed\u3044\u3068\u753b\u9762\u306b\u53ce\u307e\u308a\u304d\u3089\u305a\u305a\u308c\u3066\u3057\u307e\u3044\u307e\u3059\uff0e\u30d5\u30a9\u30f3\u30c8\u30b5\u30a4\u30ba\u3092\u5c0f\u3055\u304f\u3059\u308b\u306a\u3069\u3057\u3066\u5217\u3068\u884c\u3092\u78ba\u4fdd\u3057\u307e\u3057\u3087\u3046\uff0e\nGNU screen \u4e0a\u3067\u3082 Rasbian jessie \u4e0a\u3067\u3082\u554f\u984c\u306a\u304f\u52d5\u304d\u307e\u3057\u305f\uff0e\n\u6614\u3053\u3093\u306a3D\u8ff7\u8def\u3068\u304b\u3092\u30dd\u30b1\u30b3\u30f3BASIC \u3067\u4f5c\u3063\u3066\u3044\u305f\u306e\u3092\u601d\u3044\u51fa\u3057\u307e\u3057\u305f\uff0e\u6700\u8fd1\u306e\u30de\u30a4\u30b3\u30f3\u3084Raspberry Pi \u3067\u3053\u3046\u3044\u3046\u30b2\u30fc\u30e0\u3092\u4f5c\u3063\u3066\u307f\u308b\u306e\u3082\u697d\u3057\u305d\u3046\u3067\u3059\u306d :)\n(Arduboy \u3068\u304b POCKETC.H.I.P. \u3068\u304b )", "date_published": "2016-01-18T20:19:36+09:00", "date_modified": "2016-01-18T20:24:29+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "Debian", "Linux", "Rasbian", "RaspberryPi", "stretch", "testing", "Rasbian_jessie", "Raspberry Pi", "Squeeze" ] } ] }