mailing list of musl libc
 help / color / mirror / code / Atom feed
* Re: sabotage linux X86_64 image with LXDE desktop released
  2012-07-21 20:59 sabotage linux X86_64 image with LXDE desktop released John Spencer
@ 2012-07-21 20:50 ` Rich Felker
  2012-07-21 23:10   ` John Spencer
  2012-07-22  9:32 ` Daniel Cegiełka
  2012-08-07 23:06 ` Roy
  2 siblings, 1 reply; 8+ messages in thread
From: Rich Felker @ 2012-07-21 20:50 UTC (permalink / raw)
  To: musl

On Sat, Jul 21, 2012 at 10:59:11PM +0200, John Spencer wrote:
> the desktop works, but is not polished at all - there's no
> background image and the icon paths seem to be misconfigured.
> this can be considered a technoloy preview.
> here is a screenshot: http://i.imgur.com/Lz7Ov.png

Something seems very wrong with those task manager vm sizes...
Is this indicative of a bug on musl's side?

Rich


^ permalink raw reply	[flat|nested] 8+ messages in thread

* sabotage linux X86_64 image with LXDE desktop released
@ 2012-07-21 20:59 John Spencer
  2012-07-21 20:50 ` Rich Felker
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: John Spencer @ 2012-07-21 20:59 UTC (permalink / raw)
  To: musl, sabotage

I uploaded an image file of my latest sabotage build from

https://github.com/rofl0r/sabotage

it comes with tinyx and LXDE installed. start X server with "startx" (if 
it fails to start, try to launch it again, there are some timing issues)

the desktop works, but is not polished at all - there's no background 
image and the icon paths seem to be misconfigured.
this can be considered a technoloy preview.
here is a screenshot: http://i.imgur.com/Lz7Ov.png

feel free to tweak the desktop and the X11 settings and file pull 
requests on github.
additional packages can be installed as on the sabotage chroot  - cd 
/src ; vi config ; . config ; butch install packagename (i.e. luajit)

the base system itself can be considered quite stable and moderately 
well tested at the moment.
there are likely some security patches missing, but the kernel used is 
grsec patched.
so if you intend to use gdb you may have to override some ptrace 
settings using paxctl.
(or build your own kernel with grsec disabled, see /src/pkg/kernel)

root password is sabotage

dont forget to read README in github repo

Image files are available athttp://mirror.wzff.de/sabotage/

http://mirror.wzff.de/sabotage/sabotage-0.9.2-x86_64_5e7eda8.img.xz

sha512 checksum 
442aa4d8fca1516e8ede95265eb62ef8cb9a78f674ae466c312b244c94179eb481d484911d52a8856d70f8026bac9048395c3a89237d9ce6cded4be93abab48e

unpack using xzcat (extracts to a 10GB imagefile)

launch using qemu-system-x86_64 imagefile

or alternatively convert to virtualbox format using

|VBoxManage convertfromraw $IMG $VDI
|

if you use virtual box, you may have to change /bin/X to use different 
device ids (currently commented out)

you can also loopmount the image and copy the rootfs from there

there's also a rootfs for armv7l/softfp available. kernel is not 
included, because the kernel has to be carefully adapted to each 
specific ARM device its intended to run on.



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: sabotage linux X86_64 image with LXDE desktop released
  2012-07-21 23:10   ` John Spencer
@ 2012-07-21 23:05     ` Rich Felker
  2012-07-21 23:50       ` John Spencer
  0 siblings, 1 reply; 8+ messages in thread
From: Rich Felker @ 2012-07-21 23:05 UTC (permalink / raw)
  To: musl

On Sun, Jul 22, 2012 at 01:10:59AM +0200, John Spencer wrote:
> >>here is a screenshot: http://i.imgur.com/Lz7Ov.png
> >Something seems very wrong with those task manager vm sizes...
> >Is this indicative of a bug on musl's side?
> 
> here's what it's doing (note that PAGE_SIZE was originally an
> external variable which got once filled with sc_sysconf values,
> i needed to patch it away because of the conflict with the macro of
> the same name)

That shouldn't break anything..

> void get_task_details(gint pid,struct task *task)
> {
>         task->size=0;
> 
>         sprintf(line,"/proc/%d/statm",pid);
>         fd=open(line,O_RDONLY);
>         if(fd==-1) return;
>         read(fd,line,256);
>         sscanf(line,"%d %d",&task->size,&task->rss);
>         close(fd);
>         if(!task->size) return;
>         task->size*=PAGE_SIZE;
>         task->rss*=PAGE_SIZE;
> 
> struct task
> {
> // ...
>     gint size;
>     gint rss;
> };

gint is not large enough to store memory sizes on 64-bit machines
(though I doubt you're overflowing it here...) and %d may not be the
right scanf conversion for gint unless gint is defined as int...

Otherwise, I don't see what's wrong...

Rich


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: sabotage linux X86_64 image with LXDE desktop released
  2012-07-21 20:50 ` Rich Felker
@ 2012-07-21 23:10   ` John Spencer
  2012-07-21 23:05     ` Rich Felker
  0 siblings, 1 reply; 8+ messages in thread
From: John Spencer @ 2012-07-21 23:10 UTC (permalink / raw)
  To: musl

On 07/21/2012 10:50 PM, Rich Felker wrote:
> On Sat, Jul 21, 2012 at 10:59:11PM +0200, John Spencer wrote:
>> the desktop works, but is not polished at all - there's no
>> background image and the icon paths seem to be misconfigured.
>> this can be considered a technoloy preview.
>> here is a screenshot: http://i.imgur.com/Lz7Ov.png
> Something seems very wrong with those task manager vm sizes...
> Is this indicative of a bug on musl's side?
>
> Rich
>

here's what it's doing (note that PAGE_SIZE was originally an external 
variable which got once filled with sc_sysconf values,
i needed to patch it away because of the conflict with the macro of the 
same name)

lxtask-0.1.4/src/xfce-taskmanager-linux.c:
reading the values ...

void get_task_details(gint pid,struct task *task)
{
         task->size=0;

         sprintf(line,"/proc/%d/statm",pid);
         fd=open(line,O_RDONLY);
         if(fd==-1) return;
         read(fd,line,256);
         sscanf(line,"%d %d",&task->size,&task->rss);
         close(fd);
         if(!task->size) return;
         task->size*=PAGE_SIZE;
         task->rss*=PAGE_SIZE;

struct task
{
// ...
     gint size;
     gint rss;
};

displayed using
gtk_tree_store_set(GTK_TREE_STORE(list_store), iter, COLUMN_RSS, 
size_to_string(buf, task->rss*1024), -1);

where
char* size_to_string( char* buf, guint64 size )
{
     char * unit;
     /* guint point; */
     gfloat val;

     /*
        FIXME: Is floating point calculation slower than integer division?
               Some profiling is needed here.
     */
     if ( size > ( ( guint64 ) 1 ) << 30 )
     {
         if ( size > ( ( guint64 ) 1 ) << 40 )
         {
             /*
             size /= ( ( ( guint64 ) 1 << 40 ) / 10 );
             point = ( guint ) ( size % 10 );
             size /= 10;
             */
             val = ((gfloat)size) / ( ( guint64 ) 1 << 40 );
             unit = "TB";
         }
         else
         {
             /*
             size /= ( ( 1 << 30 ) / 10 );
             point = ( guint ) ( size % 10 );
             size /= 10;
             */
             val = ((gfloat)size) / ( ( guint64 ) 1 << 30 );
             unit = "GB";
         }
     }
     else if ( size > ( 1 << 20 ) )
     {
         /*
         size /= ( ( 1 << 20 ) / 10 );
         point = ( guint ) ( size % 10 );
         size /= 10;
         */
         val = ((gfloat)size) / ( ( guint64 ) 1 << 20 );
         unit = "MB";
     }
     else if ( size > ( 1 << 10 ) )
     {
         /*
         size /= ( ( 1 << 10 ) / 10 );
         point = size % 10;
         size /= 10;
         */
         val = ((gfloat)size) / ( ( guint64 ) 1 << 10 );
         unit = "KB";

     }
     else
     {
         unit = size > 1 ? "Bytes" : "Byte";
         sprintf( buf, "%u %s", ( guint ) size, unit );
         return buf;
     }
     /* sprintf( buf, "%llu.%u %s", size, point, unit ); */
     sprintf( buf, "%.1f %s", val, unit );

     return buf;
}


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: sabotage linux X86_64 image with LXDE desktop released
  2012-07-21 23:05     ` Rich Felker
@ 2012-07-21 23:50       ` John Spencer
  0 siblings, 0 replies; 8+ messages in thread
From: John Spencer @ 2012-07-21 23:50 UTC (permalink / raw)
  To: musl

On 07/22/2012 01:05 AM, Rich Felker wrote:
> On Sun, Jul 22, 2012 at 01:10:59AM +0200, John Spencer wrote:
>>>> here is a screenshot: http://i.imgur.com/Lz7Ov.png
>>> Something seems very wrong with those task manager vm sizes...
>>> Is this indicative of a bug on musl's side?
>> here's what it's doing (note that PAGE_SIZE was originally an
>> external variable which got once filled with sc_sysconf values,
>> i needed to patch it away because of the conflict with the macro of
>> the same name)
> That shouldn't break anything..
>
it was doing
PAGE_SIZE=sysconf(_SC_PAGESIZE)>>10;
in the original code and i didnt see the counter-intuitive bitshift.

its properly fixed in git now.



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: sabotage linux X86_64 image with LXDE desktop released
  2012-07-21 20:59 sabotage linux X86_64 image with LXDE desktop released John Spencer
  2012-07-21 20:50 ` Rich Felker
@ 2012-07-22  9:32 ` Daniel Cegiełka
  2012-08-07 23:06 ` Roy
  2 siblings, 0 replies; 8+ messages in thread
From: Daniel Cegiełka @ 2012-07-22  9:32 UTC (permalink / raw)
  To: musl

2012/7/21 John Spencer <maillist-musl@barfooze.de>:
> I uploaded an image file of my latest sabotage build from
>
> https://github.com/rofl0r/sabotage



> Image files are available athttp://mirror.wzff.de/sabotage/
>
> http://mirror.wzff.de/sabotage/sabotage-0.9.2-x86_64_5e7eda8.img.xz
>
> sha512 checksum
> 442aa4d8fca1516e8ede95265eb62ef8cb9a78f674ae466c312b244c94179eb481d484911d52a8856d70f8026bac9048395c3a89237d9ce6cded4be93abab48e
>
> unpack using xzcat (extracts to a 10GB imagefile)
>
> launch using qemu-system-x86_64 imagefile
>
> or alternatively convert to virtualbox format using
>
> |VBoxManage convertfromraw $IMG $VDI
> |

and if you want chroot etc.

# file -s sabotage-0.9.2-x86_64_5e7eda8.img
sabotage-0.9.2-x86_64_5e7eda8.img: x86 boot sector; partition 1:
ID=0x83, active, starthead 32, startsector 2048, 204800 sectors;
partition 2: ID=0x83, starthead 223, startsector 206848, 20764672
sectors, code offset 0x31

# mkdir /mnt/sdb1
# mkdir /mnt/sdb2

# mount sabotage-0.9.2-x86_64_5e7eda8.img /mnt/sdb1 -o offset=$((2048*512))
# mount sabotage-0.9.2-x86_64_5e7eda8.img /mnt/sdb2 -o offset=$((206848*512))

Have fun! :)
Daniel


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: sabotage linux X86_64 image with LXDE desktop released
  2012-07-21 20:59 sabotage linux X86_64 image with LXDE desktop released John Spencer
  2012-07-21 20:50 ` Rich Felker
  2012-07-22  9:32 ` Daniel Cegiełka
@ 2012-08-07 23:06 ` Roy
  2012-08-07 23:29   ` John Spencer
  2 siblings, 1 reply; 8+ messages in thread
From: Roy @ 2012-08-07 23:06 UTC (permalink / raw)
  To: musl

John Spencer <maillist-musl <at> barfooze.de> writes:

> 
> I uploaded an image file of my latest sabotage build from
> 
> https://github.com/rofl0r/sabotage
> 
> Image files are available at http://mirror.wzff.de/sabotage/
> 
> 

is thare a new build for 0.9.3?



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Re: sabotage linux X86_64 image with LXDE desktop released
  2012-08-07 23:06 ` Roy
@ 2012-08-07 23:29   ` John Spencer
  0 siblings, 0 replies; 8+ messages in thread
From: John Spencer @ 2012-08-07 23:29 UTC (permalink / raw)
  To: musl

On 08/08/2012 01:06 AM, Roy wrote:
> John Spencer<maillist-musl<at>  barfooze.de>  writes:
>
>> I uploaded an image file of my latest sabotage build from
>>
>> https://github.com/rofl0r/sabotage
>>
>> Image files are available at http://mirror.wzff.de/sabotage/
>>
>>
> is thare a new build for 0.9.3?
>
>
not yet. the latest build is mostly equivalent though, it has about 5 
patches applied that fix the major issues in 0.9.2.
there are no other known bugs fixed which would affect the statically 
linked binaries, so its sufficient to rebuild musl to get the new libc.so:

[get new pkg/musl from git and put it into /src/pkg ]
butch rebuild musl
butch rebuild relocate_toolchain (required to get the toolchain in tune 
again)

and you're up to date.

next thing on my TODO list is getting an i386 image out, so i'll 
postpone and update amd64 img file till the next release of musl or 
something significant in the X11 setup gets fixed.

(yup, X11 config is still the major TODO for sabotage. i somehow can't 
overcome my aversion against this topic and start to read up about it.)





^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2012-08-07 23:29 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-07-21 20:59 sabotage linux X86_64 image with LXDE desktop released John Spencer
2012-07-21 20:50 ` Rich Felker
2012-07-21 23:10   ` John Spencer
2012-07-21 23:05     ` Rich Felker
2012-07-21 23:50       ` John Spencer
2012-07-22  9:32 ` Daniel Cegiełka
2012-08-07 23:06 ` Roy
2012-08-07 23:29   ` John Spencer

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).