2020-01-27T06:43:34 #kisslinux Yay for sinit 2020-01-27T06:44:52 #kisslinux E5ten: PDFs go straight to download 2020-01-27T06:45:04 #kisslinux adamantium: :D 2020-01-27T06:46:43 #kisslinux dylanaraps: how do you feel about a /etc/kiss.conf file 2020-01-27T06:47:00 #kisslinux first use i can think of is to choose download method (wget with resume features vs curl) ... 2020-01-27T06:48:06 #kisslinux It's not that simple 2020-01-27T06:48:28 #kisslinux What's simple is that you're able to write a tiny script to do sources in whatever way you like 2020-01-27T06:56:04 #kisslinux https://termbin.com/cbfwh 2020-01-27T06:56:21 #kisslinux This is a quick script to use aria2 with resume 2020-01-27T06:56:48 #kisslinux I have a full rewrite for the package manager planned 2020-01-27T06:57:02 #kisslinux Which will simplify things further 2020-01-27T07:24:51 #kisslinux adamantium: https://github.com/kisslinux/kiss/pull/91 2020-01-27T07:24:56 #kisslinux Thoughts so far? 2020-01-27T07:25:37 #kisslinux This is something that is needed. Haven't been able to check the code 2020-01-27T07:25:50 #kisslinux Yup 2020-01-27T07:25:50 #kisslinux We are all using workarounds is why this is needed. 2020-01-27T07:25:55 #kisslinux Sudo is a workaround 2020-01-27T07:26:00 #kisslinux running everything as root is a workaround 2020-01-27T07:26:04 #kisslinux This uses su to work 2020-01-27T07:26:26 #kisslinux You'll only be prompted for a password once :D 2020-01-27T07:26:44 #kisslinux The tricky part is that shell functions can't be run as a different user 2020-01-27T07:26:47 #kisslinux this could fix my issue I face, I prefer until now to just do everything as root with kiss-- the problem is it will mess up the file ownership of my community repo fork 2020-01-27T07:26:56 #kisslinux Yeah 2020-01-27T07:27:04 #kisslinux This drops permissions to prevent that 2020-01-27T07:27:08 #kisslinux i literally put in my /etc/profile : 2020-01-27T07:27:13 #kisslinux #HACK 2020-01-27T07:27:21 #kisslinux chown -R adam:adam /home/adam 2020-01-27T07:27:27 #kisslinux I just need to fix pkg_build() now 2020-01-27T07:27:54 #kisslinux The way I'm dropping permissions is to... run the script again as a normal user 2020-01-27T07:28:33 #kisslinux > drop_root "$OLDUSER" kiss sources "$@" 2020-01-27T07:28:46 #kisslinux I had to create 'kiss sources' 2020-01-27T07:28:58 #kisslinux I wonder if you can just use a HEREDOC 2020-01-27T07:29:03 #kisslinux I think you can 2020-01-27T07:29:12 #kisslinux something like (just guessing) 2020-01-27T07:29:29 #kisslinux cat < blah 2020-01-27T07:29:33 #kisslinux EOF 2020-01-27T07:29:38 #kisslinux Ah 2020-01-27T07:29:46 #kisslinux try that! 2020-01-27T07:29:49 #kisslinux lmk :D 2020-01-27T07:30:08 #kisslinux Would that work with a function? 2020-01-27T07:30:14 #kisslinux idk 2020-01-27T07:30:19 #kisslinux i dont even know if it works 2020-01-27T07:30:23 #kisslinux but it should in theory 2020-01-27T07:30:28 #kisslinux I had another idea 2020-01-27T07:30:31 #kisslinux I have done interesting things this way before 2020-01-27T07:30:34 #kisslinux But decided against it 2020-01-27T07:30:40 #kisslinux It would've made things very easy 2020-01-27T07:31:00 #kisslinux in the HEREDOC you can execute HEREDOC inside of HEREDOC too 2020-01-27T07:31:09 #kisslinux You can also run $() subshell code in HEREDOC 2020-01-27T07:31:48 #kisslinux dylanaraps: let me show you an example I have done, the code is ugly bash from when I was learning to script, but it actually does some interesting stuff. 2020-01-27T07:32:51 #kisslinux See: https://termbin.com/w8rf 2020-01-27T07:32:55 #kisslinux This was my other idea 2020-01-27T07:33:09 #kisslinux The prompt at the start doesn't actually give root perms. 2020-01-27T07:33:16 #kisslinux But logs the password 2020-01-27T07:33:21 #kisslinux dylanaraps: heredoc inside of heredoc is in this section and additionally uses subshells $(..) and variables from outside of the function https://github.com/a-schaefers/themelios/blob/master/themelios#L318 2020-01-27T07:33:30 #kisslinux just a funky example... 2020-01-27T07:33:33 #kisslinux You can then call 'su' using the logged pass 2020-01-27T07:33:33 #kisslinux of what you can do with heredocs! 2020-01-27T07:34:07 #kisslinux I see 2020-01-27T07:34:18 #kisslinux https://termbin.com/w8rf 2020-01-27T07:34:20 #kisslinux See this 2020-01-27T07:34:30 #kisslinux I decided against it of course 2020-01-27T07:34:36 #kisslinux Though it would've made things really simple 2020-01-27T07:34:42 #kisslinux you can even cat<< EOF | chroot /mnt 2020-01-27T07:34:44 #kisslinux do stuff 2020-01-27T07:34:45 #kisslinux EOF 2020-01-27T07:35:08 #kisslinux I'd have to somehow include whole functions from the script in those EOF blocks 2020-01-27T07:35:23 #kisslinux Also the setup for said functions (main()) 2020-01-27T07:35:31 #kisslinux i leave the plumbing to you 2020-01-27T07:35:36 #kisslinux You are my teacher 2020-01-27T07:35:37 #kisslinux lol 2020-01-27T07:35:39 #kisslinux You *could* do it with grep/awk 2020-01-27T07:35:40 #kisslinux lol 2020-01-27T07:35:44 #kisslinux Now that's a hac 2020-01-27T07:35:45 #kisslinux k 2020-01-27T07:36:55 #kisslinux omg dylanaraps https://termbin.com/udla 2020-01-27T07:36:58 #kisslinux I'm genious 2020-01-27T07:38:45 #kisslinux The source will be full of these now 2020-01-27T07:38:47 #kisslinux > drop_root "$OLDUSER" kiss extract "$pkg" 2020-01-27T08:04:08 #kisslinux dylanaraps: https://termbin.com/u4oj 2020-01-27T08:04:17 #kisslinux dylanaraps: you don't know you want this until you need it 2020-01-27T08:04:23 #kisslinux That was my case ^_^ 2020-01-27T08:07:23 #kisslinux lol 2020-01-27T08:10:23 #kisslinux adamantium: https://github.com/kisslinux/kiss/pull/93/files 2020-01-27T08:10:29 #kisslinux This is the simplest way of doing it. 2020-01-27T08:10:53 #kisslinux We can then elevate permissions where needed without having to prompt for a password. 2020-01-27T08:11:18 #kisslinux This makes the default behavior non-root with passwordless elevation to root when needed 2020-01-27T08:11:53 #kisslinux The cases needing root are far far lower than the cases needing a normal user's perms. 2020-01-27T08:12:26 #kisslinux So 'root_run()' will be added in a couple of places instead of hacking around the limitations of 'su' for functions 2020-01-27T08:12:49 #kisslinux Dunno how I feel about caching the password which is why I didn't go with this to begin with. 2020-01-27T08:13:15 #kisslinux hmmm 2020-01-27T08:13:29 #kisslinux bit of a worry 2020-01-27T08:13:42 #kisslinux Exactly 2020-01-27T08:13:49 #kisslinux I need to do some research 2020-01-27T08:14:03 #kisslinux (This won't be merged willy-nilly if at all) 2020-01-27T08:15:08 #kisslinux The other option is to run 'kiss' as root and drop permissions in a *lot* of places. 2020-01-27T08:15:27 #kisslinux This involves me trying to workaround the fact that 'su' can't be used on shell functions. 2020-01-27T08:15:39 #kisslinux Or we leave kiss as-is and have password prompts throughout 2020-01-27T08:15:49 #kisslinux cannot stay as -is 2020-01-27T08:16:47 #kisslinux I liked the idea of running kiss as root, that's what literally ALL other distros do dylanaraps 2020-01-27T08:17:44 #kisslinux I can't lower permissions to shell functions though. 2020-01-27T08:18:03 #kisslinux Why not 2020-01-27T08:18:21 #kisslinux su doesn't work with shell functions 2020-01-27T08:18:58 #kisslinux I'd have to wrap every needed external command in 'drop_root "$OLDUSER" cmd args' 2020-01-27T08:19:08 #kisslinux can't you pipe shell functions into su with the HEREDOC ? 2020-01-27T08:19:12 #kisslinux why not require kiss to run as root only when required (e.g. install, uninstall, etc.) 2020-01-27T08:19:12 #kisslinux and allow normal users for normal stuff (list, search, etc.) 2020-01-27T08:19:31 #kisslinux monochroma: This is how it works now 2020-01-27T08:19:32 #kisslinux monochromal: that is how it is currently and it's backwards 2020-01-27T08:20:07 #kisslinux How would I pipe shell functions without writing large portions of the script inside heredocs? 2020-01-27T08:20:15 #kisslinux monochromal: the issue is that if you run kiss as root you'll screw up permissions on your local-user git overlays, and if you run as regular user, you'll be asked your su password 1000x times 2020-01-27T08:21:06 #kisslinux You shouldn't be building as root anyway 2020-01-27T08:21:13 #kisslinux and that ^^ 2020-01-27T08:21:23 #kisslinux adduser kissbuid 2020-01-27T08:21:33 #kisslinux never had problems though 2020-01-27T08:21:36 #kisslinux cat < do root stuff 2020-01-27T08:21:39 #kisslinux EOF 2020-01-27T08:21:55 #kisslinux functions() { up here ; } 2020-01-27T08:22:00 #kisslinux cat < functions 2020-01-27T08:22:07 #kisslinux EOF 2020-01-27T08:22:10 #kisslinux Does that work?? 2020-01-27T08:22:33 #kisslinux cat << EOF | su -l kissbuild2020-01-27T08:22:38 #kisslinux my bad 2020-01-27T08:22:43 #kisslinux ... 2020-01-27T08:24:19 #kisslinux monochromal: you probably have sudo installed 2020-01-27T08:24:20 #kisslinux btw 2020-01-27T08:24:38 #kisslinux it's the only way that using kiss as a normal user is tolerable 2020-01-27T08:25:13 #kisslinux https://termbin.com/uka3 2020-01-27T08:25:18 #kisslinux This doesn't work 2020-01-27T08:27:34 #kisslinux dylanaraps: it should be $(test_func) 2020-01-27T08:27:48 #kisslinux That would run the command as root 2020-01-27T08:28:06 #kisslinux ah 2020-01-27T08:28:07 #kisslinux The command would execute before being sent to 'su' 2020-01-27T08:28:24 #kisslinux some kind of chicken egg problem 2020-01-27T08:28:55 #kisslinux The way I've been trying to hack around this is to expose internal functions as arguments 2020-01-27T08:29:05 #kisslinux Then spawning a bunch of kiss instances whenever I need to drop perms 2020-01-27T08:29:25 #kisslinux It doesn't scale well at all 2020-01-27T08:29:58 #kisslinux I need to also handle 'pkg_build' being run as a normal user and root 2020-01-27T08:30:30 #kisslinux It is called during 'kiss u' and permissions are also sometimes needed to install dependencies. 2020-01-27T08:32:06 #kisslinux We only need root for 3-4 commands so it makes no sense to me to reverse the model 2020-01-27T08:32:15 #kisslinux We'll be dropping perms 10 times as much 2020-01-27T08:32:20 #kisslinux su -l adam -c test_func 2020-01-27T08:32:22 #kisslinux works 2020-01-27T08:32:39 #kisslinux test_func() { whoami; } 2020-01-27T08:32:48 #kisslinux It does not 2020-01-27T08:32:48 #kisslinux better test_func lol 2020-01-27T08:32:50 #kisslinux adamantium: i don't have sudo installed 2020-01-27T08:33:06 #kisslinux OK 2020-01-27T08:33:26 #kisslinux https://termbin.com/6t3f 2020-01-27T08:33:34 #kisslinux Also, we can't use '-l' with 'su'. 2020-01-27T08:33:51 #kisslinux Spawning the shell as a login shell isn't what we want at all 2020-01-27T08:34:08 #kisslinux My .profile is partly interactive for example 2020-01-27T08:34:24 #kisslinux And not intended to be run on every invocation of sh 2020-01-27T08:34:40 #kisslinux (That doesn't work fyi) 2020-01-27T08:34:51 #kisslinux -> ./eofrun 2020-01-27T08:34:52 #kisslinux sh: test_func: Permission denied 2020-01-27T08:35:03 #kisslinux (Trying to execute a file which doesn't exist) 2020-01-27T08:36:05 #kisslinux what are you trying to do btw? 2020-01-27T08:36:27 #kisslinux Remove the endless password prompts 2020-01-27T08:37:34 #kisslinux you can do that it will e all installed in a TMPDIR during build and then everything will be moved at the and with su 2020-01-27T08:37:54 #kisslinux dzove855: That won't work 2020-01-27T08:38:08 #kisslinux The package manager sometimes needs to install a package directly before building another 2020-01-27T08:38:25 #kisslinux yeahh i know, but you can avoid it with a pseudo chroot 2020-01-27T08:38:47 #kisslinux how about install everything in the end 2020-01-27T08:38:56 #kisslinux wait no nvm 2020-01-27T08:39:18 #kisslinux for example you create a chroot with all the existing pacakges, and then you will install the new packages in the chroot env (which ou're of course inside) and then at the end you leave chroot and then just move it 2020-01-27T08:39:34 #kisslinux That'll be very slow 2020-01-27T08:39:40 #kisslinux It won't scale well either 2020-01-27T08:39:43 #kisslinux yep, it' horrible haha 2020-01-27T08:40:19 #kisslinux ok i got it 2020-01-27T08:40:19 #kisslinux You'll also need root for this and I'll still have to hack around dropping permissions where needed 2020-01-27T08:40:31 #kisslinux function(){ whoami; } 2020-01-27T08:40:34 #kisslinux this is the issue only if a package has dependencies, right? 2020-01-27T08:40:36 #kisslinux export -f function 2020-01-27T08:40:38 #kisslinux and when updating as well 2020-01-27T08:40:47 #kisslinux su adam -c "sh -c function" 2020-01-27T08:40:52 #kisslinux boom 2020-01-27T08:40:57 #kisslinux head explode now 2020-01-27T08:41:17 #kisslinux https://stackoverflow.com/questions/17926153/bash-run-function-with-different-user << CREDIT 2020-01-27T08:41:38 #kisslinux Doesn't work 2020-01-27T08:41:43 #kisslinux i just tested it 2020-01-27T08:41:49 #kisslinux As did I 2020-01-27T08:41:58 #kisslinux https://termbin.com/hlqi 2020-01-27T08:42:13 #kisslinux export -f 2020-01-27T08:42:14 #kisslinux Oh, I need to export it 2020-01-27T08:42:23 #kisslinux That's not posix shell 2020-01-27T08:42:34 #kisslinux > /bin/sh: export: illegal option -f 2020-01-27T08:42:49 #kisslinux ah, i used bash version of sh with -e to test it 2020-01-27T08:43:01 #kisslinux poop 2020-01-27T08:43:06 #kisslinux Trying to do it this way also means no access to globals 2020-01-27T08:44:29 #kisslinux Let's talk about theory more. Seems you don't like descalating from root back to the user anyways 2020-01-27T08:44:55 #kisslinux That's my vibe i'm picking up 2020-01-27T08:45:02 #kisslinux I don't want to force you to code stuff you don't like 2020-01-27T08:45:03 #kisslinux I don't like it as root is needed far far less than user permissions are 2020-01-27T08:45:10 #kisslinux ;) 2020-01-27T08:45:11 #kisslinux It seems backwards to me 2020-01-27T08:45:33 #kisslinux Wouldn't it be ideal, if we only needed root ONCE. 2020-01-27T08:45:33 #kisslinux If we could run functions as another user it'd be a different story 2020-01-27T08:45:38 #kisslinux Yes 2020-01-27T08:45:40 #kisslinux This to me is the problem 2020-01-27T08:45:46 #kisslinux The issue is not 100 times ask for root or 5 times 2020-01-27T08:45:48 #kisslinux That's what my second PR solves 2020-01-27T08:45:57 #kisslinux It should be once. Only once. 2020-01-27T08:46:05 #kisslinux We need to investigate the implications of caching the password 2020-01-27T08:46:12 #kisslinux 5 times or 5000 times, are both totally equally, wrong 2020-01-27T08:46:37 #kisslinux Exactly 2020-01-27T08:46:58 #kisslinux IMO 2020-01-27T08:47:04 #kisslinux I don't care who we start out as, root or regular user 2020-01-27T08:47:12 #kisslinux But only ask root ONCE 2020-01-27T08:47:24 #kisslinux That's what both PRs try to solve 2020-01-27T08:47:49 #kisslinux That said. ... Most distros require you to start as root with these types of tools, exception being some arch AUR helpers 2020-01-27T08:48:07 #kisslinux kiss reminds me of an arch aur helper in that way 2020-01-27T08:48:48 #kisslinux makepkg asks for root to run pacman too 2020-01-27T08:49:09 #kisslinux Think of kiss as makepkg+pacman as one 2020-01-27T08:49:19 #kisslinux It's the build tool and package manager 2020-01-27T08:52:29 #kisslinux Right 2020-01-27T08:55:31 #kisslinux IMO the simplest way to solve is to require user to use kiss as root and build as a designated build user 2020-01-27T08:55:44 #kisslinux root hands off build operations from there. 2020-01-27T08:56:18 #kisslinux I could be wrong ! We can't even pipe functions through SU lol. How do we even do this 2020-01-27T08:56:19 #kisslinux This works for calling the build script but doesn't for downloading sources etc etc etc 2020-01-27T08:56:28 #kisslinux Exactly 2020-01-27T08:56:46 #kisslinux Hence why default to normal user is the only workable solution 2020-01-27T08:56:54 #kisslinux consider this, though 2020-01-27T08:57:10 #kisslinux Remember how my torched home directory permissions ended up rsyncing to my root filesystem? 2020-01-27T08:57:16 #kisslinux Yes 2020-01-27T08:57:24 #kisslinux a designated build user would have avoided entire issue 2020-01-27T08:57:32 #kisslinux That can't happen again regardless 2020-01-27T08:57:44 #kisslinux Not if the build user's permissions were borked too 2020-01-27T08:57:45 #kisslinux yeah but it's kinda like exception coding 2020-01-27T08:58:27 #kisslinux This fully works now: https://github.com/kisslinux/kiss/pull/93/files 2020-01-27T08:58:39 #kisslinux the build users permissions shouldn't be borked because i (the borker) wouldn't be playing with them 2020-01-27T09:02:28 #kisslinux dylanaraps: I admit I like this. 2020-01-27T09:02:38 #kisslinux dylanaraps: Not sure of security implications 2020-01-27T09:02:54 #kisslinux s/of/if/go 2020-01-27T09:03:05 #kisslinux Sorry, power went out 2020-01-27T09:03:10 #kisslinux oh snap 2020-01-27T09:03:17 #kisslinux I was just saying I like the code. 2020-01-27T09:03:23 #kisslinux Not sure if security implications 2020-01-27T09:03:25 #kisslinux I saw in the logs 2020-01-27T09:04:00 #kisslinux One tiny bug to fix but it works 2020-01-27T09:04:17 #kisslinux Just need to figure out the implications of doing it this way 2020-01-27T09:04:53 #kisslinux Another thing i'm wondering about is explicit depends, iirc it doesn't work very good kiss-orphans, but i haven't checked in a while 2020-01-27T09:05:30 #kisslinux I'm too busy writing emacs lisp to detect an internet connection and run hooks if it is connected 2020-01-27T09:05:52 #kisslinux https://termbin.com/h79u 2020-01-27T09:06:32 #kisslinux It will run in an asynchronous check loop, shortly 2020-01-27T09:09:07 #kisslinux here it is https://termbin.com/la9pd 2020-01-27T09:09:10 #kisslinux :D 2020-01-27T09:32:32 #kisslinux adamantium: This is done. https://github.com/kisslinux/kiss/pull/93/files 2020-01-27T09:32:41 #kisslinux Still not going to be merged of course. 2020-01-27T09:32:51 #kisslinux I need to be 100% sure beforehand. 2020-01-27T09:33:24 #kisslinux sure 2020-01-27T09:33:56 #kisslinux I changed it to ask for password only on first actual need of it 2020-01-27T09:34:36 #kisslinux cool can't wait to use it 2020-01-27T09:34:48 #kisslinux i'll test it tho 2020-01-27T09:34:51 #kisslinux right now. 2020-01-27T09:34:58 #kisslinux Also, all instances of the package manager calling itself are gone 2020-01-27T09:35:30 #kisslinux Hang on, I need to push a commit 2020-01-27T09:37:04 #kisslinux OK 2020-01-27T09:37:07 #kisslinux Should be good in 1 sec 2020-01-27T09:37:11 #kisslinux Yup 2020-01-27T09:37:58 #kisslinux This follows all of the same security practices that my shell password manager does fyi 2020-01-27T09:38:14 #kisslinux It's the same idea in the end regarding the password 2020-01-27T09:39:51 #kisslinux Let me know your thoughts 2020-01-27T09:39:58 #kisslinux I'll be back on in an hour or so 2020-01-27T09:46:07 #kisslinux actually, you could implement pash in kiss, so if a password exist in pass with the username, then it will use it, if not it will ask always 2020-01-27T09:46:19 #kisslinux nevermind, your fix seems fine. will test it tonight 2020-01-27T09:54:29 #kisslinux dylan ping me when you get back, found a prob 2020-01-27T10:03:34 #kisslinux apparently it's by design: The package manager sometimes needs to install a package directly before building another 2020-01-27T10:04:07 #kisslinux So we are trading robustness for speed in this case 2020-01-27T10:04:59 #kisslinux I wish we could have both 2020-01-27T10:30:23 #kisslinux adamantium: back 2020-01-27T10:30:27 #kisslinux What do you mean? 2020-01-27T10:31:27 #kisslinux That's not a problem fyi 2020-01-27T10:32:40 #kisslinux The behaviour hasn't changed, it just won't prompt 1000 times for a password 2020-01-27T10:50:18 #kisslinux dylanaraps: 5.5 finally here I can finally be free of GPU crash :) 2020-01-27T10:53:35 #kisslinux dylanaraps: I'm aware it's a problem, i thought it was until I read your message, and figured out what was going on. It was the first time I just had noticed it, and it makes sense. 2020-01-27T10:53:41 #kisslinux dylanaraps: I do wish that it didn' 2020-01-27T10:54:18 #kisslinux E5ten: I can stop using the rc kernels now 2020-01-27T10:54:31 #kisslinux yeah nvm. 2020-01-27T10:54:48 #kisslinux Let me know what you think about it when you give it a test spin adamantium 2020-01-27T10:55:12 #kisslinux Minus comments it actually makes the code smaller too 2020-01-27T10:55:40 #kisslinux By one line apparently. lol 2020-01-27T10:59:21 #kisslinux dylanaraps: we should forbid run kiss as root now 2020-01-27T10:59:27 #kisslinux or no? 2020-01-27T10:59:48 #kisslinux atleast give a "this is not supported" warning 2020-01-27T11:07:25 #kisslinux Yup 2020-01-27T11:07:35 #kisslinux Will do 2020-01-27T11:12:06 #kisslinux dylanaraps: one more "nice touch" would be: if the number of packages we are building > 1, then we know it's going to ask passwd, instead of making me wait, I would like to be asked the root passwd immediately, so that i can walk away and let it build 2020-01-27T11:13:24 #kisslinux (regarding kiss b) 2020-01-27T11:43:38 #kisslinux Gotcha 2020-01-27T11:45:39 #kisslinux I will also add a 'KISS_NO_CACHE' (name pending) envar to turn off caching which will revert to the old behavior. 2020-01-27T11:50:01 #kisslinux Actually, this will add more prompts 2020-01-27T11:52:10 #kisslinux OK 2020-01-27T11:52:57 #kisslinux *lol* 2020-01-27T11:54:17 #kisslinux e.g. Currently i've been compiling (via "kiss b" command) gcc for like 30 minutes, I've still YET to be asked my root password, and I know sooner or later it's going to ask me.................................. but i want to build everything. But what if i have to go to the grocerty store? I come home later and not everything is built.............. because kiss wants to know my damn password 2020-01-27T11:54:28 #kisslinux <3 software 2020-01-27T11:54:47 #kisslinux This should be fixed now 2020-01-27T11:55:39 #kisslinux As of the latest commit this should be 100% one 2020-01-27T11:55:41 #kisslinux done* 2020-01-27T11:55:45 #kisslinux beautiful 2020-01-27T11:59:41 #kisslinux is there a way to get dunst up and running without dbus 2020-01-27T11:59:48 #kisslinux nope 2020-01-27T11:59:58 #kisslinux why not 2020-01-27T12:00:04 #kisslinux You can use lemonbar for notifications if you script it all yourself 2020-01-27T12:00:04 #kisslinux someone should make this 2020-01-27T12:00:09 #kisslinux I used to do this 2020-01-27T12:00:16 #kisslinux oh yea, you can use a bar for notifs 2020-01-27T12:00:20 #kisslinux volume down hotkey -> spawn lemonbar with volume 2020-01-27T12:00:35 #kisslinux press it again -> kill old bar, spawn new one with new volume 2020-01-27T12:00:40 #kisslinux but that's pretty inefficient 2020-01-27T12:00:42 #kisslinux lol 2020-01-27T12:00:56 #kisslinux It worked perfectly mind you :P 2020-01-27T12:01:13 #kisslinux i'll just make something to hijack notify-send and pipe it to emacsclient 2020-01-27T12:01:16 #kisslinux thanks anyways 2020-01-27T12:01:32 #kisslinux heh 2020-01-27T12:01:43 #kisslinux are you good at regex dylanaraps 2020-01-27T12:02:52 #kisslinux nvm 2020-01-27T12:03:04 #kisslinux i have more important things to do 2020-01-27T12:03:04 #kisslinux lol 2020-01-27T12:04:39 #kisslinux regex101.com 2020-01-27T12:31:39 #kisslinux o/ 2020-01-27T12:55:02 #kisslinux Oh god 2020-01-27T12:55:05 #kisslinux New qt5 release 2020-01-27T12:58:04 #kisslinux i did not have followed the whole conversation, but why does we need qt5 ? 2020-01-27T12:58:31 #kisslinux It's optional if you want to use qt5-webengine browsers 2020-01-27T12:59:01 #kisslinux aah okey, i thougt there was an other thing 2020-01-27T13:01:10 #kisslinux qt5-webengine also jumped to major Chromium releases 2020-01-27T13:01:15 #kisslinux In a minor release... 2020-01-27T13:09:31 #kisslinux dylanaraps: yeah the "temporary failure in name resolution" not going away with eiwd and latest ell doesn't happen at home but does on my unis enterprise network 2020-01-27T13:10:08 #kisslinux Interesting 2020-01-27T13:10:16 #kisslinux So it's an enterprise wpa bug 2020-01-27T13:15:56 #kisslinux also in falkon I just realized why PDF viewing stopped working for me, newly added option to enable it instead of having it always enabled and it defaults to off I guess 2020-01-27T13:16:01 #kisslinux but that's just for me cuz I'm on falkon git 2020-01-27T13:16:13 #kisslinux probably not yet added at all on the latest release I guess? 2020-01-27T13:18:30 #kisslinux Dunno 2020-01-27T13:22:48 #kisslinux but yeah if you could try backporting upstream changes that look important so I can see if that fixes it with latest ell I'd appreciate it 2020-01-27T13:23:57 #kisslinux Alrighty 2020-01-27T13:24:16 #kisslinux I've backported a whole bunch and left those which touch the ipc (which is unused for us anyway) 2020-01-27T13:24:21 #kisslinux I'm a week or so behind though iirc 2020-01-27T13:27:27 #kisslinux So far so good on the qt5 update 2020-01-27T13:28:13 #kisslinux Haven't touched webengine yet though 2020-01-27T13:51:18 #kisslinux maybe instead of deleting the code that eiwd doesn't use it'd be easier to get an idea of where it's at compared to iwd in terms of what changes have been made upstream that haven't yet been backported if unused code was just gated with '#if 0' and '#endif', that's what they seem to do in elogind 2020-01-27T14:06:58 #kisslinux E5ten: Yeah, I'll rebase my changes on master 2020-01-27T14:07:37 #kisslinux > -> qt5-webengine Downloading sources 2020-01-27T14:07:45 #kisslinux Every other qt5 package is done 2020-01-27T14:08:26 #kisslinux nice 2020-01-27T14:08:59 #kisslinux btw I'd recommend switching falkon to a git package, they update super infrequently so tons of changes just sit in master 2020-01-27T14:09:43 #kisslinux Yeah, I might 2020-01-27T14:10:13 #kisslinux It's sad that development is so slow though it's kinda OK in its current state anyway 2020-01-27T14:10:44 #kisslinux If I had umatrix level controls I'd be happy 2020-01-27T14:11:24 #kisslinux I mostly care about the pdf thing 2020-01-27T14:11:35 #kisslinux don't have a standalone pdf viewer so I need falkon to be able to view them 2020-01-27T14:11:41 #kisslinux That'd be nice too 2020-01-27T14:12:01 #kisslinux it's in git 2020-01-27T14:12:09 #kisslinux Ah 2020-01-27T14:12:11 #kisslinux Gotcha 2020-01-27T14:12:16 #kisslinux Will do when qt5-webengine is done 2020-01-27T14:12:22 #kisslinux 13 231M 13 30.2M 0 0 91880 0 0:43:58 0:05:44 0:38:14 67376 2020-01-27T14:12:29 #kisslinux 10/10 internet over here 2020-01-27T14:13:07 #kisslinux 100KBps~ right now 2020-01-27T14:13:09 #kisslinux yike 2020-01-27T14:13:39 #kisslinux maybe worth switching to a git repo and using tags if so you don't have to download a whole webengine tarball on each update 2020-01-27T14:14:28 #kisslinux Meh, it's fine. It's usually 2MBps 2020-01-27T14:14:31 #kisslinux https://bugs.launchpad.net/ubuntu/+source/cupsys/+bug/255161/comments/28 2020-01-27T14:14:40 #kisslinux > My wife has complained that open office will never print on Tuesdays 2020-01-27T14:15:25 #kisslinux I wish my Qt stuff didn't rely on the regex things I don't like having pcre even if it is bundled into qt5-base lol 2020-01-27T14:15:40 #kisslinux Yeah 2020-01-27T14:15:53 #kisslinux perl regex is a sin :( 2020-01-27T14:21:08 #kisslinux E5ten: were you an arch user, i think ive seen your handle in the AUR or something 2020-01-27T14:22:43 #kisslinux still am I'm not a kiss user I just like the ideas and want it to succeed 2020-01-27T14:24:54 #kisslinux Oh cool 2020-01-27T14:25:04 #kisslinux I confess I still use Arch a lot 2020-01-27T14:25:17 #kisslinux I do a lot of my work on kiss in a chroot from Arch 2020-01-27T14:27:17 #kisslinux https://www.youtube.com/watch?v=ZpXnEvW0XD0 2020-01-27T14:27:25 #kisslinux good vibes 2020-01-27T14:28:05 #kisslinux nice 2020-01-27T14:30:23 #kisslinux dylanaraps: lmk when the rebase is done so I can try it out 2020-01-27T14:34:21 #kisslinux Will do 2020-01-27T15:06:01 #kisslinux [7735/17423] 2020-01-27T15:06:05 #kisslinux So far so good... 2020-01-27T15:06:51 #kisslinux How do you guys feel about "go" 2020-01-27T15:06:56 #kisslinux bad 2020-01-27T15:07:40 #kisslinux Well fuck go then 2020-01-27T15:07:48 #kisslinux heh 2020-01-27T15:08:38 #kisslinux i dont know a thing about it other than it has c-like syntax, use tabs not spaces, and emphasis on static binary, i thught it could be a glimmer of hope 2020-01-27T15:08:55 #kisslinux two major version bumps of chromium for a minor qt release >:( 2020-01-27T15:09:12 #kisslinux I don't like languages with package managers 2020-01-27T15:09:28 #kisslinux Causes dependency hell like npm, python, rust, etc 2020-01-27T15:09:46 #kisslinux Because it's suddenly too easy to include other crap in your crap 2020-01-27T15:09:53 #kisslinux go pisses me off more than rust cuz it's GOPATH shit is so annoying 2020-01-27T15:09:53 #kisslinux +1 2020-01-27T15:09:56 #kisslinux its* 2020-01-27T15:10:32 #kisslinux And the crap you include includes more crap 2020-01-27T15:10:39 #kisslinux and the rabbit hole gets deeper and deeper 2020-01-27T15:10:51 #kisslinux i can see that 2020-01-27T15:11:14 #kisslinux however 2020-01-27T15:11:15 #kisslinux I think it was ripgrep that included 70~ crates 2020-01-27T15:11:34 #kisslinux Whereas gnugrep needs basically nothing 2020-01-27T15:11:37 #kisslinux following your logic you no longer like shell script 2020-01-27T15:11:46 #kisslinux since it has a pkg manager called kiss 2020-01-27T15:11:53 #kisslinux well NAH lol 2020-01-27T15:11:55 #kisslinux what 2020-01-27T15:12:11 #kisslinux Ya time for me to get some sleep 2020-01-27T15:12:26 #kisslinux As soon as I typed that I was like, wait, no I'm wrong 2020-01-27T15:12:43 #kisslinux adamantium: well actualy.. https://github.com/bpkg/bpkg 2020-01-27T15:12:46 #kisslinux no it'd be like if you had scripts to build scripts that download scripts that are just functions and then concatenated them into one big script 2020-01-27T15:13:06 #kisslinux [9965/17423] 2020-01-27T15:13:09 #kisslinux The language package managers never seem to play nice. The idea seems appealing 'cos it means your basically system agnostic, but they all seem to rely on certain things just being standard, and pretty often they're not. 2020-01-27T15:13:16 #kisslinux like someone packages a script of functions and your "shell makefile" or whatever is like ok grab that script I'm gonna use its functions 2020-01-27T15:16:03 #kisslinux yea i see 2020-01-27T15:17:40 #kisslinux Also, I'm back, dylanaraps would you still like the strace for falkon? I did it the day you said it, and have been crazed ever since. Hah. 2020-01-27T15:17:50 #kisslinux Dangit. two seconds too late. 2020-01-27T15:20:56 #kisslinux Power went out 2020-01-27T15:20:58 #kisslinux Apologies 2020-01-27T15:21:02 #kisslinux Shyiskhar: Sure 2020-01-27T15:21:27 #kisslinux You want me to email it to you? It's reasonably large. 2020-01-27T15:21:54 #kisslinux Whatever is easiest for you 2020-01-27T15:22:06 #kisslinux (dylan⊙go or dylan.araps⊙gc) 2020-01-27T15:23:21 #kisslinux almost at 10000/18370 2020-01-27T15:25:01 #kisslinux Sent it to the getkiss address, since it seemed appropriate. 2020-01-27T15:26:19 #kisslinux Thanks 2020-01-27T15:26:22 #kisslinux Will take a look in a bit 2020-01-27T15:26:27 #kisslinux [11454/17423] 2020-01-27T15:31:24 #kisslinux Whereas gnugrep needs basically nothing << 2020-01-27T15:31:54 #kisslinux I admit I REALLY enjoyed learning to build kiss packages / compiling all of the gnu packages 2020-01-27T15:32:12 #kisslinux It was educational for me, and a lot of fun, and not too painful. 2020-01-27T15:32:38 #kisslinux in fairness a dependency of developing GNU grep is a smooth brain so it's pretty non-portable 2020-01-27T15:32:41 #kisslinux Gnu gets ripped on in ways i'm not sure it alwayas deserves 2020-01-27T15:32:53 #kisslinux no it definitely does 2020-01-27T15:32:57 #kisslinux lol 2020-01-27T15:33:10 #kisslinux well fuck gnu then 2020-01-27T15:33:27 #kisslinux GNU grep has a build time option to add perl regex support using pcre, but pcre already ships with "pcregrep", literally grep with perl regex 2020-01-27T15:33:46 #kisslinux so to build their perl regex in grep support you need to install a thing that will already give you grep with perl regex support 2020-01-27T15:34:06 #kisslinux and pcregrep (I think it had a different name but it was the same thing) already existed when they added perl regex support to GNU grep 2020-01-27T15:34:09 #kisslinux so fucking brain dead 2020-01-27T15:41:11 #kisslinux 10/10 2020-01-27T15:41:18 #kisslinux At least it's optional though 2020-01-27T15:46:51 #kisslinux > From February onward, everyone, including open-source Qt users, will require valid Qt accounts to download Qt binary packages. We changed this because we think that a Qt account lets you make the best use of our services and contribute to Qt as an open-source user. 2020-01-27T15:46:53 #kisslinux Awful 2020-01-27T15:48:06 #kisslinux > Starting with Qt 5.15, long term support (LTS) will only be available to commercial customers. 2020-01-27T15:51:43 #kisslinux lol 2020-01-27T15:52:10 #kisslinux at this rate i will be using ncurses forever 2020-01-27T15:52:12 #kisslinux :() 2020-01-27T15:52:19 #kisslinux and i dont even like ncurses 2020-01-27T15:53:09 #kisslinux I just can't stand either toolkit for different reasons 2020-01-27T15:53:26 #kisslinux Yup 2020-01-27T15:55:04 #kisslinux I just setup fscrypt with ext4 on my Arch install and it's really cool 2020-01-27T15:55:20 #kisslinux it only requires ext4 and fscrypt (which google wrote in... GO) 2020-01-27T15:55:46 #kisslinux We should recommend this on kiss I think TBH it's way less hassle than full disk encrypt 2020-01-27T15:55:51 #kisslinux oh snap it requires pam nvm 2020-01-27T15:56:47 #kisslinux I wonder if you can build fscrypt sans pam support, though, because it has an option to just encrypt a directory without using pam 2020-01-27T15:56:54 #kisslinux "custom passphrase" option 2020-01-27T15:56:56 #kisslinux only if you want the protection via your passphrase 2020-01-27T15:57:56 #kisslinux it wouldn't be difficult to write a quick init script to ask your passphrase to unlock your home dir 2020-01-27T15:57:58 #kisslinux you dont need pam 2020-01-27T15:58:04 #kisslinux ext4 encryption is really cool 2020-01-27T15:58:43 #kisslinux it would literally be a one liner fscrypt unlock /home/foo in /etc/rc.d 2020-01-27T15:59:19 #kisslinux I mean sure that thing above about qt is awful but also who the fuck cares about being able to download upstream binaries lol 2020-01-27T15:59:26 #kisslinux :^) 2020-01-27T15:59:44 #kisslinux qtwebengine is still building 2020-01-27T15:59:53 #kisslinux qt6 uses cmake! 2020-01-27T16:00:02 #kisslinux No more qmake I believe 2020-01-27T16:00:32 #kisslinux thank god 2020-01-27T17:53:24 #kisslinux webengine is still building 2020-01-27T18:00:04 #kisslinux [13801/17423] 2020-01-27T18:00:06 #kisslinux Oh god 2020-01-27T18:01:48 #kisslinux yikes mine finished a little while ago 2020-01-27T18:29:23 #kisslinux I'm still on the _jumbos 2020-01-27T18:51:15 #kisslinux hi, guys! can you tell me, please, what is amazing wm with rounded corners on the screenshots all over the main site? https://getkiss.org/images/nestman01.jpg 2020-01-27T18:52:45 #kisslinux It's probably: https://github.com/dylanaraps/sowm 2020-01-27T18:53:01 #kisslinux i noticed sowm in the software list, and patch, that makes corners rounded, but it doesn't applying :( 2020-01-27T18:54:06 #kisslinux It should apply as of the latest release. 2020-01-27T18:54:47 #kisslinux See: https://github.com/dylanaraps/sowm-patches/blob/master/patches/sowm-rounded-corners-20200124-0e8cc9f.patch 2020-01-27T18:55:11 #kisslinux oh... I will try again, thank you, dylanaraps! 2020-01-27T18:55:19 #kisslinux No problem 2020-01-27T18:57:04 #kisslinux E5ten: [14387/17423] 2020-01-27T18:57:07 #kisslinux Slow and steady 2020-01-27T18:57:10 #kisslinux >:( 2020-01-27T18:57:36 #kisslinux Getting there 2020-01-27T18:58:52 #kisslinux Thank god I don't need to add/rebase any patches 2020-01-27T19:00:41 #kisslinux lol yeah that'd suck 2020-01-27T19:01:59 #kisslinux https://bugreports.qt.io/browse/QTBUG-61676 2020-01-27T19:02:23 #kisslinux > Descoped from Qt 5.14 due to Feature Freeze. 2020-01-27T19:02:32 #kisslinux There's hope maybe probably kinda 2020-01-27T19:05:51 #kisslinux that'd be so nice 2020-01-27T19:25:16 #kisslinux dzove855: Added some comments to your PR 2020-01-27T19:25:41 #kisslinux E5ten: I'm out of the Chromium portion! 2020-01-27T19:27:24 #kisslinux dylanaraps: ok i'm gonna correct it 2020-01-27T19:27:57 #kisslinux o/ 2020-01-27T19:30:13 #kisslinux howdy 2020-01-27T19:32:26 #kisslinux just commited 2020-01-27T19:33:52 #kisslinux Thanks 2020-01-27T19:33:54 #kisslinux Merged 2020-01-27T19:34:45 #kisslinux thanks 2020-01-27T19:35:12 #kisslinux wow i didnt realize the community repo had that many packages 2020-01-27T19:35:31 #kisslinux dylanaraps: nice 2020-01-27T19:36:40 #kisslinux [17422/17423] 2020-01-27T19:36:48 #kisslinux Please link 2020-01-27T19:39:04 #kisslinux how do you guys got audio working on firefox? i try'd with alsa and apulse but still not any chance to get it working 2020-01-27T19:39:04 #kisslinux i'm using the binary provided 2020-01-27T19:39:21 #kisslinux Just ALSA 2020-01-27T19:39:27 #kisslinux And it just works 2020-01-27T19:39:36 #kisslinux Any errors in the terminal? 2020-01-27T19:40:17 #kisslinux o/ 2020-01-27T19:40:23 #kisslinux o/ 2020-01-27T19:40:31 #kisslinux so, looking for a way tworking for a way to make it easy rss-to-email 2020-01-27T19:40:34 #kisslinux qtwebengine is done... Just falkon remains 2020-01-27T19:40:39 #kisslinux so i can get alerts when my stuff is out of date 2020-01-27T19:41:01 #kisslinux That's a good idea 2020-01-27T19:41:03 #kisslinux Hm 2020-01-27T19:41:22 #kisslinux might use IFTTT because its easy 2020-01-27T19:41:26 #kisslinux dylanaraps: well i will reset my conf that i try'd and reproduce it with the about 2020-01-27T19:41:30 #kisslinux but i bet theres a decent cron one-liner 2020-01-27T19:41:51 #kisslinux dzove855: Sound works in other programs? 2020-01-27T19:42:02 #kisslinux Is your user a part of the audio group? 2020-01-27T19:49:14 #kisslinux hmm, found this https://github.com/Riduidel/rrss2imap 2020-01-27T19:50:21 #kisslinux I found this one: https://github.com/skx/rss2email 2020-01-27T19:55:15 #kisslinux E5ten: About that KArchive dependency... ;) 2020-01-27T19:55:55 #kisslinux Hang on 2020-01-27T19:55:56 #kisslinux nvm 2020-01-27T19:56:39 #kisslinux I checked the logs 2020-01-27T20:01:57 #kisslinux nice 2020-01-27T20:02:17 #kisslinux dylanaraps: got it working, i just had setup the false soundcard, again my mistake of not thinking 2020-01-27T20:03:11 #kisslinux :P 2020-01-27T20:03:13 #kisslinux All good 2020-01-27T20:04:10 #kisslinux Falkon is done 2020-01-27T20:04:15 #kisslinux Time for the big push 2020-01-27T20:04:52 #kisslinux sick 2020-01-27T20:05:09 #kisslinux My system is nice and fast again 2020-01-27T20:05:16 #kisslinux -j5 slowed it to a crawl 2020-01-27T20:29:45 #kisslinux mforney: I know you said you were hesitant to add ninja's one-line printing thing to samurai because of the need for non-POSIX ioctl, but I made a patch that only enables it if on an OS known to have that ioctl (or if the user deliberately defines it in CFLAGS) and was wondering if limiting the feature to when the ioctl is available is enough that you'd add it despite it not being POSIX? http://ix.io/28wp 2020-01-27T20:49:40 #kisslinux i'm very hesitant to add more #ifdefs, but i will think about it 2020-01-27T20:50:31 #kisslinux thanks 2020-01-27T20:54:01 #kisslinux > The standard output of type contains information about each operand in an unspecified format. 2020-01-27T20:54:03 #kisslinux Great 2020-01-27T20:54:26 #kisslinux Is there no portable way of checking if for example, 'echo' is a builtin and not an external command? 2020-01-27T20:55:48 #kisslinux check if command -v has "/"s in it? 2020-01-27T20:55:55 #kisslinux like command -v output I mean obviously 2020-01-27T20:56:22 #kisslinux That could work 2020-01-27T20:56:38 #kisslinux why do you wanna check? 2020-01-27T20:56:56 #kisslinux Long story 2020-01-27T20:57:24 #kisslinux I'm curious enough to read a long story :p 2020-01-27T20:57:25 #kisslinux The great debate: 'echo |' vs '< The echo pipe method is 100% OK, *only* if echo is a built in. If it is not, it leaks the password ove /proc, ps, etc 2020-01-27T20:58:04 #kisslinux ah 2020-01-27T20:58:33 #kisslinux The < no way to check that one I'd assume right? 2020-01-27T20:59:22 #kisslinux So, 'echo|' is #1 if echo is builtin (all sane shells). #2 is heredocs if echo is external 2020-01-27T21:00:04 #kisslinux even above that should be checking if printf is builtin cuz what if someone uses -n as a password :>) 2020-01-27T21:00:45 #kisslinux heredocs in sane shells use mkstemp() which is good 2020-01-27T21:00:46 #kisslinux https://en.wikipedia.org/wiki/Mkstemp 2020-01-27T21:01:08 #kisslinux You'd be looking at a super tiny window to try and capture it over heredocs. 2020-01-27T21:01:21 #kisslinux And yes, printf would be nicer =) 2020-01-27T21:02:35 #kisslinux but yeah as far as I know case $(command -v printf/echo) in /) should consistently work for determining if it's builtin or not 2020-01-27T21:02:51 #kisslinux Yeah 2020-01-27T21:02:55 #kisslinux I'm using it now 2020-01-27T21:03:15 #kisslinux mrsh is the latest example of a posix shell not including echo/printf 2020-01-27T21:03:21 #kisslinux nice 2020-01-27T21:03:24 #kisslinux I know posix doesn't state it as a mandatory built in 2020-01-27T21:03:31 #kisslinux But most shells do it for performance 2020-01-27T21:03:35 #kisslinux Which makes a lot of sense 2020-01-27T21:03:50 #kisslinux would also be nice if there was a way you could determine how heredocs were implemented and if they do it using temp files error with something like "get a better shell fuckass" 2020-01-27T21:04:23 #kisslinux ash does it with tmp files 2020-01-27T21:04:24 #kisslinux as does bash 2020-01-27T21:04:26 #kisslinux :^) 2020-01-27T21:04:44 #kisslinux They all seem to(?) 2020-01-27T21:04:52 #kisslinux what 2020-01-27T21:05:07 #kisslinux https://trac.torproject.org/projects/tor/ticket/24755 2020-01-27T21:05:11 #kisslinux > Shell scripts refactoring and bash privacy leak. Heredoc should not be used in start-tor-browser script. 2020-01-27T21:05:48 #kisslinux Great right? 2020-01-27T21:05:51 #kisslinux ....... 2020-01-27T21:06:03 #kisslinux fun 2020-01-27T21:06:05 #kisslinux what about dash? 2020-01-27T21:08:17 #kisslinux Dash does not use temporary files from what I can see 2020-01-27T21:08:59 #kisslinux nice 2020-01-27T21:09:20 #kisslinux Let me check busybox 2020-01-27T21:09:33 #kisslinux I thought you said ash does? 2020-01-27T21:09:46 #kisslinux I believe so 2020-01-27T21:09:48 #kisslinux > 13688 lines 2020-01-27T21:09:52 #kisslinux All in one file 2020-01-27T21:10:11 #kisslinux jesus 2020-01-27T21:10:25 #kisslinux landley (toybox guy) is trying to reimplement bash for toybox in I think it was 3k lines? 2020-01-27T21:10:35 #kisslinux would truly be an incredible feat if he pulls it off 2020-01-27T21:10:57 #kisslinux ash is good too 2020-01-27T21:11:02 #kisslinux bash is evil 2020-01-27T21:11:30 #kisslinux I don't mean bash like bug-for-bug like "bash uses temp files for heredocs so it will too" I mean the bash featureset 2020-01-27T21:11:44 #kisslinux I know 2020-01-27T21:11:51 #kisslinux I meant bash is evil as it uses temp files 2020-01-27T21:11:56 #kisslinux ah 2020-01-27T21:12:00 #kisslinux It'll be crazy if he pulls it off 2020-01-27T21:12:19 #kisslinux I'd love it so much if he did that cuz bash is one of the few GNU things outside of glibc that I straight up cannot get rid of 2020-01-27T21:12:22 #kisslinux Though I don't know how much toybox "common" code it will use or already uses 2020-01-27T21:12:44 #kisslinux So the 3k could be 3k + 10k toybox code :^) 2020-01-27T21:12:50 #kisslinux even if it's 3k lines + toybox common code that'd be crazy 2020-01-27T21:13:09 #kisslinux Yup 2020-01-27T21:13:20 #kisslinux bash has a fuck ton of builtins though 2020-01-27T21:13:28 #kisslinux I mean I assume there will not be many or any builtins using that 3k lines cuz he'll just be calling the toybox commands 2020-01-27T21:13:39 #kisslinux Some have to be internal 2020-01-27T21:13:44 #kisslinux like builtin shell things like mapfile yeah, but just normal builtins are already toybox 2020-01-27T21:13:50 #kisslinux Yup 2020-01-27T21:13:56 #kisslinux well they are internal cuz they're part of toybox? 2020-01-27T21:14:02 #kisslinux I hate how sleep is external in posix shells 2020-01-27T21:14:07 #kisslinux I assume he can reuse toybox commands without reexecing 2020-01-27T21:14:12 #kisslinux Yup 2020-01-27T21:14:23 #kisslinux Busybox does this even for 'su' 2020-01-27T21:17:10 #kisslinux wow dash's C seems to use a lot of GNU extensions (or I think more accurately frequently uses a few), doesn't negatively affect me at all but I'd like my small POSIX shell being written in POSIX code 2020-01-27T21:18:22 #kisslinux Welcome to linux 2020-01-27T21:22:53 #kisslinux dylanaraps: did you found already a way to implement in birch for the input and output function t communicate together? 2020-01-27T21:23:23 #kisslinux i was thinking about i have done with the ignore command juste a little bit nicer with a tmp file and variables inside 2020-01-27T21:27:24 #kisslinux I have not 2020-01-27T21:27:27 #kisslinux It's tricky 2020-01-27T21:30:22 #kisslinux E5ten: https://github.com/kisslinux/kiss/pull/93/files 2020-01-27T21:35:28 #kisslinux nice 2020-01-27T21:36:23 #kisslinux https://github.com/kisslinux/kiss/pull/93/commits/4f4d2200569283f468ea88d2dc4072d443b41d1b 2020-01-27T21:36:31 #kisslinux More "fixes" 2020-01-27T21:36:36 #kisslinux '[' can be external 2020-01-27T21:36:39 #kisslinux Love the shell 2020-01-27T21:37:36 #kisslinux '$pass' is only ever used once now (to actually send it to 'su') which is guarded by builtin printf/heredocs. 2020-01-27T22:02:27 #kisslinux https://github.com/kisslinux/kiss/pull/93/files 2020-01-27T22:02:32 #kisslinux I think this book is done 2020-01-27T22:14:17 #kisslinux looks solid 2020-01-27T22:15:18 #kisslinux also just fyi, kornshell seems to use mkstemp and has no built in printf 2020-01-27T22:15:30 #kisslinux well, openbsds kornshell, haven't looked at the others 2020-01-27T22:17:40 #kisslinux mksh also doesn't have any built-in printf iirc 2020-01-27T22:18:25 #kisslinux The next fallback would be to disable caching for those shells. 2020-01-27T22:18:50 #kisslinux The only issue is detecting whether or not heredocs are implemented using temporary files 2020-01-27T22:19:05 #kisslinux This only affects kiss if those shells are /bin/sh fyi.. 2020-01-27T22:19:30 #kisslinux yeah, I dont think it's worth all the trouble 2020-01-27T22:19:35 #kisslinux printf detenction is good enough 2020-01-27T22:19:43 #kisslinux detection* 2020-01-27T22:21:04 #kisslinux I don't think mksh uses a temporary file for heredocs 2020-01-27T22:21:11 #kisslinux Just checked the source 2020-01-27T22:21:39 #kisslinux > /* temp/heredoc files. The file is removed when the struct is freed. */ 2020-01-27T22:21:43 #kisslinux Or it does 2020-01-27T22:22:16 #kisslinux https://github.com/dimkr/loksh/blob/a6f91882e4d585d12845c58d48c38c85a6f72172/io.c#L453 2020-01-27T22:22:20 #kisslinux heres loksh 2020-01-27T22:23:02 #kisslinux > Experimentally, on Debian jessie, dash, bash, mksh and zsh load a 130kB here document into memory 2020-01-27T22:23:12 #kisslinux > whereas ksh93 copies 64kB chunks without allocating more memory. 2020-01-27T22:23:30 #kisslinux We may be safe regardless as it is a single line string 2020-01-27T22:24:29 #kisslinux At least they all use mkstemp() 2020-01-27T22:24:55 #kisslinux Even if the shell fails at printf/heredocs, the window is so tiny that I have doubts it's even exploitable 2020-01-27T22:32:10 #kisslinux Hey Dylan! What's stopping us from having modules loaded at boot? 2020-01-27T22:33:34 #kisslinux Nothing 2020-01-27T22:34:03 #kisslinux Unless you mean automatically in which case it's a little trickier 2020-01-27T22:34:25 #kisslinux And by automatically, I mean automatic detection 2020-01-27T22:34:54 #kisslinux Hum 2020-01-27T22:34:59 #kisslinux KISS does modules backwards to other distributions by default 2020-01-27T22:35:13 #kisslinux You specify which modules you would like loaded 2020-01-27T22:35:28 #kisslinux Instead of blacklisting those which shouldn't automatically load 2020-01-27T22:35:37 #kisslinux A whitelist instead of a blacklist basically 2020-01-27T22:36:21 #kisslinux Right! Which I like 2020-01-27T22:37:12 #kisslinux dylanaraps: wait why do you just check printf and not printf and then echo and then fall back to heredocs? 2020-01-27T22:37:25 #kisslinux This method also leaves you knowing exactly which modules have loaded 2020-01-27T22:37:30 #kisslinux I guess my real issue is that I have wl being loaded in my inittab, and then a file wifi.boot in /etc/rc.d, but it can't see my wireless card until after I login. So I guess I am asking, why 2020-01-27T22:37:37 #kisslinux E5ten: If there is no printf, chances are there is no echo 2020-01-27T22:37:39 #kisslinux I guess cuz even if heredocs leak that's preferable to there being theoretical input that could just 100% break the script? 2020-01-27T22:37:52 #kisslinux Not strictly this distro I've only used systemd for the last three years and I've never learned other inits 2020-01-27T22:38:34 #kisslinux dilyn: It might take your card a little time to start up. 2020-01-27T22:39:21 #kisslinux dilyn: You can load the module earlier by putting 'modprobe bla' in /etc/rc.conf instead. 2020-01-27T22:39:26 #kisslinux This file is loaded sooner at boot. 2020-01-27T22:39:47 #kisslinux E5ten: The script can't break. It's a leakage issue 2020-01-27T22:39:58 #kisslinux I mean as a reason not to use echo 2020-01-27T22:40:01 #kisslinux That was my guess as well - glad to know I'm thinking of this right 2020-01-27T22:40:08 #kisslinux E5ten: Ah, gotcha 2020-01-27T22:40:26 #kisslinux cuz if someone (stupid) made a password that's like "-n" or "-e" or "-E" that breaks the script in an unavoidable way if that echo accepts those 2020-01-27T22:40:27 #kisslinux dilyn: Typically an initramfs would load everything even sooner 2020-01-27T22:41:02 #kisslinux E5ten: Yeah 2020-01-27T22:41:26 #kisslinux dilyn: Your other option is to get rid of the module and compile it into the kernel itself. 2020-01-27T22:41:43 #kisslinux The kernel will then load it automatically and as early as possible. 2020-01-27T22:42:01 #kisslinux for the password shouldn't you IFS='' because of the possibility of the password ending or starting in whitespace? 2020-01-27T22:42:06 #kisslinux I was thinking I could do that, but I'm not sure how I would get it in there 2020-01-27T22:42:10 #kisslinux are whitespace containing passwords even allowed? 2020-01-27T22:42:39 #kisslinux dilyn: Set it as '[*]' in menuconfig instead of '[m]'. 2020-01-27T22:42:53 #kisslinux Though, if it has firmware blobs alongside it, these must be compiled into the kernel as well. 2020-01-27T22:42:59 #kisslinux E5ten: Good catch 2020-01-27T22:43:14 #kisslinux It's the broadcom-wl driver which isn't an option in the kernel 2020-01-27T22:43:34 #kisslinux Unless I can add it in, I'm just building it and putting it where it should be 2020-01-27T22:43:48 #kisslinux Ah, gotcha. 2020-01-27T22:44:21 #kisslinux E5ten: Spaces are allowed 2020-01-27T22:44:22 #kisslinux God 2020-01-27T22:44:41 #kisslinux Also............... Enter, Esc, etc 2020-01-27T22:46:44 #kisslinux busybox passwd checks for n, r, EOL, etc though 2020-01-27T22:46:48 #kisslinux Like shell's read 2020-01-27T22:50:05 #kisslinux What's nice about this kiss change is that less of the package manager runs as root now. 2020-01-27T22:50:24 #kisslinux The entirety of 'pkg_install()'/'pkg_remove()' ran as root. 2020-01-27T22:50:38 #kisslinux Now it's only the operations which actually need it. 2020-01-27T22:52:44 #kisslinux konimex: Here we go again https://cacheoutattack.com/ 2020-01-27T23:08:54 #kisslinux nighty night