From owner-freebsd-hackers@FreeBSD.ORG Sun Mar 16 11:59:58 2014 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A02C3999 for ; Sun, 16 Mar 2014 11:59:58 +0000 (UTC) Received: from www2419.sakura.ne.jp (www2419.sakura.ne.jp [IPv6:2403:3a00:201:18:210:224:185:29]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 33652E87 for ; Sun, 16 Mar 2014 11:59:57 +0000 (UTC) Received: from www2419.sakura.ne.jp (ksav21.sakura.ne.jp [210.224.165.143]) by www2419.sakura.ne.jp (8.14.5/8.14.5) with ESMTP id s2GBxt39025393 for ; Sun, 16 Mar 2014 20:59:55 +0900 (JST) (envelope-from nuta@seiya.me) X-Nat-Received: from [210.224.185.29]:36662 [ident-empty] by smtp-proxy.isp with TPROXY id 1394971195.12709 Received: from 133051082072.ap.cc.tsukuba.ac.jp (133051082072.ap.cc.tsukuba.ac.jp [133.51.82.72] (may be forged)) (authenticated bits=0) by www2419.sakura.ne.jp (8.14.5/8.14.5) with ESMTP id s2GBxnkl025388 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Sun, 16 Mar 2014 20:59:50 +0900 (JST) (envelope-from nuta@seiya.me) From: Seiya Nuta Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable Subject: GSoC'14 proposal: a new bootsplash screen Message-Id: <038860B8-7034-4AA7-A8F8-1A7AB4D7FB1C@seiya.me> Date: Sun, 16 Mar 2014 20:59:49 +0900 To: freebsd-hackers@freebsd.org Mime-Version: 1.0 (Mac OS X Mail 7.2 \(1874\)) X-Mailer: Apple Mail (2.1874) X-Anti-Virus: Kaspersky Anti-Virus for Linux Mail Server 5.6.45.2/RELEASE, bases: 16032014 #7529416, status: clean X-Mailman-Approved-At: Sun, 16 Mar 2014 12:19:26 +0000 X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Mar 2014 11:59:58 -0000 Hi, everyone I am Seiya Nuta, a university student in Japan and I=92m going to submit = a GSoC proposal. I want to develop a new bootsplash mechanism to add animation such as = progress bar. It eases concern whether it works on boot and enhances the = attractiveness of FreeBSD to desktop users. I=92m willing to work on this even if my proposal is not accepted so I = would like you to tell me your frank opinion about my proposal. My proposal is as follows: Description: I propose a new bootsplash mechanism. Currently, we can enable = bootsplash by adding few options such as `splash_bmp_load' to /boot/loader.conf but it only = displays an image file. I worry whether it works well on boot so I assume we need a new = bootsplash which can display animation: progress bar, loading circle ball. Themes are kernel = modules and draw images in two ways: direct drawing and layered drawing. Direct drawing = is same as splash_bmp; only draw an image. Layered drawing is a new way; stack = images and text. It also enables technique like CSS sprite. Deliverables: - Implementation of bootsplash direct drawing / layered drawing - Makefile and scripts for creating bootsplash themes - Example themes Test Plan: #1: - write code in VM on VirtualBox - `make` and copy generated kernel and modules to /boot - launch .vdi of the VM with QEMU on host OS - check output and dmesg #2: - `make buildinstall` on a real machine. - boot it - check output and dmesg Schedule: Work Period #1 - (May 19 - May 25) implement direct drawing - (May 26 - June 8) add changes to src/sys - (June 9 - June 15) write Makefile and scripts for creating themes - (June 16 - June 22) create and enjoy a flip book in bootsplash = using direct drawing Work Period #2 - (June 23 - June 29) print characters in a framebuffer - (June 30 - July 20) implement layered drawing - (July 21 - July 27) support layered drawing in scripts for = creating themes - (July 28 - 'pencils down' date) create themes Regards, Seiya Nuta