/tech/ - Technology

Brought to you by archive.org

Posting mode: Reply

Check to confirm you're not a robot
Drawing x size canvas

Remember to follow the rules

Max file size: 350.00 MB

Max files: 5

Max message length: 4096

Manage Board | Moderate Thread

Return | Catalog | Bottom

Expand All Images

odilitime 06/28/2017 (Wed) 14:10:02 [Preview] No. 8767
/g/'s building a web browser

OSX Fork (pic related)


odilitime 06/28/2017 (Wed) 23:09:33 [Preview] No. 8777 del
just added a font file cache commit to my repo. New to this newer C++ stuff. Save .5s on a 6.5s DOM (large endchan thread)

Anonymous 06/29/2017 (Thu) 04:22:42 [Preview] No. 8781 del
Already gave my opinion on lainchan.org: should have more focus on privsep, sandboxing, W^X, non-deterministic PRNG (arc4random) and, maybe, formal proof and verification (easier with dependent-type language and a model with UML).

Anonymous 06/29/2017 (Thu) 21:25:29 [Preview] No. 8793 del
We're going to focus on the basics first. You're always welcomed to fork and make your own.

Anonymous 06/30/2017 (Fri) 00:31:15 [Preview] No. 8794 del
I amm using link2 now. So I like what the other anon mentioned about sandboxing. Now links and links2 have default modes that are simular to elinks and w3m. However the graphics mode launches a new window. Shouldn't this not have a default text mode and initially launch through sandboxed filesystem and portability?

Anonymous 06/30/2017 (Fri) 01:04:02 [Preview] No. 8795 del
I think that's more of a packaging issues then something that needs to be baked into the product

Anonymous 06/30/2017 (Fri) 02:36:11 [Preview] No. 8796 del
I would agree. I enjoy link2 and I think endjail.sh from /os/ is a good placeholder. Also https://github.com/adtac/fssb is a good insulator.

I need to stay in my lane here but as a frequent user of links2 I immediatly notice an issue with file upload and have not tried manually linking the full path to the file instead of selecting from a popup window or dragging and dropping. I looked over the goals/ideal features. and I hope there will be like a user.js or prefs.js to configure and add features. .

Anonymous 06/30/2017 (Fri) 03:14:08 [Preview] No. 8797 del
(176.39 KB 961x695 bypassed.png)
I noticed that the block bypass works in links. Initially it did not work when the block bypass was first enforced.I think it was a strict header policy or something that made it redirect to the accounts.js login page.

Also you can not log into an endchan account on links but you can post text posts. Some of the limits I noticed so far. Also there is an issue where the program has to be restarted after you make a post because you can not update posts in threads even after posting a new reply you have to restart the browser to see the updated index. Same thing if you fail the block bypass or the captcha expires you can not reload a new caotcha image

Anonymous 06/30/2017 (Fri) 18:40:00 [Preview] No. 8801 del
>not reload a new captcha image
It does not happen to me. I'm using 2.8 version. My config file (~/.links2/links.cfg):

download_dir ""
language "English"
max_connections 10
max_connections_to_host 1
retries 3
receive_timeout 120
unrestartable_receive_timeout 600
bind_address ""
bind_address_ipv6 ""
async_dns 0
download_utime 0
format_cache_size 0
memory_cache_size 0
image_cache_size 0
font_cache_size 0
http_bugs.aggressive_cache 0
ipv6.address_preference 3
http_proxy ""
ftp_proxy ""
https_proxy ""
socks_proxy ""
append_text_to_dns_lookups ""
only_proxies 1
http_bugs.http10 0
http_bugs.allow_blacklist 1
http_bugs.bug_302_redirect 1
http_bugs.bug_post_no_keepalive 1
http_bugs.no_accept_charset 0
http_bugs.no_compression 0
http_bugs.retry_internal_errors 0
http_do_not_track 1
http_referer 0
fake_referer ""
fake_useragent "Mozilla/5.0 (Windows NT 6.1; rv:45.0) Gecko/20100101 Firefox/45.0"
http.extra_header ""
ftp.anonymous_password "somebody@host.domain"
ftp.use_passive 0
ftp.use_eprt_epsv 0
ftp.fast 0
ftp.set_iptos 1
smb.allow_hyperlinks_to_smb 0
menu_font_size 16
background_color 14737632
foreground_color 0
scroll_bar_area_color 12632256
scroll_bar_bar_color 0
scroll_bar_frame_color 0
bookmarks_file "/home/user/.links2/bookmarks.html"
bookmarks_codepage utf-8
save_url_history 1
display_red_gamma 2.2000
display_green_gamma 2.2000
display_blue_gamma 2.2000
user_gamma 1.0000
bfu_aspect 1.0000
display_optimize 1
dither_letters 1
dither_images 1
gamma_correction 1
overwrite_instead_of_scroll 1
extension "xpm" "image/x-xpixmap"
extension "xls" "application/excel"
extension "xbm" "image/x-xbitmap"
extension "wav" "audio/x-wav"
extension "tiff,tif" "image/tiff"
extension "tga" "image/targa"
extension "sxw" "application/x-openoffice"
extension "swf" "application/x-shockwave-flash"
extension "svg" "image/svg"
extension "sch" "application/gschem"
extension "rtf" "application/rtf"
extension "ra,rm,ram" "audio/x-pn-realaudio"
extension "qt,mov" "video/quicktime"
extension "ps,eps,ai" "application/postscript"
extension "ppt" "application/powerpoint"
extension "ppm" "image/x-portable-pixmap"
extension "pnm" "image/x-portable-anymap"
extension "png" "image/png"
extension "pgp" "application/pgp-signature"
extension "pgm" "image/x-portable-graymap"
extension "pdf" "application/pdf"
extension "pcb" "application/pcb"
extension "pbm" "image/x-portable-bitmap"
extension "mpeg,mpg,mpe" "video/mpeg"
extension "mid,midi" "audio/midi"
extension "jpg,jpeg,jpe" "image/jpeg"
extension "grb" "application/gerber"
extension "gl" "video/gl"
extension "gif" "image/gif"
extension "g" "application/brlcad"
extension "gbr" "application/gerber"
extension "fli" "video/fli"
extension "dxf" "application/dxf"
extension "dvi" "application/x-dvi"
extension "dl" "video/dl"
extension "deb" "application/x-debian-package"
extension "avi" "video/x-msvideo"
extension "au,snd" "audio/basic"
extension "aif,aiff,aifc" "audio/x-aiff"
video_driver "x" "765x662" "" ISO-8859-1

Anonymous 06/30/2017 (Fri) 21:40:24 [Preview] No. 8803 del
why not just use luakit or qutebrowser and configure them to your liking ? the luakit fork even has domain rules.

Anonymous 06/30/2017 (Fri) 21:50:56 [Preview] No. 8804 del
because webkit.

odilitime 06/30/2017 (Fri) 22:10:28 [Preview] No. 8805 del
Because we want to built something different than those specific projects.

Anonymous 07/01/2017 (Sat) 09:21:36 [Preview] No. 8814 del
Just fucking configure it to the max and throw it in a sandbox.
By forking an old unmaintained codebase ?

Anonymous 07/02/2017 (Sun) 12:10:40 [Preview] No. 8816 del
We just used links as a reference, we started with a fresh code base. Look at the gitgud repo in OP

Anonymous 07/02/2017 (Sun) 21:12:06 [Preview] No. 8817 del
(23.43 KB 600x349 RAII.png)
(123.82 KB 1164x958 netrunner quality.png)
>Makefile is OSX only
consider pkg-config

>no stack protection
>pic related
Great naming sense namefag

Anonymous 07/02/2017 (Sun) 23:37:55 [Preview] No. 8818 del
linux makefile is here https://git.teknik.io/gyroninja/netrunner/

What's wrong with -O3?

That parser is better than a regex one another anon suggested.

Anonymous 07/02/2017 (Sun) 23:39:06 [Preview] No. 8819 del
Really fucking curious why it sigserv'd without a URL...

Anonymous 07/03/2017 (Mon) 12:49:37 [Preview] No. 8824 del

The issue is the code redundancy. If you are writing the same thing with little changes a lot of times, you are doing something wrong.

A C/C++ program should never segfault under any circumstance.
>It is the responsibility of the programmer to write code that never invokes undefined behavior.
>In scenarios where security is critical, undefined behavior can lead to security vulnerabilities in software.
That's why anons told you to be careful with C/C++.

>different repo for different OS
Why ? You are using a portable language with portable libraries.

Anonymous 07/03/2017 (Mon) 14:54:17 [Preview] No. 8825 del
not related but does links still not have custom keybindings ?

Anonymous 07/03/2017 (Mon) 15:44:03 [Preview] No. 8827 del
(116.12 KB 277x400 _.gif)
holy shit this is bait.
and formal proofs for webshit, mfw

Anonymous 07/03/2017 (Mon) 19:49:47 [Preview] No. 8829 del
Bait? Explain your self.
Only NSA would say that non-deterministic PRNG and sandbox/privsep is bait. Are you NSA?

Anonymous 07/17/2017 (Mon) 08:06:27 [Preview] No. 10420 del
cant post on 4jizz /g/ without having to use a non banned proxy or personal ip so ill ask this here.I and am having issues compiling. Is it usually a dependency thing or do you just make && sudo make install ?

Anonymous 07/17/2017 (Mon) 13:41:55 [Preview] No. 10422 del
The following works on Arch.

sudo pacman -Suy glew glfw freetype2 harfbuzz
git clone https://git.teknik.io/gyroninja/netrunner/
cd netrunner && make

There is no install directive; just copy
binary to a dir in your PATH.

But even if it compiles it is broken as no webpage gets rendered.

Anonymous 07/17/2017 (Mon) 21:53:05 [Preview] No. 10423 del
Ok thank you I thought it was operable. Now the goals of a rendering engine and whatnot make sense.

Anonymous 07/31/2017 (Mon) 22:35:57 [Preview] No. 10517 del
20170726 OSX release and progress report
20170726 binary package https://my.mixtape.moe/iguajs.zip

- changed default resolution (still smaller than 720p but bigger than 640x480)
- moved anime girl over, so more content is readable
- set proper scroll min/maxes (so you don't scroll off the page)
- make resizing on match initial layout
- better setDom memory management (cleans up old unused nodes/components)
- ugly hacks to support more URLs
- some comments

2017-07-27's release and progress report

2017-07-27 OSX binary package https://my.mixtape.moe/gbludd.zip
2017-07-27 Linux binary package https://my.mixtape.moe/ltuspw.tar.gz

- Improved inline text wrapping (pic related)
- report glfw errors better
- fixed crash if you forgot http:// on your URL
- GyroNinja has stepped down as lead developer, Odilitime is now lead

Anonymous 07/31/2017 (Mon) 22:48:26 [Preview] No. 10518 del

Anonymous 08/02/2017 (Wed) 20:57:56 [Preview] No. 10538 del
Impressed with the prototype so far. I even pressed a few of the links2 keybindings and though its a fork it feels lighter than links in graphics mode. it its looking great!

Anonymous 08/04/2017 (Fri) 12:47:40 [Preview] No. 10542 del
(257.76 KB 1949x1047 1501630173501.png)
(253.68 KB 937x905 1501631329354.png)
(131.26 KB 1432x899 1501637913767.png)
(190.26 KB 1029x697 1501666500945.png)
2017-07-31 release and progress report

2017-07-31 OSX binary package https://my.mixtape.moe/ywjanx.zip

2017-07-31 64bit linux binary package
>sponsored by CloverOS since our jenkins instances won't talk with gogs on teknik any more.

17-07-29 Windows Package
(required vc17 32bit runtime: https://go.microsoft.com/fwlink/?LinkId=746571)

- nubben's local file work
- unification of layout paths (creation/resize now use the same functions)
- only build textures on use (not creation)
- dynamic cursor
- HiDPI fixes
- character blending
- better font layout (leftPadding & endingY)
- better 301 handling
- include version in output
- pause program until input (reduces idle CPU usage)
- only render on change (reduces idle CPU usage)
- more crash/leak fixes
- better error reporting

Anonymous 08/04/2017 (Fri) 12:48:24 [Preview] No. 10543 del
it doens't contain any links source code, it's 100% from scratch.

Anonymous 08/08/2017 (Tue) 13:48:09 [Preview] No. 10605 del
Does it have its own rendering engine or is another wrapper to WebKit?

Anonymous 08/11/2017 (Fri) 05:35:53 [Preview] No. 10686 del
It has it's own engine

despair 08/20/2017 (Sun) 00:10:40 [Preview] No. 10843 del
(44.25 KB 1024x768 unknown.png)
now available for more versions of NT

odilitime 08/24/2017 (Thu) 09:02:19 [Preview] No. 10888 del
8/6-10 Progress report

If you haven't been following along on our YouTube Channel: https://www.youtube.com/channel/UCes2uiC-4xSBwqnldCFbh4Q or Twitter @Team_NetRunner here's the latest:

- Input box can take input when selected
- Input box scrolls text when it hits width
- Iframe document widget created and logic for page scrolling is moved inside (tabbed browser is likely by the end of the month)
- moved anime girl from source to external file (pnm unsupported P8 RGBA)
- refactoring opengl bits out of the components, so we can work towards a framebuffer solution
- We now have a working address bar (forward/back buttons likely next week)

The iframe refactor has broken resizing and made the scroll choppy, so I'm not releasing any new binaries until we're back on par with the existing releases. You're always welcome to compile your own.

2017-08-19 Progress Report
LNX: https://my.mixtape.moe/ueepky.tar.gz
OSX: https://my.mixtape.moe/mjvzts.zip
WIN: https://my.mixtape.moe/qnrbqa.zip

If you haven't been following along on our YouTube Channel: https://www.youtube.com/channel/UCes2uiC-4xSBwqnldCFbh4Q or Twitter @Team_NetRunner here's the latest:

- moved document into component, laying the ground work for iframes
- added tabbed browsing
- fixed scrolling
- add SSL support (only in windows package, builds for the rest coming out soon) using libmbed
- HTML parser fix for single tags
- Support 302/303 redirects

New team member: we welcome Despair who did the latest windows ports, setup Jenksin for windows and implemented SSL support.
Also gyroninja's Jenkins is back in working order.

2017-08-21 Progress Report

- Netrunner now doesn't require a URL to start.
- muted some colors
- added hover effects.
- Video shows a demo of operation that previously had unwanted behaviors
- started implement forward/back buttons
- Despair started work on new 2LSF allocator
- Text rendering fixes
- Auto closing of unclosed LI tags in parser

odilitime##UjsxBE 08/31/2017 (Thu) 06:42:27 [Preview] No. 10953 del
17-08-22 Progress Report
- empty tab fix
- back button

17-08-24 Progress Report
- plain text renderer
- allow keyboard to scroll document

17-08-25 Progress Report
- implemented a scheduler (keeps cpu usage low when idle)
- blinking cursor
- max texture size optimization
- fixed in page input alignment and input (took most of the day), one step closer to working forms

17-08-26 Progress Report
- text selection support start

17-08-27 Progress Report
- additional text selection fixes
- got input controls to use hardware accelerated scrolling, so they scroll now
- got submit button UI done
- start on form data component
- packaging fixes

17-08-28 Progress Report
- submit buttons now post
- button support as well
- HTTP/HTTPS can handle POSTing
- URL query string fixes

Anonymous 08/31/2017 (Thu) 07:47:52 [Preview] No. 10956 del
How does one have a custom background waifu, and is it possible to have a light fg dark bg or light bg dark fg mode?

odilitime##UjsxBE 08/31/2017 (Thu) 10:10:43 [Preview] No. 10961 del
Yea, we're just finishing up the cfg file. And next week we're focusing on allow skins/themes in a format like https://spit.mixtape.moe/view/4288e82d

You can currently remove or place the girl by replace anime.pnm with another pnm (a blank one is provided). Just needs to be a NetPBM PNM P8 format (just make a RGB_ALPHA PAM file and copy data (using the header format from p8 and data from the pam))

Anonymous 08/31/2017 (Thu) 11:33:27 [Preview] No. 10962 del

If it's a fork of w3m, then you should let the same emacs-like shortcut than w3m.
I don't want to use any vim shortcut, so it must at least be an option.

Anonymous 08/31/2017 (Thu) 11:35:15 [Preview] No. 10963 del
not a fork, it's from scratch.

Anonymous 08/31/2017 (Thu) 12:15:46 [Preview] No. 10966 del
I thought this was a troll project that will die within a week. I'm amazed you guys are actually doing it.

Anonymous 08/31/2017 (Thu) 12:16:36 [Preview] No. 10967 del
Well it is kind of a troll project, we'll troll the people that thought it'd die in a week. So you're right about that :^p

Anonymous 09/07/2017 (Thu) 23:33:56 [Preview] No. 11043 del
Do you have any plan or blueprint about the browser, or is it a code-as-you-go project?

Is making "reproducible builds" on your basics focus list?

Anonymous 09/08/2017 (Fri) 18:25:10 [Preview] No. 11056 del
Yes, dev teams have etherpads they use to plan and coordinate


odilitime##UjsxBE 09/08/2017 (Fri) 18:34:16 [Preview] No. 11057 del
2017-08-31 & 09-01 progress report:

- can now place text at where the cursor is
- can paste into address bar
- you can use arrow keys to move around cursor in textarea/input boxes
- error pages
- scheduler fixes (lowers CPU usages and makes cursor blink properly)
- non-quoted attribute support in HTML parser
- smoothed out scrolling
- !@#$%^&*() work now
- resizing window now triggers texture fix on tab selection

Progress report 2017-09-02

- textarea content doesn't overflow
- cursors can scroll text area
- mid deletion works
- schedule timer improvements
- better HTML comments parsing
- can parse unquoted attributes
- pam (P7) image support
- UI is now loaded from browser.ntrml file

Goals this week: theming / skinning (80% already done)
Goals next week: parsing improvements, start JS engine

Progress Report 2017-09-03

- fixed address bar and resizing (except tabbed component)
- started work on theme switcher
- can destroy and build a fresh UI
- working on transfer tabs/content between theme switches
- move a lot duplicated functionality from window into multicomponent
- fixed up keyboard events (again)
- home/end and up/down keys now do something
- improve button text handling

Anonymous 09/15/2017 (Fri) 00:36:08 [Preview] No. 11089 del
Please do this OP.

Anonymous 09/15/2017 (Fri) 02:02:27 [Preview] No. 11090 del
>start JS engine
Besides that, good job odili.

Anonymous 09/15/2017 (Fri) 02:54:17 [Preview] No. 11091 del
>>start JS engine
for what fucking purpose

Anonymous 09/15/2017 (Fri) 03:50:16 [Preview] No. 11092 del
If it's not going to have js, why bother with a new browser at all? links2, lynx, Dillo, etc. already exist.

Anonymous 09/15/2017 (Fri) 09:26:12 [Preview] No. 11113 del
>links2, lynx, Dillo, etc. already exist.
links2 doesn't render all css
lynx is only for term, no images
I don't even remember what was wrong with dillo but there's no point in using it is there ?

Anonymous 09/15/2017 (Fri) 11:46:57 [Preview] No. 11116 del
>links2 doesn't render all css
That's not the problem with links2. CSS is cancer.
The problems with links2 is that it has not preventive security measures by default, such as privsep, sandbox, etc.
It also could adhoc with youtube-dl and an external player, so we could directly play media.
Another problem is keybinding. There's none.

If someone address that problems in links2 (and clean the messy code, obviously), that would be a fantastic browser.
I had this project myself (although I would reconstruct it in a dependent-type language or Lambda-Prolog), but I'm too immature to do it (yet).

Top | Return | Catalog | Post a reply