libera/#devuan-dev/ Sunday, 2019-07-07

palinurogrub2 updated to fix boot errors on uefi systems with grub-efi-$arch-signed packages02:34
jaromilgreat news palinuro! thanks. this closes an action pending from past meeting10:33
jaromilrebasing the git of new grub2 package using git history10:33
jaromilI'm still not sure what is spinning into packages and when, Centurion_Dan can you make a recap?10:34
jaromilalso who is in charge of posting the meeting notes in the mailinglist? because they are not coming in10:34
jaromilI recommend we change the method to using a single pad page to refresh every week, will make it much easier. our pad installation doesn't grants history consistence anyway10:35
onefangI've still not seen ANYTHING on any Devuan mailing lists for a month or two.  Had to re-enable my accounts twice.10:35
retakenabled virtualization in BIOS, load intel kvm module, install devuan in qemu, change apt to use my mirror, install vim. works well11:24
retakwith only ONE coffee inside! ;)11:24
gnu_srsNow when Debian Buster is out; is Devuan Beowulf following soon?11:27
onefangGood to hear retak.  Now we just need Evilham to do his bit.11:31
Evilhamhi hi, having my first coffee :-p11:46
onefangGood morning.11:47
onefangOne coffee each!11:47
retaksomeone can update devuan_mirror_walkthrough.txt. It says "At the time of writing (Oct 2017) the full Devuan package mirror requires about 8GB of space." eh go to 50GB now12:08
onefangUpdating the docs is on my TODO.12:08
retakonefang, i like to rewrite your mirror checker script in c++ for self education. is that okay?13:25
onefangIt's open source.  I haven't added a license file to it, bit it'll be BSD like most other stuff I write.  So that's OK.13:25
retaknever did http stuff in c++ bevor13:26
onefangThat'll be the fourth language it's written in, you should write it in Forth instead.  B-)13:26
retaki only can write c++ ^^13:28
retakwhat else programming languages did you use?13:28
onefangI've used 101 programming languages in my lengthy career.13:38
onefangThe Devuan mirror checking script has been written as a shell script (Katolaz) and as Python (Evilham).  I think that was the real question you where asking.  lol13:43
retakyes hehe13:43
onefangThough I'm happy that my Lua script is readable to someone that only knows C++.  B-)13:43
retaknow comes retak's c++ version13:44
retakyeah it is 50% readable to me13:44
onefangI haven't commented it yet.  It's still a work in progress.13:44
retaktook a while to figure out that the command line argument "--test" is used as an runtime argument to the variable options[]13:45
onefangAnd there'll be a few Lua oddities like "if 0 == #table then"13:45
onefang# means "the length of" in Lua.13:46
retakso this is the trick you disable test. if the CMD argument is given, clear the string ? haha13:46
onefangLua tables are fun.13:46
onefang--test can take a -option or a +option, to disable or enable tests.  Some tests are currently disabled by default.  Mostly goz they are not complete.13:47
retakand --test *option multiplys the tests :D13:49
onefangThey multiply enough by themselves.  lol13:49
onefangThe tests that want to download files can grab 4 GB if it hits every mirror, then might want to do so again via FTP and rsync.  Then one more time through the lot via TOR.13:51
retakdont do this every minute :D13:53
onefangThat's another reason some tests are disabled by default.  B-)13:54
retakis there a global devuan git repo/server?14:08
retakfor stuff like this14:08
onefangThere is for Devuan specific packages.  I'm not sure if there is one for general management tools.  I've only recently joined the team as something other than the operator of the sledjhamr mirror.  Plus I've recently been moving all my code away from github to my own server, so I tend to put my stuff there.14:11
onefangI know Devuan uses their own gitlab instance.14:11
retakhzm okay14:14
onefangOthers will know more about that.14:14
retakonefang, where did you resolt the hostname to the IP? can not find the code15:50
onefangThe gatherIPs function.15:51
onefangI just call out to dig, then parse the result.15:51
onefangCoz I don't want a simple name -> IP, I need all the A, AAAA, CNAME, and SRV records.15:53
retakthe log with is created with the IP in the name bevor that functionm is called15:57
retaklua is black magic15:57
retak*log file15:57
onefangIt's recursive.15:59
onefangAnd I do some nasty things there passing fake IPs around as flags.16:00
onefangSome of that code needs cleaning up, or at least some decent comments.  lol16:01
onefangLua functions are sorta polymorphic.16:02
onefangYou don't have to pass the later arguments, they just become nil.16:02
onefangWhich is why I check a bunch of them against nil and provide defaults.16:03
retakim tracing for arg[2]16:03
retakits never set but the log fielname contain the right IP16:03
retakyeah i simply rewrite this ^^16:04
onefangLua was designed for petrochemical engineers, and is also popular for scripting online games.16:04
retakits not A B C. Its B then C and A was done bevor16:04
onefangarg[2] is set - table.insert(arg, a)  -- This inserts a into the arg table at the next integral position.  I'm collecting command line arguments that ore not - or -- options.16:06
retakbut that implicies that the IP must be set at command line. but it wasent16:07
onefangIt's optional.  If you don't set the IP at the command line, it starts more instances of the script with the various IPs and CNAMES.16:08
retaknow im alomist brainfucked16:09
onefangSo that lots of scripts are running at once, so it's not taking hours to do all the probing of everything.16:09
onefangThink yourself lucky I didn't write it in BrainFuck.  B-)16:09
onefangThat's one of my 101 languages.16:10
retaknow i see the recursion16:11
onefangLua isn't so good for async stuff by itself, but is designed to be embedded in C, and the C side does any async for you if needed.  I'm not using an C, so I'm cheating by shelling out and calling the script again with more arguments and & to run it "in the background".16:17
onefangSo there is a storm of checks all going on at once, instead of one at a time.  Much quicker to run the entire set.16:18
retakthats right16:20
retakwoohoo i can resolt my hostname to the IPv4 address (with one line of code)16:27
retakthats enough for today16:28
onefangAs I mentioned before, it's a work in progress, and I intend to document and comment it better later.16:29
onefangSo that when the next person comes along and wants to rewrite it a fifth time in their favourite language, they might have an easier time than you just did.  B-)16:35
retak:D :D :D16:35
retakI used the C++ Qt framework with the QHostInfo class. It has a DNS cache and resolv the hostname in parallel in the background. this is very cool16:36
onefangI think Evilhams Python was resolving IPs in the background to.16:37
onefangI'm not in that much of a hurry, and I find the major slowdown is waiting for those last two slow mirrors with their almost endless redirections.  Not enough rediretions to trigger the "too many redirections" test, but enough and slow enough that they are half way through while every one else has finished.16:41
retakwhy are there may redirections? one to the debian main and another to the read mirror.16:44
onefangAsk those mirror operators.16:44
onefangSome pass internal redirections out to the clients instead of resolving them internally.  They are redirecting to themselves.16:45
onefangThat warning your mirror gave yesterday, it's a redirection without a host name, so for that one test you redirect implicitly to yourself.  A minor tweak to your rewrite rules should fix that.16:47
onefangBut you did just copy those rewrite rules quickly.  B-)16:48
retak"^/merged/pool/DEVUAN/(.*)" => "/devuan/pool/$1",16:50
retak                "^/merged/pool/DEBIAN/(.*)" => "$1",16:50
retak                "^/merged/pool/DEBIAN-SECURITY/(.*)" => "$1"16:50
retakmust be the first rule then16:50
retaki dont have a directory /devuan on the filesystem16:51
onefangThat'll be a lighty rewrite rule, I don't grok lighty.16:52
retakthe other webserver has this rule too16:53
onefangAlso once redirected to debian's mirror system, you'll get more redirects from there.  And at the top, redirects to our mirrors.16:53
onefangIf those other rules mean "redirect to", then yes your first rule means "redirect implicitly to myself", which is what the warning said you are doing.16:55
onefangThere might be a lighty flag that says "do this internally, don't bounce off the client".16:55
retakor simply I remove this rules and use a filesystem symlink hrhr16:56
onefangOr that.  B-)16:56
onefangWARNING :     no location host!  Checking file -> -> /devuan/pool/main/d/desktop-base/desktop-base_2.0.3_all.deb16:58
onefangThe next result is a 200 for that redirected path on your server.17:00
onefangAnd that particular test is sending a Host header of your domain name to your IP, requesting that file at /merged/pool/DEVUAN/, being redirected to /devuan/pool/17:05
onefangIn the end I want to generate a full report for each mirror, and stick that on web pages, clickable from the summary report that looks like the existing web page summary.17:06
retakthe redirect works even if without present in the config file17:06
retakclickable would be nice17:07
onefangThis page -
retakah must be im browser cache17:07
onefangWhich is generated by the shell script version at the moment.17:07
onefangAnd doesn't list your mirror yet.17:08
retaknow Im warning free :D17:08
onefang rists you.  B-)17:08
retakparty ^^17:09
onefangNo errors, no warnings.  b-)17:10
retaknow its time for a coffee WITH sugar17:10
onefangThough I haven't tried the Python or shell script checkers on your server yet.17:11
onefangAnd I'm off to bed.17:11
retaktomorror is a new day17:12
onefangOn my side of the planet, it's already tomorrow.  I live in the future, just waiting for the rest of you to catch up.  B-)17:12
onefangOK, me and Centurion_Dan.17:13
palinurodo you guys need some mirrors?18:06
retakmore is always better?18:07
retakpalinuro, wherer do you come from? schweden?18:11
golinuxjaromil: Meet notes have not been sent because no one has stepped up to do it.   :)   It is not a fun thing to do.  I know because I've done enough of them as you know.18:18
golinuxNeither are they being posted to the wiki history.18:19
golinuxLast meet was not that much of one with you and rrq absent and now Centurion_Dan is on holiday for a few weeks.18:21
golinuxThen it will be August . . .18:22
golinuxand so it goes . . .18:25
gnu_srsHello again: Need help to get Beowulf released? which packages are not Devuanized yet?18:58
gnu_srsSince Debian has released Buster, their packages will not change much for some time (except for security issues)18:59
palinuro<retak "palinuro, wherer do you come fro"> italy20:34
retakpalinuro, there is only one mirror in italy and its temp offline. so go go go :D20:38

Generated by 2.17.0 by Marius Gedminas - find it at!