*** pseudodev <pseudodev!uid205973@gateway/web/irccloud.com/x-qdfcgtldnmlzwnod> has joined #sfdroid | 01:02 | |
*** pseudodev <pseudodev!uid205973@gateway/web/irccloud.com/x-qdfcgtldnmlzwnod> has quit IRC (Quit: Connection closed for inactivity) | 04:31 | |
*** CrKit <CrKit!~nekit@37.200.78.29> has joined #sfdroid | 04:36 | |
*** CrKit <CrKit!~nekit@37.200.78.29> has quit IRC (Read error: Connection reset by peer) | 05:11 | |
*** CrKit <CrKit!~nekit@37.200.78.29> has joined #sfdroid | 05:11 | |
*** pseudodev_ <pseudodev_!uid205973@gateway/web/irccloud.com/x-ipdpsangicectyft> has joined #sfdroid | 05:30 | |
*** piggz <piggz!~piggz@95.151.212.235> has quit IRC (Ping timeout: 260 seconds) | 05:43 | |
*** pseudodev_ is now known as pseudodev | 05:48 | |
*** CrKit <CrKit!~nekit@37.200.78.29> has quit IRC (Ping timeout: 260 seconds) | 06:37 | |
*** nh1402 <nh1402!~nh1402@host81-133-137-69.in-addr.btopenworld.com> has joined #sfdroid | 07:10 | |
*** pseudodev <pseudodev!uid205973@gateway/web/irccloud.com/x-ipdpsangicectyft> has quit IRC (Quit: Connection closed for inactivity) | 07:58 | |
*** maheart <maheart!~maheart@110-174-95-7.static.tpgi.com.au> has quit IRC (Ping timeout: 246 seconds) | 08:11 | |
*** maheart <maheart!~maheart@110-174-95-7.static.tpgi.com.au> has joined #sfdroid | 08:12 | |
*** nh1402 <nh1402!~nh1402@host81-133-137-69.in-addr.btopenworld.com> has quit IRC (Ping timeout: 260 seconds) | 09:22 | |
*** nh1402 <nh1402!~nh1402@host81-133-137-69.in-addr.btopenworld.com> has joined #sfdroid | 09:34 | |
*** krnlyng|mobile_ <krnlyng|mobile_!~sailfish@213162072250.public.t-mobile.at> has joined #sfdroid | 10:00 | |
*** krnlyng|mobile_ <krnlyng|mobile_!~sailfish@213162072250.public.t-mobile.at> has quit IRC (Ping timeout: 260 seconds) | 10:07 | |
*** TheKit <TheKit!~nekit@85-95-179-56.saransk.ru> has joined #sfdroid | 10:27 | |
*** NeKit <NeKit!~nekit@85-95-178-206.saransk.ru> has quit IRC (Ping timeout: 276 seconds) | 10:31 | |
*** krnlyng|mobile <krnlyng|mobile!~sailfish@212095007127.public.telering.at> has joined #sfdroid | 10:57 | |
*** ranter <ranter!~ranter@37-136-53-217.rev.dnainternet.fi> has quit IRC (Ping timeout: 248 seconds) | 11:47 | |
*** CrKit <CrKit!~nekit@80.83.238.64> has joined #sfdroid | 11:55 | |
*** CrKit <CrKit!~nekit@80.83.238.64> has quit IRC (Ping timeout: 260 seconds) | 12:09 | |
*** nh1402 <nh1402!~nh1402@host81-133-137-69.in-addr.btopenworld.com> has quit IRC (Quit: Leaving) | 12:22 | |
*** CrKit <CrKit!~nekit@80.83.238.64> has joined #sfdroid | 12:42 | |
*** CrKit <CrKit!~nekit@80.83.238.64> has quit IRC (Ping timeout: 260 seconds) | 12:48 | |
*** krnlyng|mobile <krnlyng|mobile!~sailfish@212095007127.public.telering.at> has quit IRC (Ping timeout: 240 seconds) | 12:52 | |
*** nh1402 <nh1402!~nh1402@146.95.208.46.dyn.plus.net> has joined #sfdroid | 13:03 | |
*** nh1402_ <nh1402_!~nh1402@146.95.208.46.dyn.plus.net> has joined #sfdroid | 13:19 | |
*** nh1402 <nh1402!~nh1402@146.95.208.46.dyn.plus.net> has quit IRC (Ping timeout: 268 seconds) | 13:22 | |
*** krnlyng|mobile <krnlyng|mobile!~sailfish@212095007189.public.telering.at> has joined #sfdroid | 14:38 | |
*** krnlyng|mobile <krnlyng|mobile!~sailfish@212095007189.public.telering.at> has quit IRC (Ping timeout: 248 seconds) | 15:30 | |
*** srohmen <srohmen!~srohmen@x4e302c5f.dyn.telefonica.de> has joined #sfdroid | 15:41 | |
*** srohmen <srohmen!~srohmen@x4e302c5f.dyn.telefonica.de> has quit IRC (Client Quit) | 15:41 | |
*** pseudodev <pseudodev!uid205973@gateway/web/irccloud.com/x-kuynohxhclnhzuir> has joined #sfdroid | 17:01 | |
*** piggz <piggz!~piggz@95.151.212.235> has joined #sfdroid | 17:03 | |
*** piggz <piggz!~piggz@95.151.212.235> has quit IRC (Ping timeout: 248 seconds) | 17:18 | |
*** piggz <piggz!~piggz@95.151.212.235> has joined #sfdroid | 17:19 | |
piggz | saidinesh5: ping | 17:42 |
---|---|---|
saidinesh5 | ssup piggz | 17:42 |
piggz | saidinesh5: trying to build anbox commit you said, just wondering which packages i need to install to solve deps | 17:43 |
piggz | error: Failed build dependencies: | 17:43 |
piggz | mesa-llvmpipe-libEGL-devel is needed by anbox-sailfishos-1-1.armv7hl | 17:43 |
piggz | mesa-llvmpipe-libGLESv2-devel is needed by anbox-sailfishos-1-1.armv7hl | 17:43 |
piggz | mesa-llvmpipe-libwayland-egl-devel is needed by anbox-sailfishos-1-1.armv7hl | 17:44 |
piggz | pkgconfig(libcap) is needed by anbox-sailfishos-1-1.armv7hl | 17:44 |
saidinesh5 | piggz: all the dependencies for anbox are in that repo... | 17:44 |
saidinesh5 | umm | 17:44 |
piggz | when i try to install mesa-llvmpipe-libEGL-devel it wants to remove _loads_ | 17:44 |
saidinesh5 | i think egl-dev should be provided by your droidhal | 17:44 |
piggz | yeah, i thought it was something like that | 17:44 |
saidinesh5 | but otherwise for all the other dependencies needed by anbox, anbox-obs ... http://repo.merproject.org/obs/home:/saidinesh5:/anbox/sailfish_latest_armv7hl/ | 17:45 |
saidinesh5 | they should be in that repo | 17:45 |
piggz | saidinesh5: yes, I have that repo ... and ive installed droid-hal-mido-devel and it still fails the same | 17:46 |
* saidinesh5 looks | 17:46 | |
piggz | and i have libpcap-devel installed and it still complains | 17:46 |
saidinesh5 | libcap or libpcap? | 17:48 |
saidinesh5 | https://github.com/sfdroid/anbox/blob/anbox/rpm/anbox-sailfishos.spec | 17:48 |
saidinesh5 | i think you can remove the mesa libgl dependencies from there | 17:48 |
saidinesh5 | provided that you have the /usr/include/EGL/* files | 17:48 |
saidinesh5 | (in your scratchbox target) | 17:49 |
piggz | doh, yes cap | 17:49 |
piggz | bash-3.2$ sb2 -t $VENDOR-$DEVICE-armv7hl -R -msdk-install ls /usr/include/EGL | 17:49 |
piggz | egl.h eglext.h eglhybris.h eglmesaext.h eglplatform.h | 17:49 |
saidinesh5 | yeah looks good | 17:49 |
saidinesh5 | the packaging was a quick and dirty work iirc. | 17:50 |
saidinesh5 | interesting though.. i have those header files too but i get this: | 17:51 |
saidinesh5 | zypper wp /usr/include/EGL/egl.h | 17:51 |
saidinesh5 | No providers of '/usr/include/EGL/egl.h' found. | 17:51 |
piggz | saidinesh5: is it a long build time? | 17:55 |
saidinesh5 | anbox? nah. takes like 2-5 minutes | 17:56 |
saidinesh5 | anbox-image.. you gotta have it from krnlyng , iirc i the patches for that arent open yet | 17:56 |
piggz | krnlyng: image file? | 17:56 |
piggz | the build seems to ba taking some time | 17:56 |
saidinesh5 | just anbox itself? | 17:56 |
piggz | yes | 17:57 |
saidinesh5 | hmmm.. usually takes 2-5 minutes iirc with make -j5 or something | 17:57 |
piggz | saidinesh5: its ok ... its still working according to the log | 17:58 |
piggz | my laptop is obviously too slow! | 17:58 |
piggz | 89% | 17:58 |
piggz | im using build-packages.sh to do the build | 17:58 |
saidinesh5 | Ah yeah, even i use that most of the time | 17:59 |
piggz | 92 | 17:59 |
saidinesh5 | heh good. Without any compiler errors now | 17:59 |
piggz | built, just need the older image | 18:01 |
saidinesh5 | does OBS keep previous packages? | 18:02 |
saidinesh5 | maybe we can find something there... | 18:02 |
saidinesh5 | https://api.merproject.org/package/show/home:saidinesh5:anbox/anbox-sailfishos-image | 18:02 |
saidinesh5 | piggz: i think we may find you the package | 18:02 |
saidinesh5 | https://api.merproject.org/package/revisions/home:saidinesh5:anbox/anbox-sailfishos-image | 18:03 |
saidinesh5 | revisions there... | 18:03 |
piggz | saidinesh5: but there are no binaries there? | 18:06 |
saidinesh5 | they are the binaries right? | 18:06 |
saidinesh5 | the rpm in the source.. | 18:06 |
piggz | ah | 18:07 |
saidinesh5 | osc fetch or something | 18:09 |
saidinesh5 | looking up the command | 18:09 |
*** piggz <piggz!~piggz@95.151.212.235> has quit IRC (Ping timeout: 258 seconds) | 18:16 | |
*** piggz <piggz!~piggz@95.151.212.235> has joined #sfdroid | 18:19 | |
*** piggz <piggz!~piggz@95.151.212.235> has quit IRC (Ping timeout: 248 seconds) | 18:30 | |
*** piggz <piggz!~piggz@95.151.212.235> has joined #sfdroid | 18:45 | |
piggz | saidinesh5: so .... where are the binaries for the revisions?? | 18:46 |
* saidinesh5 checks | 18:48 | |
piggz | saidinesh5: the <goto repository> link just shows the latest i think | 18:49 |
krnlyng | hi | 18:49 |
saidinesh5 | Yeah but with osc you can download then "sources" | 18:49 |
saidinesh5 | Which is where the binary is | 18:50 |
saidinesh5 | Hey krnlyng | 18:50 |
piggz | ah | 18:50 |
piggz | the binary was a direct upload i guess? | 18:50 |
saidinesh5 | Yep . like dhd | 18:50 |
piggz | yes | 18:51 |
piggz | krnlyng: i built an older anbox ... just need an image | 18:51 |
piggz | to test with | 18:51 |
piggz | ive never used osc | 18:52 |
krnlyng | piggz, you can use the rpms on obs? | 18:52 |
piggz | krnlyng: yes, im just tryingt o figure out how to get the older revision | 18:52 |
krnlyng | why? the one on obs should work for you | 18:53 |
piggz | oh, saidinesh5 said not | 18:53 |
saidinesh5 | krnlyng: the latest ones are the ones where input isnt working right? | 18:53 |
saidinesh5 | so trying to get the older revision from OBS where it was still using the sfdroid backend | 18:54 |
krnlyng | saidinesh5, the one on obs are still using the sfdroid backend | 18:54 |
saidinesh5 | Ohh.. even the most recent one? | 18:54 |
saidinesh5 | iirc we started moving to a headless mode right? | 18:55 |
krnlyng | saidinesh5, ahh maybe input is not working because of https://github.com/sfdroid/anbox/commit/6d053d3bb20245169fac1c8757c254234ad48354 | 18:55 |
krnlyng | but the anbox-image should still work | 18:55 |
krnlyng | so you only need to build anbox container/session manager | 18:55 |
krnlyng | without this patch | 18:55 |
saidinesh5 | Ahh... yeah got piggz to build an older revision of anbox | 18:55 |
saidinesh5 | but wasnt sure what changes were there to the anbox image | 18:56 |
saidinesh5 | so thought to be safe and get an older image where things were working | 18:56 |
krnlyng | ah ok | 18:56 |
krnlyng | saidinesh5, another possibility would be using the rpms from obs and just fixing anbox-init.sh with the overlay | 18:56 |
piggz | so, how do i test it?? :) | 18:56 |
piggz | clicking on the icon doesnt do much | 18:56 |
saidinesh5 | piggz: systemctl start anbox-container-manager | 18:56 |
krnlyng | saidinesh5, piggz but it would be cool if more people can build the sources, there is still lots to do | 18:56 |
saidinesh5 | and then as nemo | 18:57 |
saidinesh5 | anbox --session-manager | 18:57 |
saidinesh5 | should tell you how ti starts or what fails and so on.. | 18:57 |
saidinesh5 | krnlyng: yeah lots of todo even on my plate.. need to clean up and push out the headless flag | 18:57 |
piggz | Jul 14 19:57:27 Sailfish anbox[21667]: [EE 2017-07-14 18:57:27] [container_manager.cpp:144@setup_mounts] Failed to mount Android rootfs | 18:57 |
krnlyng | piggz, you need kernel configs | 18:58 |
saidinesh5 | piggz: you installed anbox-image on the device? | 18:58 |
krnlyng | ah yes and that | 18:58 |
piggz | krnlyng: i think my kernel is ok | 18:58 |
krnlyng | you have CONFIG_SQUASHFS_XZ? | 18:59 |
piggz | krnlyng: nope | 19:01 |
piggz | thatll be it then | 19:01 |
piggz | back when i have a new kernel! | 19:01 |
krnlyng | :) | 19:01 |
*** pseudodev <pseudodev!uid205973@gateway/web/irccloud.com/x-kuynohxhclnhzuir> has quit IRC (Quit: Connection closed for inactivity) | 19:10 | |
piggz | krnlyng: still fails to mount | 19:39 |
piggz | https://bpaste.net/show/137206bfbe8e | 19:39 |
krnlyng | piggz, do you have overlayfs? and saidinesh5 wasn't there some additional config, i cannot remember right now | 19:46 |
saidinesh5 | piggz: what happens when you try to manually mount the anbox image? | 19:47 |
saidinesh5 | also krnlyng piggz' overlayfs could be trying touse mount -t overlay vs. mount -t overlayfs or the other way around, and iirc he patched tht too | 19:48 |
piggz | my /proc/filesystems states overlayfs | 19:50 |
krnlyng | piggz, try mounting it manually to see what the problem is | 19:51 |
krnlyng | piggz, or strace anbox | 19:51 |
saidinesh5 | piggz: could you Mount it manually? | 19:51 |
piggz | on it... | 19:51 |
piggz | krnlyng: saidinesh5: [ 1109.065047] overlayfs: missing upperdir or lowerdir or workdir | 19:55 |
krnlyng | ah damn | 19:55 |
saidinesh5 | Ah.. Odd params prolly | 19:55 |
krnlyng | i know the issue | 19:55 |
krnlyng | did you install anbox before anbox-image? | 19:56 |
piggz | possibly | 19:56 |
krnlyng | piggz, you need to reinstall the anbox rpm then | 19:56 |
piggz | mount("overlayfs", "/var/lib/anbox/rootfs", "overlayfs", MS_MGC_VAL|MS_RDONLY, "lowerdir=/var/lib/anbox/rootfs,upperdir=/var/lib/anbox/overlay") = -1 EINVAL (Invalid argument) | 19:56 |
krnlyng | didn't we put anbox-image as a dependancy? | 19:56 |
piggz | krnlyng: i re-installed my older build of anbox after the image tho | 19:57 |
krnlyng | piggz, did you see the messages which created the folders and injected the blobs to overlay? | 19:57 |
krnlyng | piggz, were there errors? | 19:58 |
piggz | krnlyng: | 19:58 |
piggz | Setting up extra bind mounts | 19:58 |
piggz | /dev/ion | 19:58 |
piggz | /usr/bin/prepare-anbox: line 86: /var/lib/anbox/containers/default/extra_bind_mounts: No such file or directory | 19:58 |
piggz | /dev/kgsl-3d0 | 19:58 |
piggz | /usr/bin/prepare-anbox: line 90: /var/lib/anbox/containers/default/extra_bind_mounts: No such file or directory | 19:58 |
piggz | warning: %post(anbox-sailfishos-1-1.armv7hl) scriptlet failed, exit status 1 | 19:58 |
krnlyng | ok we probably have an error in that script | 19:59 |
krnlyng | piggz, mkdir -p /var/lib/anbox/containers/default; mkdir -p /var/lib/anbox/overlay; then reinstall the anbox rpm | 20:00 |
krnlyng | we need a cleanup so desperately :D | 20:00 |
saidinesh5 | krnlyng: iirc we cleaned up in a later commit | 20:00 |
piggz | krnlyng: there are still invalid args for overlayfs | 20:01 |
piggz | krnlyng: workdir is not specified | 20:02 |
piggz | mount("overlayfs", "/var/lib/anbox/rootfs", "overlayfs", MS_MGC_VAL|MS_RDONLY, "lowerdir=/var/lib/anbox/rootfs,upperdir=/var/lib/anbox/overlay") = -1 EINVAL (Invalid argument) | 20:02 |
krnlyng | ahh so you have a newer version of overlay fs probably | 20:02 |
piggz | hmpf | 20:02 |
saidinesh5 | Yeah he got it straight off the kernel | 20:02 |
piggz | its a hard live being on such a new kernel! | 20:03 |
piggz | good old 3.18! | 20:03 |
krnlyng | piggz, can you modify anbox and try setting workdir=/tmp/anbox-workdir also mkdir /tmp/anbox-workdir | 20:04 |
krnlyng | https://unix.stackexchange.com/questions/324515/linux-filesystem-overlay-what-is-workdir-used-for-overlayfs | 20:04 |
krnlyng | ah wait | 20:04 |
krnlyng | it needs to be on the same fs | 20:04 |
krnlyng | so pick whatever you like :D | 20:04 |
krnlyng | but it needs to be empty | 20:05 |
piggz | yeah, i can manage that ... u lot need to update to a more stable version of overlay! | 20:05 |
*** captain42 <captain42!~captain42@unaffiliated/captain42> has quit IRC (Ping timeout: 248 seconds) | 20:10 | |
piggz | krnlyng: mounrted | 20:15 |
piggz | /dev/loop0 on /var/lib/anbox/rootfs type squashfs (ro,relatime) | 20:15 |
piggz | overlayfs on /var/lib/anbox/rootfs type overlayfs (ro,relatime,lowerdir=/var/lib/anbox/rootfs,upperdir=/var/lib/anbox/overlay,workdir=/var/lib/anbox/work) | 20:15 |
piggz | /dev/mmcblk0p49 on /var/lib/anbox/rootfs/cache type ext4 (rw,noatime,data=ordered) | 20:15 |
piggz | /dev/mmcblk0p49 on /var/lib/anbox/rootfs/data type ext4 (rw,noatime,data=ordered) | 20:15 |
piggz | next? | 20:15 |
krnlyng | cool | 20:18 |
piggz | patch for ya https://bpaste.net/show/d60846e1b857 | 20:18 |
krnlyng | piggz, but anbox mounted it or did you just do it manually? | 20:18 |
piggz | anbox mounted it | 20:18 |
krnlyng | piggz, cool thanks | 20:19 |
piggz | root 3853 0.0 0.1 55188 4688 ? Ssl 21:14 0:00 /usr/bin/anbox container-manager --privileged | 20:19 |
krnlyng | piggz, nothing appeard on screen? | 20:19 |
krnlyng | (takes a while) | 20:19 |
piggz | nope | 20:19 |
krnlyng | ahhh | 20:19 |
krnlyng | you need anbox session-manager --single-window | 20:20 |
krnlyng | (our fast implementation doesn't handle multi window yet) | 20:20 |
krnlyng | as it's been done in a ~ a week xD | 20:20 |
piggz | as root or user? | 20:21 |
*** captain42 <captain42!~captain42@unaffiliated/captain42> has joined #sfdroid | 20:22 | |
piggz | as nemo i guess...root doesnt have env set up | 20:22 |
krnlyng | as nemo | 20:22 |
krnlyng | but stop the other session manager first :D | 20:22 |
piggz | krnlyng: there are loads of errors in journal for init | 20:25 |
krnlyng | piggz, can you paste? | 20:25 |
piggz | https://bpaste.net/show/230b492a208f | 20:26 |
nh1402_ | yeah make tomato paste | 20:26 |
krnlyng | piggz, wait | 20:26 |
krnlyng | piggz, do you have the binder namespaces? | 20:27 |
piggz | krnlyng: seems not | 20:27 |
piggz | krnlyng: what patch do i need for that? | 20:32 |
krnlyng | piggz, https://github.com/anbox/anbox/tree/master/kernel/patches | 20:32 |
krnlyng | lets hope they apply :D | 20:32 |
piggz | krnlyng: i have some manual patching to do! | 20:40 |
piggz | krnlyng: actually ... i think i already aplied these! | 20:47 |
*** maheart <maheart!~maheart@110-174-95-7.static.tpgi.com.au> has quit IRC (Ping timeout: 268 seconds) | 20:48 | |
krnlyng | hm ok | 20:48 |
krnlyng | let me think | 20:48 |
krnlyng | piggz, can you install adb? | 20:49 |
*** maheart <maheart!~maheart@110-174-95-7.static.tpgi.com.au> has joined #sfdroid | 20:49 | |
piggz | krnlyng: on what? | 20:49 |
krnlyng | piggz, on the device | 20:51 |
krnlyng | piggz, wait a sec | 20:51 |
krnlyng | piggz, see sfdroid dropbox | 20:53 |
piggz | krnlyng: https://bpaste.net/show/5f3878ca8996 | 20:56 |
piggz | (i trust your random binary i downloaded of the internet is not a worm) ;) | 20:56 |
krnlyng | uhhhBinder driver protocol does not match user space protocol! | 20:57 |
krnlyng | 64 bit? | 20:57 |
krnlyng | we need a 64 bit rootfs for you :S | 20:58 |
piggz | ah :P | 20:58 |
krnlyng | or what binder protocol version do you have? | 20:58 |
piggz | u guys need newer phones ;) | 20:58 |
krnlyng | check in kernel | 20:58 |
krnlyng | :D | 20:58 |
piggz | krnlyng: 7 or 8 | 21:02 |
piggz | depends if ANDROID_BINDER_IPC_32BIT is set | 21:02 |
krnlyng | fyi don't set that flag | 21:04 |
piggz | krnlyng: i dont think it is ... its not in my running config | 21:04 |
krnlyng | jup but i meant don't try to set it :D | 21:05 |
piggz | krnlyng: so, assumeing its 7 ... is that the same as the image? | 21:07 |
krnlyng | you probably have 8, the image has 7 | 21:07 |
piggz | krnlyng: so, newer image needed? | 21:11 |
krnlyng | piggz, yep | 21:11 |
krnlyng | piggz, either rebuild the image against a 64 bit kernel, or build a 64 bit rootfs | 21:12 |
piggz | krnlyng: so, not a job for tonight then eh! | 21:12 |
krnlyng | you could start fetching the sources :) | 21:12 |
piggz | my build drive has only 3.5gb left! | 21:14 |
krnlyng | ah :D | 21:14 |
*** nh1402_ <nh1402_!~nh1402@146.95.208.46.dyn.plus.net> has quit IRC (Read error: Connection reset by peer) | 22:11 | |
*** srohmen <srohmen!~srohmen@x4e302c5f.dyn.telefonica.de> has joined #sfdroid | 22:44 | |
*** srohmen <srohmen!~srohmen@x4e302c5f.dyn.telefonica.de> has quit IRC (Quit: Leaving.) | 23:03 | |
*** CrKit <CrKit!~nekit@37.200.78.29> has joined #sfdroid | 23:20 | |
*** captain42 <captain42!~captain42@unaffiliated/captain42> has quit IRC (Ping timeout: 248 seconds) | 23:29 | |
*** CrKit <CrKit!~nekit@37.200.78.29> has quit IRC (Ping timeout: 260 seconds) | 23:33 | |
*** CrKit <CrKit!~nekit@37.200.78.29> has joined #sfdroid | 23:35 | |
*** captain42 <captain42!~captain42@unaffiliated/captain42> has joined #sfdroid | 23:38 |
Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!