https://www.funtoo.org/api.php?action=feedcontributions&user=Jubalh&feedformat=atomFuntoo - User contributions [en]2024-03-28T08:41:52ZUser contributionsMediaWiki 1.36.2https://www.funtoo.org/index.php?title=Artwork&diff=10151Artwork2015-05-28T13:55:43Z<p>Jubalh: preliminary logo</p>
<hr />
<div>This page should function as documentation about existing and creating new artwork related to Funtoo Linux.<br />
<br />
== Participating ==<br />
Feel free to help us out with out lack of artwork! Edit the wiki and link to your attempts or reach out to us directly!<br />
For creating Logos you might consider making use of the ''golden ration'' or so called ''sacred geometry''.<br />
<br />
Because of our connection to [[Gentoo_Ecosystem|Gentoo Linux]] and for historical reasons it might be appropriate to look at Gentoo's existing:<br />
* [https://wiki.gentoo.org/wiki/Project:Artwork/Artwork Artwork]<br />
* [https://wiki.gentoo.org/wiki/Project:Artwork/Colors Colors ]<br />
* [https://www.gentoo.org/inside-gentoo/artwork/ Wallpapers and badges]<br />
<br />
It might be inspiring to read the [[Funtoo_Linux_Vision|Funtoo Project Vision]].<br />
<br />
== Logo ==<br />
[[File:Lg-funtoo.png|thumbnail|right|preliminary logo]]<br />
<br />
We try to collect logo ideas in [http://forums.funtoo.org/topic/74-funtoo-logo-ideas/ this thread] in our forum. Until a decision is made, most people use our preliminary logo.<br />
<br />
{{important|Funtoo still needs a perfect Logo which is also suited for printing and to be used on different media. Thus keeping colors and complexity in mind you can start drawing and send us your attempts!}}<br />
<br />
== Branding ==<br />
<br />
{{important|We have not yet settled on official Funtoo colors! So you can prepare your theming work but they might not get included in Funtoo Linux yet! Please be patient.}}<br />
<br />
Once we have settled on official colors, it would be nice to have themes and branding for popular applications. For example for your favourite window manager.<br />
<br />
Let's say you created a color theme for i3 window manager with Funtoo Linux based colors, but have no idea about how to make them available for other users or even include them official Funtoo. Just reach out to [[User:Jubalh|jubalh]] and send him your work, after getting an okay from our benevolent dictator [[User:Drobbins|Daniel Robbins]], he can then add a seperate ebuild containing your theme/branding/artwork or even add a new USE flag to the package.<br />
<br />
== Colors ==<br />
The colors listed here are a recommendation and a reference for which colors are currently used in Funtoo Linux logos and design. You are not limited to these colors they only serve as a starting point.<br />
<br />
{{TableStart}}<br />
<tr class="info"><th>Value</th><th>Used in</th></tr><br />
<tr><td style="width:16%; background: #444488;color:white">#444488</td><td style="background-color:#FFF>Funtoo website top bar;</td></tr><br />
<tr><td style="width:16%; background: #C7254E;color:white">#C7254E</td><td>Highlights in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #F0F7FD;color:black">#F0F7FD</td><td>Background of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #5BC0DE;color:white">#5BC0DE</td><td>Left border of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FF8040;color:white">#FF8040</td><td>Commands in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #073642;color:white">#073642</td><td>Background of commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #A9A9AA;color:white">#A9A9AA</td><td>Comments in the commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FCF2F2;color:black">#FCF2F2</td><td>Background of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #D9534F;color:white">#D9534F</td><td>Left border of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #FEFBED;color:black">#FEFBED</td><td>Background of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #F0AD4E;color:white">#F0AD4E</td><td>Left border of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01D80D;color:white">#01D80D</td><td>Several positions in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01E3E5;color:white">#01E3E5</td><td>epro output in the wiki</td></tr><br />
<tr><td style="width:16%; background: #7D8082;color:white">#7D8082</td><td>Some texts</td></tr><br />
<tr><td style="width:16%; background: #4070F0;color:white">#4070F0</td><td>Kernel's menuconfig in wiki</td></tr><br />
{{TableEnd}}<br />
<br />
== Screenshots ==<br />
Some of our users [http://forums.funtoo.org/topic/180-screenshots/ share their screenshots] in our [http://forums.funtoo.org/ forum].</div>Jubalhhttps://www.funtoo.org/index.php?title=File:Lg-funtoo.png&diff=10150File:Lg-funtoo.png2015-05-28T13:45:15Z<p>Jubalh: preliminary logo</p>
<hr />
<div>preliminary logo</div>Jubalhhttps://www.funtoo.org/index.php?title=Artwork&diff=10149Artwork2015-05-28T13:41:26Z<p>Jubalh: logo ideas</p>
<hr />
<div>This page should function as documentation about existing and creating new artwork related to Funtoo Linux.<br />
<br />
== Participating ==<br />
Feel free to help us out with out lack of artwork! Edit the wiki and link to your attempts or reach out to us directly!<br />
For creating Logos you might consider making use of the ''golden ration'' or so called ''sacred geometry''.<br />
<br />
Because of our connection to [[Gentoo_Ecosystem|Gentoo Linux]] and for historical reasons it might be appropriate to look at Gentoo's existing:<br />
* [https://wiki.gentoo.org/wiki/Project:Artwork/Artwork Artwork]<br />
* [https://wiki.gentoo.org/wiki/Project:Artwork/Colors Colors ]<br />
* [https://www.gentoo.org/inside-gentoo/artwork/ Wallpapers and badges]<br />
<br />
It might be inspiring to read the [[Funtoo_Linux_Vision|Funtoo Project Vision]].<br />
<br />
== Logo ==<br />
<br />
{{important|Funtoo still needs a perfect Logo which is also suited for printing and to be used on different media. Thus keeping colors and complexity in mind you can start drawing and send us your attempts!}}<br />
<br />
We try to collect logo ideas in [http://forums.funtoo.org/topic/74-funtoo-logo-ideas/ this thread] in our forum.<br />
<br />
== Branding ==<br />
<br />
{{important|We have not yet settled on official Funtoo colors! So you can prepare your theming work but they might not get included in Funtoo Linux yet! Please be patient.}}<br />
<br />
Once we have settled on official colors, it would be nice to have themes and branding for popular applications. For example for your favourite window manager.<br />
<br />
Let's say you created a color theme for i3 window manager with Funtoo Linux based colors, but have no idea about how to make them available for other users or even include them official Funtoo. Just reach out to [[User:Jubalh|jubalh]] and send him your work, after getting an okay from our benevolent dictator [[User:Drobbins|Daniel Robbins]], he can then add a seperate ebuild containing your theme/branding/artwork or even add a new USE flag to the package.<br />
<br />
== Colors ==<br />
The colors listed here are a recommendation and a reference for which colors are currently used in Funtoo Linux logos and design. You are not limited to these colors they only serve as a starting point.<br />
<br />
{{TableStart}}<br />
<tr class="info"><th>Value</th><th>Used in</th></tr><br />
<tr><td style="width:16%; background: #444488;color:white">#444488</td><td style="background-color:#FFF>Funtoo website top bar;</td></tr><br />
<tr><td style="width:16%; background: #C7254E;color:white">#C7254E</td><td>Highlights in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #F0F7FD;color:black">#F0F7FD</td><td>Background of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #5BC0DE;color:white">#5BC0DE</td><td>Left border of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FF8040;color:white">#FF8040</td><td>Commands in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #073642;color:white">#073642</td><td>Background of commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #A9A9AA;color:white">#A9A9AA</td><td>Comments in the commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FCF2F2;color:black">#FCF2F2</td><td>Background of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #D9534F;color:white">#D9534F</td><td>Left border of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #FEFBED;color:black">#FEFBED</td><td>Background of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #F0AD4E;color:white">#F0AD4E</td><td>Left border of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01D80D;color:white">#01D80D</td><td>Several positions in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01E3E5;color:white">#01E3E5</td><td>epro output in the wiki</td></tr><br />
<tr><td style="width:16%; background: #7D8082;color:white">#7D8082</td><td>Some texts</td></tr><br />
<tr><td style="width:16%; background: #4070F0;color:white">#4070F0</td><td>Kernel's menuconfig in wiki</td></tr><br />
{{TableEnd}}<br />
<br />
== Screenshots ==<br />
Some of our users [http://forums.funtoo.org/topic/180-screenshots/ share their screenshots] in our [http://forums.funtoo.org/ forum].</div>Jubalhhttps://www.funtoo.org/index.php?title=Artwork&diff=10148Artwork2015-05-28T13:39:34Z<p>Jubalh: screenshots</p>
<hr />
<div>This page should function as documentation about existing and creating new artwork related to Funtoo Linux.<br />
<br />
== Participating ==<br />
Feel free to help us out with out lack of artwork! Edit the wiki and link to your attempts or reach out to us directly!<br />
For creating Logos you might consider making use of the ''golden ration'' or so called ''sacred geometry''.<br />
<br />
Because of our connection to [[Gentoo_Ecosystem|Gentoo Linux]] and for historical reasons it might be appropriate to look at Gentoo's existing:<br />
* [https://wiki.gentoo.org/wiki/Project:Artwork/Artwork Artwork]<br />
* [https://wiki.gentoo.org/wiki/Project:Artwork/Colors Colors ]<br />
* [https://www.gentoo.org/inside-gentoo/artwork/ Wallpapers and badges]<br />
<br />
It might be inspiring to read the [[Funtoo_Linux_Vision|Funtoo Project Vision]].<br />
<br />
== Logo ==<br />
{{important|Funtoo still needs a perfect Logo which is also suited for printing and to be used on different media. Thus keeping colors and complexity in mind you can start drawing and send us your attempts!}}<br />
<br />
== Branding ==<br />
<br />
{{important|We have not yet settled on official Funtoo colors! So you can prepare your theming work but they might not get included in Funtoo Linux yet! Please be patient.}}<br />
<br />
Once we have settled on official colors, it would be nice to have themes and branding for popular applications. For example for your favourite window manager.<br />
<br />
Let's say you created a color theme for i3 window manager with Funtoo Linux based colors, but have no idea about how to make them available for other users or even include them official Funtoo. Just reach out to [[User:Jubalh|jubalh]] and send him your work, after getting an okay from our benevolent dictator [[User:Drobbins|Daniel Robbins]], he can then add a seperate ebuild containing your theme/branding/artwork or even add a new USE flag to the package.<br />
<br />
== Colors ==<br />
The colors listed here are a recommendation and a reference for which colors are currently used in Funtoo Linux logos and design. You are not limited to these colors they only serve as a starting point.<br />
<br />
{{TableStart}}<br />
<tr class="info"><th>Value</th><th>Used in</th></tr><br />
<tr><td style="width:16%; background: #444488;color:white">#444488</td><td style="background-color:#FFF>Funtoo website top bar;</td></tr><br />
<tr><td style="width:16%; background: #C7254E;color:white">#C7254E</td><td>Highlights in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #F0F7FD;color:black">#F0F7FD</td><td>Background of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #5BC0DE;color:white">#5BC0DE</td><td>Left border of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FF8040;color:white">#FF8040</td><td>Commands in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #073642;color:white">#073642</td><td>Background of commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #A9A9AA;color:white">#A9A9AA</td><td>Comments in the commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FCF2F2;color:black">#FCF2F2</td><td>Background of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #D9534F;color:white">#D9534F</td><td>Left border of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #FEFBED;color:black">#FEFBED</td><td>Background of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #F0AD4E;color:white">#F0AD4E</td><td>Left border of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01D80D;color:white">#01D80D</td><td>Several positions in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01E3E5;color:white">#01E3E5</td><td>epro output in the wiki</td></tr><br />
<tr><td style="width:16%; background: #7D8082;color:white">#7D8082</td><td>Some texts</td></tr><br />
<tr><td style="width:16%; background: #4070F0;color:white">#4070F0</td><td>Kernel's menuconfig in wiki</td></tr><br />
{{TableEnd}}<br />
<br />
== Screenshots ==<br />
Some of our users [http://forums.funtoo.org/topic/180-screenshots/ share their screenshots] in our [http://forums.funtoo.org/ forum].</div>Jubalhhttps://www.funtoo.org/index.php?title=Artwork&diff=10147Artwork2015-05-28T13:33:59Z<p>Jubalh: </p>
<hr />
<div>This page should function as documentation about existing and creating new artwork related to Funtoo Linux.<br />
<br />
== Participating ==<br />
Feel free to help us out with out lack of artwork! Edit the wiki and link to your attempts or reach out to us directly!<br />
For creating Logos you might consider making use of the ''golden ration'' or so called ''sacred geometry''.<br />
<br />
Because of our connection to [[Gentoo_Ecosystem|Gentoo Linux]] and for historical reasons it might be appropriate to look at Gentoo's existing:<br />
* [https://wiki.gentoo.org/wiki/Project:Artwork/Artwork Artwork]<br />
* [https://wiki.gentoo.org/wiki/Project:Artwork/Colors Colors ]<br />
* [https://www.gentoo.org/inside-gentoo/artwork/ Wallpapers and badges]<br />
<br />
It might be inspiring to read the [[Funtoo_Linux_Vision|Funtoo Project Vision]].<br />
<br />
== Logo ==<br />
{{important|Funtoo still needs a perfect Logo which is also suited for printing and to be used on different media. Thus keeping colors and complexity in mind you can start drawing and send us your attempts!}}<br />
<br />
== Branding ==<br />
<br />
{{important|We have not yet settled on official Funtoo colors! So you can prepare your theming work but they might not get included in Funtoo Linux yet! Please be patient.}}<br />
<br />
Once we have settled on official colors, it would be nice to have themes and branding for popular applications. For example for your favourite window manager.<br />
<br />
Let's say you created a color theme for i3 window manager with Funtoo Linux based colors, but have no idea about how to make them available for other users or even include them official Funtoo. Just reach out to [[User:Jubalh|jubalh]] and send him your work, after getting an okay from our benevolent dictator [[User:Drobbins|Daniel Robbins]], he can then add a seperate ebuild containing your theme/branding/artwork or even add a new USE flag to the package.<br />
<br />
== Colors ==<br />
The colors listed here are a recommendation and a reference for which colors are currently used in Funtoo Linux logos and design. You are not limited to these colors they only serve as a starting point.<br />
<br />
{{TableStart}}<br />
<tr class="info"><th>Value</th><th>Used in</th></tr><br />
<tr><td style="width:16%; background: #444488;color:white">#444488</td><td style="background-color:#FFF>Funtoo website top bar;</td></tr><br />
<tr><td style="width:16%; background: #C7254E;color:white">#C7254E</td><td>Highlights in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #F0F7FD;color:black">#F0F7FD</td><td>Background of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #5BC0DE;color:white">#5BC0DE</td><td>Left border of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FF8040;color:white">#FF8040</td><td>Commands in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #073642;color:white">#073642</td><td>Background of commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #A9A9AA;color:white">#A9A9AA</td><td>Comments in the commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FCF2F2;color:black">#FCF2F2</td><td>Background of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #D9534F;color:white">#D9534F</td><td>Left border of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #FEFBED;color:black">#FEFBED</td><td>Background of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #F0AD4E;color:white">#F0AD4E</td><td>Left border of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01D80D;color:white">#01D80D</td><td>Several positions in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01E3E5;color:white">#01E3E5</td><td>epro output in the wiki</td></tr><br />
<tr><td style="width:16%; background: #7D8082;color:white">#7D8082</td><td>Some texts</td></tr><br />
<tr><td style="width:16%; background: #4070F0;color:white">#4070F0</td><td>Kernel's menuconfig in wiki</td></tr><br />
{{TableEnd}}</div>Jubalhhttps://www.funtoo.org/index.php?title=Artwork&diff=10146Artwork2015-05-28T13:33:39Z<p>Jubalh: how to submit</p>
<hr />
<div>= Artwork =<br />
This page should function as documentation about existing and creating new artwork related to Funtoo Linux.<br />
<br />
== Participating ==<br />
Feel free to help us out with out lack of artwork! Edit the wiki and link to your attempts or reach out to us directly!<br />
For creating Logos you might consider making use of the ''golden ration'' or so called ''sacred geometry''.<br />
<br />
Because of our connection to [[Gentoo_Ecosystem|Gentoo Linux]] and for historical reasons it might be appropriate to look at Gentoo's existing:<br />
* [https://wiki.gentoo.org/wiki/Project:Artwork/Artwork Artwork]<br />
* [https://wiki.gentoo.org/wiki/Project:Artwork/Colors Colors ]<br />
* [https://www.gentoo.org/inside-gentoo/artwork/ Wallpapers and badges]<br />
<br />
It might be inspiring to read the [[Funtoo_Linux_Vision|Funtoo Project Vision]].<br />
<br />
== Logo ==<br />
{{important|Funtoo still needs a perfect Logo which is also suited for printing and to be used on different media. Thus keeping colors and complexity in mind you can start drawing and send us your attempts!}}<br />
<br />
== Branding ==<br />
<br />
{{important|We have not yet settled on official Funtoo colors! So you can prepare your theming work but they might not get included in Funtoo Linux yet! Please be patient.}}<br />
<br />
Once we have settled on official colors, it would be nice to have themes and branding for popular applications. For example for your favourite window manager.<br />
<br />
Let's say you created a color theme for i3 window manager with Funtoo Linux based colors, but have no idea about how to make them available for other users or even include them official Funtoo. Just reach out to [[User:Jubalh|jubalh]] and send him your work, after getting an okay from our benevolent dictator [[User:Drobbins|Daniel Robbins]], he can then add a seperate ebuild containing your theme/branding/artwork or even add a new USE flag to the package.<br />
<br />
== Colors ==<br />
The colors listed here are a recommendation and a reference for which colors are currently used in Funtoo Linux logos and design. You are not limited to these colors they only serve as a starting point.<br />
<br />
{{TableStart}}<br />
<tr class="info"><th>Value</th><th>Used in</th></tr><br />
<tr><td style="width:16%; background: #444488;color:white">#444488</td><td style="background-color:#FFF>Funtoo website top bar;</td></tr><br />
<tr><td style="width:16%; background: #C7254E;color:white">#C7254E</td><td>Highlights in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #F0F7FD;color:black">#F0F7FD</td><td>Background of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #5BC0DE;color:white">#5BC0DE</td><td>Left border of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FF8040;color:white">#FF8040</td><td>Commands in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #073642;color:white">#073642</td><td>Background of commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #A9A9AA;color:white">#A9A9AA</td><td>Comments in the commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FCF2F2;color:black">#FCF2F2</td><td>Background of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #D9534F;color:white">#D9534F</td><td>Left border of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #FEFBED;color:black">#FEFBED</td><td>Background of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #F0AD4E;color:white">#F0AD4E</td><td>Left border of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01D80D;color:white">#01D80D</td><td>Several positions in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01E3E5;color:white">#01E3E5</td><td>epro output in the wiki</td></tr><br />
<tr><td style="width:16%; background: #7D8082;color:white">#7D8082</td><td>Some texts</td></tr><br />
<tr><td style="width:16%; background: #4070F0;color:white">#4070F0</td><td>Kernel's menuconfig in wiki</td></tr><br />
{{TableEnd}}</div>Jubalhhttps://www.funtoo.org/index.php?title=Artwork&diff=10145Artwork2015-05-28T13:23:04Z<p>Jubalh: fix link</p>
<hr />
<div>This page should function as documentation about existing and creating new artwork related to Funtoo Linux.<br />
<br />
== Participating ==<br />
Feel free to help us out with out lack of artwork! Edit the wiki and link to your attempts or reach out to us directly!<br />
For creating Logos you might consider making use of the ''golden ration'' or so called ''sacred geometry''.<br />
<br />
Because of our connection to [[Gentoo_Ecosystem|Gentoo Linux]] and for historical reasons it might be appropriate to look at Gentoo's existing:<br />
* [https://wiki.gentoo.org/wiki/Project:Artwork/Artwork Artwork]<br />
* [https://wiki.gentoo.org/wiki/Project:Artwork/Colors Colors ]<br />
* [https://www.gentoo.org/inside-gentoo/artwork/ Wallpapers and badges]<br />
<br />
It might be inspiring to read the [[Funtoo_Linux_Vision|Funtoo Project Vision]].<br />
<br />
== Logo ==<br />
{{important|Funtoo still needs a perfect Logo which is also suited for printing and to be used on different media. Thus keeping colors and complexity in mind you can start drawing and send us your attempts!}}<br />
<br />
== Branding ==<br />
Once we have settled on official colors, it would be nice to have themes and branding for popular applications. For example for your favourite window manager.<br />
<br />
== Colors ==<br />
The colors listed here are a recommendation and a reference for which colors are currently used in Funtoo Linux logos and design. You are not limited to these colors they only serve as a starting point.<br />
<br />
{{TableStart}}<br />
<tr class="info"><th>Value</th><th>Used in</th></tr><br />
<tr><td style="width:16%; background: #444488;color:white">#444488</td><td style="background-color:#FFF>Funtoo website top bar;</td></tr><br />
<tr><td style="width:16%; background: #C7254E;color:white">#C7254E</td><td>Highlights in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #F0F7FD;color:black">#F0F7FD</td><td>Background of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #5BC0DE;color:white">#5BC0DE</td><td>Left border of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FF8040;color:white">#FF8040</td><td>Commands in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #073642;color:white">#073642</td><td>Background of commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #A9A9AA;color:white">#A9A9AA</td><td>Comments in the commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FCF2F2;color:black">#FCF2F2</td><td>Background of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #D9534F;color:white">#D9534F</td><td>Left border of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #FEFBED;color:black">#FEFBED</td><td>Background of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #F0AD4E;color:white">#F0AD4E</td><td>Left border of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01D80D;color:white">#01D80D</td><td>Several positions in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01E3E5;color:white">#01E3E5</td><td>epro output in the wiki</td></tr><br />
<tr><td style="width:16%; background: #7D8082;color:white">#7D8082</td><td>Some texts</td></tr><br />
<tr><td style="width:16%; background: #4070F0;color:white">#4070F0</td><td>Kernel's menuconfig in wiki</td></tr><br />
{{TableEnd}}</div>Jubalhhttps://www.funtoo.org/index.php?title=Artwork&diff=10144Artwork2015-05-28T13:22:19Z<p>Jubalh: participating</p>
<hr />
<div>This page should function as documentation about existing and creating new artwork related to Funtoo Linux.<br />
<br />
== Participating ==<br />
Feel free to help us out with out lack of artwork! Edit the wiki and link to your attempts or reach out to us directly!<br />
For creating Logos you might consider making use of the ''golden ration'' or so called ''sacred geometry''.<br />
<br />
Because of our connection to [[Gentoo_Ecosystem|Gentoo Linux]] and for historical reasons it might be appropriate to look at Gentoo's existing:<br />
* [https://wiki.gentoo.org/wiki/Project:Artwork/Artwork Artwork]<br />
* [https://wiki.gentoo.org/wiki/Project:Artwork/Colors Colors ]<br />
* [https://www.gentoo.org/inside-gentoo/artwork/ Wallpapers and badges]<br />
<br />
It might be inspiring to read the [[Funtoo_Linux_Vision Funtoo Project Vision]].<br />
<br />
== Logo ==<br />
{{important|Funtoo still needs a perfect Logo which is also suited for printing and to be used on different media. Thus keeping colors and complexity in mind you can start drawing and send us your attempts!}}<br />
<br />
== Branding ==<br />
Once we have settled on official colors, it would be nice to have themes and branding for popular applications. For example for your favourite window manager.<br />
<br />
== Colors ==<br />
The colors listed here are a recommendation and a reference for which colors are currently used in Funtoo Linux logos and design. You are not limited to these colors they only serve as a starting point.<br />
<br />
{{TableStart}}<br />
<tr class="info"><th>Value</th><th>Used in</th></tr><br />
<tr><td style="width:16%; background: #444488;color:white">#444488</td><td style="background-color:#FFF>Funtoo website top bar;</td></tr><br />
<tr><td style="width:16%; background: #C7254E;color:white">#C7254E</td><td>Highlights in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #F0F7FD;color:black">#F0F7FD</td><td>Background of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #5BC0DE;color:white">#5BC0DE</td><td>Left border of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FF8040;color:white">#FF8040</td><td>Commands in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #073642;color:white">#073642</td><td>Background of commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #A9A9AA;color:white">#A9A9AA</td><td>Comments in the commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FCF2F2;color:black">#FCF2F2</td><td>Background of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #D9534F;color:white">#D9534F</td><td>Left border of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #FEFBED;color:black">#FEFBED</td><td>Background of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #F0AD4E;color:white">#F0AD4E</td><td>Left border of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01D80D;color:white">#01D80D</td><td>Several positions in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01E3E5;color:white">#01E3E5</td><td>epro output in the wiki</td></tr><br />
<tr><td style="width:16%; background: #7D8082;color:white">#7D8082</td><td>Some texts</td></tr><br />
<tr><td style="width:16%; background: #4070F0;color:white">#4070F0</td><td>Kernel's menuconfig in wiki</td></tr><br />
{{TableEnd}}</div>Jubalhhttps://www.funtoo.org/index.php?title=Artwork&diff=10143Artwork2015-05-28T13:18:18Z<p>Jubalh: links</p>
<hr />
<div>This page should function as documentation about existing and creating new artwork related to Funtoo Linux.<br />
<br />
== Participating ==<br />
Feel free to help us out with out lack of artwork! Edit the wiki and link to your attempts or reach out to us directly!<br />
For creating Logos you might consider making use of the ''golden ration'' or so called ''sacred geometry''.<br />
<br />
== Logo ==<br />
{{important|Funtoo still needs a perfect Logo which is also suited for printing and to be used on different media. Thus keeping colors and complexity in mind you can start drawing and send us your attempts!}}<br />
<br />
== Branding ==<br />
Once we have settled on official colors, it would be nice to have themes and branding for popular applications. For example for your favourite window manager.<br />
<br />
== Colors ==<br />
The colors listed here are a recommendation and a reference for which colors are currently used in Funtoo Linux logos and design. You are not limited to these colors they only serve as a starting point.<br />
<br />
{{TableStart}}<br />
<tr class="info"><th>Value</th><th>Used in</th></tr><br />
<tr><td style="width:16%; background: #444488;color:white">#444488</td><td style="background-color:#FFF>Funtoo website top bar;</td></tr><br />
<tr><td style="width:16%; background: #C7254E;color:white">#C7254E</td><td>Highlights in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #F0F7FD;color:black">#F0F7FD</td><td>Background of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #5BC0DE;color:white">#5BC0DE</td><td>Left border of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FF8040;color:white">#FF8040</td><td>Commands in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #073642;color:white">#073642</td><td>Background of commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #A9A9AA;color:white">#A9A9AA</td><td>Comments in the commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FCF2F2;color:black">#FCF2F2</td><td>Background of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #D9534F;color:white">#D9534F</td><td>Left border of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #FEFBED;color:black">#FEFBED</td><td>Background of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #F0AD4E;color:white">#F0AD4E</td><td>Left border of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01D80D;color:white">#01D80D</td><td>Several positions in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01E3E5;color:white">#01E3E5</td><td>epro output in the wiki</td></tr><br />
<tr><td style="width:16%; background: #7D8082;color:white">#7D8082</td><td>Some texts</td></tr><br />
<tr><td style="width:16%; background: #4070F0;color:white">#4070F0</td><td>Kernel's menuconfig in wiki</td></tr><br />
{{TableEnd}}<br />
<br />
== Relevant links ==<br />
Because of our connection to [[Gentoo_Ecosystem|Gentoo Linux]] and thus for historical reasons it might be appropriate to look at their:<br />
* [https://wiki.gentoo.org/wiki/Project:Artwork/Artwork Artwork]<br />
* [https://wiki.gentoo.org/wiki/Project:Artwork/Colors Colors ]<br />
* [https://www.gentoo.org/inside-gentoo/artwork/ Wallpapers and badges]</div>Jubalhhttps://www.funtoo.org/index.php?title=Artwork&diff=10142Artwork2015-05-28T13:13:14Z<p>Jubalh: Logo and participating</p>
<hr />
<div>This page should function as documentation about existing and creating new artwork related to Funtoo Linux.<br />
<br />
== Participating ==<br />
Feel free to help us out with out lack of artwork! Edit the wiki and link to your attempts or reach out to us directly!<br />
For creating Logos you might consider making use of the ''golden ration'' or so called ''sacred geometry''.<br />
<br />
== Logo ==<br />
{{important|Funtoo still needs a perfect Logo which is also suited for printing and to be used on different media. Thus keeping colors and complexity in mind you can start drawing and send us your attempts!}}<br />
<br />
== Branding ==<br />
Once we have settled on official colors, it would be nice to have themes and branding for popular applications. For example for your favourite window manager.<br />
<br />
== Colors ==<br />
The colors listed here are a recommendation and a reference for which colors are currently used in Funtoo Linux logos and design. You are not limited to these colors they only serve as a starting point.<br />
<br />
{{TableStart}}<br />
<tr class="info"><th>Value</th><th>Used in</th></tr><br />
<tr><td style="width:16%; background: #444488;color:white">#444488</td><td style="background-color:#FFF>Funtoo website top bar;</td></tr><br />
<tr><td style="width:16%; background: #C7254E;color:white">#C7254E</td><td>Highlights in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #F0F7FD;color:black">#F0F7FD</td><td>Background of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #5BC0DE;color:white">#5BC0DE</td><td>Left border of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FF8040;color:white">#FF8040</td><td>Commands in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #073642;color:white">#073642</td><td>Background of commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #A9A9AA;color:white">#A9A9AA</td><td>Comments in the commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FCF2F2;color:black">#FCF2F2</td><td>Background of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #D9534F;color:white">#D9534F</td><td>Left border of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #FEFBED;color:black">#FEFBED</td><td>Background of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #F0AD4E;color:white">#F0AD4E</td><td>Left border of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01D80D;color:white">#01D80D</td><td>Several positions in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01E3E5;color:white">#01E3E5</td><td>epro output in the wiki</td></tr><br />
<tr><td style="width:16%; background: #7D8082;color:white">#7D8082</td><td>Some texts</td></tr><br />
<tr><td style="width:16%; background: #4070F0;color:white">#4070F0</td><td>Kernel's menuconfig in wiki</td></tr><br />
{{TableEnd}}</div>Jubalhhttps://www.funtoo.org/index.php?title=Artwork&diff=10141Artwork2015-05-28T13:02:05Z<p>Jubalh: start documenting colors and artwork</p>
<hr />
<div>This page should function as documentation about existing and creating new artwork related to Funtoo Linux.<br />
<br />
== Colors ==<br />
The colors listed here are a recommendation and a reference for which colors are currently used in Funtoo Linux logos and design. You are not limited to these colors they only serve as a starting point.<br />
<br />
{{TableStart}}<br />
<tr class="info"><th>Value</th><th>Used in</th></tr><br />
<tr><td style="width:16%; background: #444488;color:white">#444488</td><td style="background-color:#FFF>Funtoo website top bar;</td></tr><br />
<tr><td style="width:16%; background: #C7254E;color:white">#C7254E</td><td>Highlights in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #F0F7FD;color:black">#F0F7FD</td><td>Background of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #5BC0DE;color:white">#5BC0DE</td><td>Left border of notes section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FF8040;color:white">#FF8040</td><td>Commands in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #073642;color:white">#073642</td><td>Background of commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #A9A9AA;color:white">#A9A9AA</td><td>Comments in the commands section in the Wiki</td></tr><br />
<tr><td style="width:16%; background: #FCF2F2;color:black">#FCF2F2</td><td>Background of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #D9534F;color:white">#D9534F</td><td>Left border of warning section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #FEFBED;color:black">#FEFBED</td><td>Background of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #F0AD4E;color:white">#F0AD4E</td><td>Left border of important section in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01D80D;color:white">#01D80D</td><td>Several positions in the wiki</td></tr><br />
<tr><td style="width:16%; background: #01E3E5;color:white">#01E3E5</td><td>epro output in the wiki</td></tr><br />
<tr><td style="width:16%; background: #7D8082;color:white">#7D8082</td><td>Some texts</td></tr><br />
<tr><td style="width:16%; background: #4070F0;color:white">#4070F0</td><td>Kernel's menuconfig in wiki</td></tr><br />
{{TableEnd}}</div>Jubalhhttps://www.funtoo.org/index.php?title=Portage_Variables&diff=10139Portage Variables2015-05-27T15:10:15Z<p>Jubalh: </p>
<hr />
<div>== Introduction ==<br />
<br />
Ebuild developers as well as users of Portage can control Portage behavior using a number of Portage variables. Also, when an ebuild executes, a number of variables are defined by <code>ebuild.sh</code>, the main ebuild script, so they are available for your ebuild. There are also variables that the ebuild writer can define within his or her ebuild to provide information about the ebuild as well as control behavior. Information on [[Ebuild Functions]], which are used to define actions that are performed during various parts of a package's lifecycle, is also available on this wiki.<br />
<br />
{{Note|An '''ebuild''' is a textual meta-description of a software package (stored in a filename suffixed by ''.ebuild'' and generally located in a subdirectory of ''/usr/portage'') that provides the instructions to build and install the later on your system plus a number of additional informations like a brief summary of the package, the required dependencies to build and run the package, where to get the software package source code and so on. Due to the 1:1 matching between an ebuild file and a software package most of Gentoo and Funtoo developers uses the term ''ebuild'' to designate the meta-description of a package and the software package it relates in itself.}}<br />
<br />
=== Profile Variables ===<br />
<br />
These variables are set in the profile(s) selected on the user's system. These profiles live inside <code>/usr/portage/profiles</code>.<br />
<br />
; ARCH<br />
: ARCH defines the name for the underlying system architecture. As of late December 2010, Gentoo Linux supports defines the following architectures in various system profiles:<br />
<br />
<tt>alpha<br />
amd64<br />
amd64-fbsd<br />
arm<br />
cobalt<br />
fulong-2e<br />
hppa<br />
hppa-hpux<br />
ia64<br />
ia64-hpux<br />
ip22<br />
ip27<br />
ip28<br />
ip30<br />
ip32<br />
ip32r10k<br />
m68k<br />
m68k-mint<br />
mips<br />
mips-irix<br />
mips64<br />
mips64el<br />
mipsel<br />
ppc<br />
ppc-aix<br />
ppc-macos<br />
ppc-openbsd<br />
ppc64<br />
ppc64-macos<br />
s390<br />
sgi<br />
sh<br />
sparc<br />
sparc-fbsd<br />
sparc-solaris<br />
sparc64<br />
sparc64-fbsd<br />
sparc64-solaris<br />
x64-macos<br />
x64-openbsd<br />
x64-solaris<br />
x86<br />
x86-cygwin<br />
x86-fbsd<br />
x86-interix<br />
x86-macos<br />
x86-netbsd<br />
x86-openbsd<br />
x86-solaris<br />
x86-winnt<br />
xbox<br />
yeeloong</tt><br />
<br />
This list was generated using the following command:<br />
<br />
<console><br />
###i## cd /usr/portage/profiles<br />
###i## grep -r ARCH= * | cut -f2 -d"=" | sed -e 's/"//g' | sort -u <br />
</console><br />
<br />
=== Path Variables ===<br />
<br />
;PORTDIR<br />
: PORTDIR will be set to the path of the Portage directory that contains the ebuild that is currently executing, such as <tt>/usr/portage</tt>.<br />
<br />
;PORTAGE_TMPDIR<br />
: PORTAGE_TMPDIR defines the path to the location that Portage should use for all its temporary files, and defaults to <tt>/var/tmp</tt>.<br />
<br />
;DISTDIR<br />
: DISTDIR defines the path to the location of all distfiles (downloaded source code/artifacts), and defaults to <tt>/usr/portage/distfiles</tt>.<br />
<br />
;PKGDIR<br />
: PKGDIR defines the path to where Portage will store all built binary packages, and defaults to <tt>/usr/portage/packages</tt>.<br />
<br />
;RPMDIR<br />
: RPMDIR defines the path to where Portage will store all built binary RPM packages, and defaults to <tt>/usr/portage/rpm</tt>.<br />
<br />
;ROOT<br />
:ROOT defines the root of the filesystem to which packages should be installed, and may be set on the command-line. If not defined, Portage will set ROOT to <tt>/</tt> by the time your ebuild executes. When writing <tt>pkg_*</tt> ebuild functions, all your ebuild logic must respect the setting of the ROOT variable and compensate for situations when ROOT is not <tt>/</tt>. ROOT is used by stage1 builds to install to a sub-directory. <tt>ROOT=/tmp/stage1root emerge -e system</tt> is a command that might be run by a stage1 build. After <tt>src_install</tt> executes, Portage will always install the resultant files placed in <tt>$D</tt> to the filesystem defined by ROOT.<br />
<br />
=== Prefix Variables ===<br />
<br />
Portage supports the ability to act as a package manager for commercial operating systems such as MacOS X, or to install ebuilds on non-Gentoo systems, or to sub-directories on Gentoo or non-Gentoo systems. When used in this capacity, ebuilds are not installed to the root filesystem but are instead installed to a subdirectory, called a "prefix". Portage's prefix variables, available in EAPI 3, support this capability, and are designed to work with ebuilds that are maintained in a separate [http://overlays.gentoo.org/proj/alt/browser/trunk/prefix-overlay prefix overlay].<br />
<br />
As part of the EAPI 3 prefix support, all ebuild helpers such as <tt>econf</tt> and <tt>einstall</tt> use <tt>$ED</tt> instead of <tt>$D</tt>. See below for full variable definitions.<br />
<br />
;EPREFIX<br />
:This variable is typically set in <tt>/etc/make.conf</tt> or <tt>make.globals</tt>, and defines the prefix that should be used by ebuilds. Prefix-aware ebuilds can reference this variable and use it appropriately. if EPREFIX is not defined, then EPREFIX will default to no value.<br />
<br />
;EROOT<br />
:EROOT is a more concise way of specifying <tt>$ROOT$EPREFIX</tt>, and is intended to be used in <tt>pkg_*</tt> ebuild functions.<br />
<br />
;ED<br />
:ED is a more concise way of specifying <tt>$D$EPREFIX</tt>, and is intended to be used in <tt>src_*</tt> ebuild functions. <br />
<br />
For more information on Portage's prefix support, see the [http://www.gentoo.org/proj/en/gentoo-alt/prefix/techdocs.xml Gentoo Prefix Techdocs].<br />
<br />
=== Path Variables For Your Use ===<br />
<br />
;WORKDIR<br />
:WORKDIR defines the temporary filesystem location that is used for extracting source code/artifacts, preparation, configuration and compilation, and will be defined for you by the time your ebuild executes, and its value must not be modified. By default, <tt>src_unpack</tt> will extract all source code/artifacts within WORKDIR. If you need to manually extract any archives, this must all be done somewhere within WORKDIR, T or D, with WORKDIR being the preferred location for doing this. WORKDIR is automatically cleaned up by Portage upon completion.<br />
<br />
;S<br />
:S defaults to <tt>$WORKDIR/$P</tt>, but may be redefined in your ebuild to be some other sub-directory of WORKDIR. Typically, S may be redefined to reflect the ''real'' directory name that is contained within the source tarball when it differs from the default of <tt>$WORKDIR/$P</tt>. When <tt>src_prepare</tt>, <tt>src_configure</tt>, <tt>src_compile</tt>, <tt>src_test</tt> and <tt>src_install</tt> run, they will attempt to set the current working directory to S if it exists, falling back to WORKDIR if S does not exist. <br />
<br />
;T<br />
:A temporary file storage location that is available to you during your ebuild's execution. T is automatically cleaned up by Portage upon completion.<br />
<br />
;D<br />
:D defines the filesystem tree to which the <tt>src_install</tt> function should install all files. All files defined here will be installed by Portage to the destination defined by ROOT.<br />
<br />
;FILESDIR<br />
: FILESDIR is shorthand for <tt>$PORTDIR/$CATEGORY/$PN/files</tt> -- the <tt>files/</tt> sub-directory in the Portage tree for your particular ebuild. Typically used in <tt>src_prepare</tt> for applying patches, or by <tt>src_install</tt> for installing supplementary files such as initialization scripts that were committed to the Portage tree alongside your ebuild.<br />
<br />
=== Metadata Variables ===<br />
<br />
Metadata variables are variables that you set in your ebuild. They are cached by Portage so they can be quickly accessed for dependency resolution and searches -- in <tt>/var/cache/edb/dep</tt>. When an ebuild is updated, Portage automatically updates the cache the next time it notices the ebuild has changed.<br />
<br />
;EAPI<br />
: Periodically, the Gentoo Linux project defines new functionality and behavior related to how ebuilds are handled by Portage. These changes may require you to write your ebuilds slightly differently, or may allow you to take advantage of new capabilities in Portage. In your ebuild, you can specify the EAPI you are targeted by setting the EAPI variable as the first line in the ebuild. If no EAPI is specified, an EAPI of 0 ("classic" behavior) is assumed. To view a complete definition of EAPIs 1 through 3, please see [http://devmanual.gentoo.org/ebuild-writing/eapi/index.html The Gentoo Developer Guide's EAPI page]. Note that the information on EAPI 4 is incomplete, and more detailed information can be found on in-progress [http://dev.gentoo.org/~zmedico/portage/doc/ch05s03s05.html EAPI 4 document maintained by Zac Medico]. At some point, it may be possible to set an EAPI on a repository or overlay-wide basis, but for now, it is set by each individual ebuild.<br />
<br />
;DEPEND<br />
: DEPEND is used to specify an ebuild's build dependencies, and is a list of all ebuilds (and their corresponding versions/slots) that are required to be installed to a bare stage3 (or @system set + dependencies) in order for this package to '''build''' (compile, etc.). If one or more of these ebuilds are not installed, then it must cause the building of this package to fail; otherwise it is not a true build dependency. Do not list any dependencies for packages that are included in the underlying bare stage3 unless specific versions of the core packages (such as gcc, or glibc) are required, since these packages are expected to be available on all systems. All dependencies listed in DEPEND are satisfied '''prior''' to this package being built.<br />
<br />
;RDEPEND<br />
: RDEPEND is used to specify an ebuild's runtime dependencies, and is a list of all ebuilds (and their corresponding versions/slots) that are required to be installed to a bare stage3 (or @system set + dependencies) in order for this package to '''run''' (function). For our purposes, when runtime dependencies are satisfied, we would expect that package to function fully, for both build needs (linking) and runtime needs (its executables running properly), although the package may not yet be ready to be used interactively by end-users (see PDEPEND, below.)<br><br>If one or more of the dependencies listed in RDEPEND are not installed, then this ebuild would not be expected to function; otherwise it is not a true runtime dependency. Do not list any dependencies for packages that are included in the bare stage3 unless specific versions of the core packages (such as glibc) are required, since these packages are expected to be available on all systems. The dependencies listed in RDEPEND may or not be installed prior to this package being built, but you can assume that these packages will be installed to the filesystem prior to this package being installed to the filesystem.<br />
<br />
; DEPEND ''and'' RDEPEND<br />
: Note that if a dependency needs to be available both ''before'' the package is built, and also ''after'' the package is built, then the dependency must be listed in both DEPEND and RDEPEND, as it is both a build and runtime dependency. This is common with many packages, including virtually all shared libraries, which must be installed prior to compilation for headers and linking purposes but must continue to be available after the package is installed so that it can function properly.<br />
<br />
; (R)DEPEND if installed<br />
: It is often useful for an ebuild to conditionally depend on a specific version of another package, if it happens to be installed. Take sys-fs/lvm2 and sys-fs/udev, for example. sys-fs/lvm2 may not always be installed, but sys-fs/udev is a required ebuild. It would be nice if we could specify in the sys-fs/udev ebuild that a specific or higher version of lvm2 is required to work with this particular version of udev, or specify in the lvm2 ebuild that a specific version or higher of udev is required to work with this version of lvm2. While this is not currently possible in Portage, it is possible to use the blocker functionality in Portage to define that earlier versions are ''not'' compatible, which essentially accomplishes the same thing. To specify that another package should not be installed alongside your ebuild, use the double-exclamation from of a blocker: "!!<sys-fs/udev-160" might be an example. This will prevent both ebuilds from being installed on the system at the same time. The double-exclamation blocker is supported in EAPI 2 and above.<br />
<br />
; PDEPEND<br />
: PDEPEND is a useful type of dependency and is currently under-utilized. A PDEPEND is a post-merge dependency. Dependencies in PDEPEND will be satisfied ''after'' the ebuild in question is merged. PDEPEND dependencies apply to both from-source merges and binary package installs. You can also think of PDEPEND as a ''parallel'' dependency, and is useful for breaking circular dependencies by moving RDEPEND dependencies to PDEPEND. For example, consider a situation where gtk+ RDEPENDs on aidwata-icon-theme, because aidwata-icon-theme is the default icon set for gtk+. However, adwaita-icon-theme itself requires gtk+ to be installed in order to build. Upon closer inspection of dependencies, one might also notice that gtk+ does function properly for satisfying build (DEPEND) requirements without adwaita-icon-theme installed, although gtk+ might be considered incomplete from an end-user perspective without adwaita-icon-theme installed before emerge finishes. To properly express this via dependencies, adwaita-icon-theme should be listed as a PDEPEND of gtk+ -- it should be installed ''alongside'' (in Parallel with) gtk+, but can be installed later by emerge. You can also think of PDEPEND as a means to link ebuilds together into larger logical units without combining them into a single ebuild. It's a way for an ebuild to say "I need this (and this, and this) before I am truly complete."<br />
<br />
{{Note|PDEPEND is a '''great''' tool for breaking circular dependencies, and PDEPEND can be used as necessary to do so. It is not necessary to ''avoid'' PDEPEND as indicated in the ebuild man page from Gentoo.}}<br />
<br />
; IUSE<br />
: IUSE specifies the USE variables that are recognized by this ebuild. Note that changing IUSE in existing ebuilds should be handled carefully, as if another ebuild depends on a particular USE variable in IUSE being enabled in your ebuild, and you remove it, then Portage will not be able to satisfy this dependency. Similarly, if another ebuild depends on a particular USE variable in IUSE being disabled in your ebuild, and you remove it, then Portage will no longer be able to satisfy this dependency either. For this reason, it can become difficult to remove USE variables from IUSE once other ebuilds explicitly depend upon them being enabled or disabled.<br />
<br />
; SRC_URI<br />
: SRC_URI contains a list of all remote files that are used by this ebuild during the unpack/prepare/compile/install phases. Starting with EAPI 2, it is possible to rename source tarballs, which comes in handy when pulling down tagged sources from GitHub, using the following trick. This approach also makes it quite easy to release source tarballs for ebuilds, as all you need to do is tag the release and then push the tags to GitHub with a <tt>git push tags</tt> command:<br />
<br />
<source lang="bash"><br />
GITHUB_USER="foo"<br />
SRC_URI="https://github.com/${GITHUB_USER}/${PN}/tarball/${PV} -> ${PN}-git-${PV}.tgz"<br />
<br />
src_prepare() {<br />
cd "${WORKDIR}"/${GITHUB_USER}-${PN}-*<br />
S="$(pwd)"<br />
}<br />
</source><br />
<br />
=== KEYWORDS ===<br />
<br />
KEYWORDS is a general keywording system for ebuilds (meta description of a software package), but is now used exclusively by the Gentoo architecture teams to define whether a particular package is marked as belonging to the stable or the current (''testing'' in Gentoo terminology) branch on a given system architecture. Not all packages are tagged as belonging to stable/current on all architectures, some of them lacks of such tags and are considered as being masked on a particular architecture. This can happen for several reasons like:<br />
* The package makes no sense for the architecture (e.g. SILO ''sys-boot/silo'' which is a boot loader for SPARC machines).<br />
* The package points to a development repository (e.g. version numbered -9999 packages like ''dev-vcs/git-9999'')<br />
* The package makes sense on a a given architecture but no one has tested it (yet)<br />
* The package has been pushed in the portage tree but remains to go in a intensive test cycle before being tagged as current then stable).<br />
<br />
In a user's arch profile (see <tt>eselect profile list</tt>.) <tt>ACCEPT_KEYWORDS</tt> variable is defined which specifies what specific keywords should be unmasked for this system by default. On Funtoo Linux systems, ACCEPT_KEYWORDS is set to one of six values:<br />
<br />
;<tt>amd64</tt><br />
:64-bit PC-compatible stable tree<br />
;<tt>~amd64</tt><br />
:64-bit PC-compatible current tree<br />
;<tt>x86</tt><br />
:32-bit PC-compatible stable tree<br />
;<tt>~x86</tt><br />
:32-bit PC-compatible current tree<br />
;<tt>sparc</tt><br />
:SPARC stable tree<br />
;<tt>~sparc</tt><br />
:SPARC current tree<br />
<br />
An ebuild uses the KEYWORDS variable to control what tree or trees the ebuild is part of, and will contain at most one setting for each system architecture. The KEYWORD settings are defined with the following meaning:<br />
<br />
;<tt>amd64</tt><br />
:ebuild unmasked in 64-bit PC-compatible stable '''and current''' trees<br />
;<tt>~amd64</tt><br />
:ebuild unmasked in 64-bit PC-compatible current tree only<br />
;<tt>-amd64</tt> <br />
:ebuild masked for all 64-bit PC-compatible trees<br />
;<tt>x86</tt> <br />
:ebuild unmasked in 32-bit PC-compatible stable '''and current''' trees<br />
;<tt>~x86</tt><br />
:ebuild unmasked in 32-bit PC-compatible current tree only<br />
;<tt>-x86</tt> <br />
:ebuild masked for all 32-bit PC-compatible trees<br />
;<tt>sparc</tt><br />
:ebuild unmasked in SPARC stable '''and current''' trees<br />
;<tt>~sparc</tt><br />
:ebuild unmasked in SPARC current tree only<br />
;<tt>-sparc</tt> <br />
:ebuild masked for all sparc trees<br />
<br />
{{ fancyimportant|'''x86''', '''amd64''' or '''sparc''' setting in the ebuild's KEYWORDS will unmask the ebuild for both current and stable tree systems -- that is, any ebuild made available to stable is also made available to current. }}<br />
<br />
Additional wildcard keywords are supported in ebuilds:<br />
<br />
;<tt>*</tt><br />
: unmask for all trees. This variable can be modified by appending negative keywords: <tt>"* -ia64"</tt> means "all keywords except (~)ia64<br />
;<tt>-*</tt> <br />
:mask for all trees. This variable can be modified by appending positive keywords: <tt>"-* amd64 x86"</tt> means "no keywords except for x86 and amd64 stable trees<br />
<br />
===== Gentoo Linux KEYWORDS Policies =====<br />
<br />
Due to the exclusive use of KEYWORDS by the Gentoo Linux architecture teams, a number of unfortunate policy-related checks have been integrated into the Portage source code. One is banning the use of <tt>KEYWORDS="*"</tt> to enable KEYWORDS for all available architectures, since it is Gentoo Linux policy for each architecture team to independently verify an ebuild one architecture at a time - this rule currently applies to all ebuilds, including architecture-independent ebuilds. This means that virtually all ebuilds originating from Gentoo Linux will specify an exhaustive, explicit list of all architecture trees for which this package has been unmasked, which will look something like this:<br />
<br />
<source lang="bash"><br />
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd"<br />
</source><br />
<br />
For ebuilds in Funtoo Linux, the <tt>*</tt> form should be used when possible.<br />
<br />
[[Category:Internals]]<br />
[[Category:Portage]]<br />
[[Category:Official Documentation]]</div>Jubalhhttps://www.funtoo.org/index.php?title=Package:Vifm&diff=9854Package:Vifm2015-05-08T09:36:48Z<p>Jubalh: USE flags get displayed via template now</p>
<hr />
<div>{{Ebuild<br />
|Summary=Console file manager with vi(m)-like keybindings<br />
|CatPkg=app-misc/vifm<br />
|Maintainer=<br />
|Homepage=http://vifm.info/<br />
}}<br />
'''Vifm''' is an [https://en.wikipedia.org/wiki/Ncurses ncurses] based file manager with [https://en.wikipedia.org/wiki/Vi vi] like keybindings/modes/options/commands/configuration, which also borrows some useful ideas from [https://en.wikipedia.org/wiki/Mutt_(email_client) mutt]. If you use vi, vifm gives you complete keyboard control over your files without having to learn a new set of commands.<br />
<br />
== Features ==<br />
<br />
* cross-platform (GNU/Linux, *BSD, Solaris, Windows, Mac OS)<br />
* [https://en.wikipedia.org/wiki/UTF-8 UTF-8] support<br />
* user mappings (almost like in vi)<br />
* ranges in command-line commands<br />
* user defined commands (support ranges)<br />
* registers<br />
* operation undoing/redoing<br />
* [https://en.wikipedia.org/wiki/Filesystem_in_Userspace FUSE] file systems support<br />
* trash<br />
* multiple files renaming (also known as "bulk renaming" or [https://en.wikipedia.org/wiki/Batch_renaming "batch renaming"])<br />
* filename modifiers<br />
* Color schemes<br />
* file name color according to generic file type<br />
* path specific colorscheme customization<br />
* bookmarks<br />
* operation backgrounding<br />
* customizable file viewers<br />
* handy [https://en.wikipedia.org/wiki/Less_(Unix) less]-like preview mode with support of colors<br />
* (interactive) filtering out and searching for files using regular expressions<br />
* one or two pane view<br />
* shell-like command line editing<br />
* multicolumn view<br />
* [https://en.wikipedia.org/wiki/Ls ls]-like view<br />
* customizable file name prefixes and suffixes<br />
* built-in integration with [https://en.wikipedia.org/wiki/GNU_Screen GNU Screen] and [https://en.wikipedia.org/wiki/Tmux tmux]<br />
* external editing of command line<br />
<br />
== Color themes ==<br />
There is [https://github.com/vifm/vifm-colors seperate git repository] containing a collection of color themes for vifm.<br />
<br />
If you would like to just have one theme you could download it via wget like this:<br />
<console><br />
$ ##i## wget -P ~/.vifm/colors https://raw.githubusercontent.com/vifm/vifm-colors/master/solarized-dark<br />
</console><br />
<br />
If you prefer to download all themes you could clone the entire repository, and stay up to date.<br />
<br />
<console><br />
$ ##i## rm -rf ~/.vifm/colors<br />
$ ##i## git clone https://github.com/vifm/vifm-colors ~/.vifm/colors<br />
</console><br />
<br />
To check for updates just type<br />
<console><br />
$ ##i## cd ~/.vifm/colors.<br />
$ ##i## git pull<br />
</console><br />
<br />
{{EbuildFooter}}</div>Jubalhhttps://www.funtoo.org/index.php?title=GNOME_First_Steps&diff=9776GNOME First Steps2015-04-30T08:42:38Z<p>Jubalh: Change to epro</p>
<hr />
<div>=== What is GNOME? ===<br />
<br />
"GNOME 3 is an easy and elegant way to use your computer. It is designed to put you in control and bring freedom to everybody. GNOME 3 is developed by the GNOME community, a diverse, international group of contributors that is supported by an independent, non-profit foundation." — [http://gnome.org GNOME]<br />
<br />
=== Prerequisites === <br />
<br />
==== From a Clean Install ====<br />
<br />
Ensure that the [[X Window System]] is installed.<br />
<br />
=== Preparing to emerge ===<br />
<br />
To get your system ready to emerge gnome, first set your system flavor to desktop, and enable the gnome profile mix-in. To accomplish this, do the following:<br />
{{console|recipe=setup,setup-light|desc=Set profile|body=<br />
# ##i##epro flavor desktop<br />
# ##i##epro mix-ins +gnome<br />
}}<br />
<br />
By enabling the gnome mix-in, various USE and other settings will be optimized to provide you with a pain-free GNOME installation experience.<br />
<br />
=== Emerging ===<br />
<br />
You are provided with two packages that will pull in this desktop environment:<br />
<br />
* ''gnome''<br />
<br />
{{fancynote|This is the "whole shabang" - pulls in a range of applications made for the gnome desktop environment including a few games, an archive manager, a system monitor, a web browser, a terminal, etc.}}<br />
<br />
* ''gnome-light''<br />
<br />
{{fancynote|As the name implies, this pulls in the base minimal you need to get a functioning GNOME Desktop Environment.}}<br />
<br />
==== GNOME 3.14 from a clean install ====<br />
<br />
===== gnome =====<br />
<br />
To emerge ''gnome'' run the following command<br />
<br />
{{console|desc=Emerging GNOME|body=<br />
# ##i## emerge gnome<br />
}}<br />
<br />
===== gnome-light =====<br />
<br />
To emerge ''gnome-light'' run the following command<br />
<br />
{{console|recipe=setup-light|desc=Emerging a minimal GNOME environment (alternative)|body=<br />
# ##i## emerge gnome-light<br />
}}<br />
<br />
==== Finalizing Setup ====<br />
<br />
===== OpenGL =====<br />
<br />
GNOME uses OpenGL by default -- so you'll want to make sure that you use {{c|eselect opengl}} to ensure that the proper OpenGL implementation for your video card is selected. If this is not done, GNOME won't start, so it's important to check this. Type {{c|eselect opengl list}} as root to list OpenGL implementations, and {{c|eselect opengl set X}} to set your OpenGL implementation to the proper one.<br />
<br />
===== Setting up xdm (GUI log-in) =====<br />
<br />
====== /etc/motd ======<br />
<br />
Typically, you will want to use <code>gdm</code>, the GNOME display manager, to log in to GNOME. This will allow you to log in graphically, rather than using the text console.<br />
<br />
By default, GNOME displays the {{f|/etc/motd}} file for several seconds after you log in via GDM. The best way to eliminate this delay is to remove the unnecessary {{f|/etc/motd}} -- it contains information related to when your stage3 was built:<br />
<br />
{{console|body=<br />
# ##i##rm /etc/motd<br />
}}<br />
<br />
To enable gdm, edit <code>/etc/conf.d/xdm</code> and set <code>DISPLAYMANAGER</code> to <code>gdm</code> instead of <code>xdm</code>. Then, perform the following steps to add <code>xdm</code> to the default runlevel, and have it start automatically from now on when your system starts:<br />
<br />
{{Note|Funtoo's <code>/etc/init.d/xdm</code> initscript has been modified to start the requisite services <code>dbus</code>, <code>openrc-settingsd</code> and <code>consolekit</code> prior to starting <code>gdm</code>.}}<br />
<br />
{{console|recipe=setup|desc=Enable the GNOME display manager|body=<br />
# ##i## rc-update add xdm default<br />
}}<br />
<br />
Then, if you want to start it now do:<br />
<br />
{{console|body=<br />
# ##i##rc<br />
}}<br />
<br />
When your system restarts, it will start GDM by default.<br />
<br />
===== Setting up xinitrc (text log-in) =====<br />
<br />
Adding the following to your <code>~/.xinitrc</code> file is sufficient:<br />
<br />
<pre><br />
# Fix Missing Applications in Gnome<br />
export XDG_MENU_PREFIX=gnome-<br />
<br />
# Properly Launch the Desired X Session<br />
exec ck-launch-session gnome-session<br />
</pre><br />
<br />
Additionaly, if you need support for different input sources, there is no longer a need to configure IBus or SCIM in your <code>.xinitrc</code> file as GNOME uses IBus natively. Simply configure it in the Control Center under Region & Language.<br />
<br />
==== Upgrading from GNOME 3.12 ====<br />
<br />
To update either ''gnome'' or ''gnome-light'' run the following command:<br />
<br />
{{console|body=<br />
# ##i## emerge -vauDN world<br />
}}<br />
=== Subsystems ===<br />
<br />
==== Bluetooth ====<br />
<br />
For bluetooth support, ensure that:<br />
<br />
# Bluetooth support is enabled in your kernel (using modules is fine).<br />
# Your bluetooth hardware is turned on.<br />
# Add the <code>bluetooth</code> startup script to the default runlevel, and start it.<br />
<br />
This can be done as follows:<br />
<br />
<console><br />
# ##i##rc-update add bluetooth default<br />
# ##i##rc<br />
</console><br />
<br />
Once this is done, you should now be able to navigate to ''Settings'' -> ''Bluetooth'' and turn bluetooth on. The icon next to devices should now animate and you should be able to discover and add devices such as keyboards.<br />
<br />
{{Note|1=<br />
Additional kernel drivers may need to be enabled for certain input devices. For example, for the bluetooth Apple Magic Trackpad, the following option must be enabled in your kernel:<br />
<br />
{{kernelop|title=Device Drivers,HID support,HID bus support,Special HID drivers|desc=<br />
<M> Apple Magic Mouse/Trackpad multi-touch support<br />
}}}}<br />
<br />
==== Printing ====<br />
<br />
To enable printing support, add <code>cupsd</code> to the default runlevel:<br />
<br />
<console><br />
# ##i##rc-update add cupsd default<br />
# ##i##rc<br />
</console><br />
<br />
You should now be able to navigate to ''Settings'' -> ''Printers'' and add printers to your system, and print.<br />
<br />
==== Scanning ====<br />
<br />
To enable scanning support, add your user account to the <code>lp</code> group. This will allow your user to access the USB scanner.<br />
<br />
Then, <code>emerge xsane</code>, and run it. It should be able to access your scanner.<br />
<br />
=== Automatically Starting Applications at Login ===<br />
<br />
When using an old-fashioned <code>.xinitrc</code>, starting up applications when X starts is relatively easy. When using GDM, this can still be accomplished, by using the <code>~/.xprofile</code> file. Here's my sample <code>.xprofile</code> to start <code>xflux</code> to dim the screen at night:<br />
<br />
<pre><br />
xflux -z 87107<br />
</pre><br />
<br />
{{Note|Remember to add a <code>&</code> at the end of any command that doesn't return to the shell prompt after running.}}<br />
<br />
=== games ===<br />
Gnome has several games that can be added on to your install. By default most games are not included in gnome's emerge.<br />
<br />
Users wishing to play games need to be added to the games group:<br />
{{console|body=###i## gpasswd -a $USER games}}<br />
<br />
game list:<br />
;gnome-sudoku <br />
;gnome-mastermind<br />
;gnome-nibbles<br />
;gnome-robots<br />
;gnome-chess<br />
;gnome-hearts<br />
;gnome-mahjongg<br />
;gnome-mines<br />
;gnome-klotski<br />
;gnome-tetravex<br />
<br />
game system emulators:<br />
<br />
;gnomeboyadvance<br />
;gnome-mud<br />
<br />
=== Significant Known Issues (Workarounds Available) ===<br />
<br />
[https://bugs.funtoo.org/browse/FL-1678 FL-1678]: Bluetooth interface gives wrong pairing key<br />
<br />
[https://bugs.funtoo.org/browse/FL-1687 FL-1687]: Wallpaper corruption when resuming from suspend<br />
<br />
[[Category:Desktop]]<br />
[[Category:First Steps]]<br />
[[Category:Official Documentation]]</div>Jubalhhttps://www.funtoo.org/index.php?title=Install/de/Profiles&diff=9751Install/de/Profiles2015-04-27T15:14:31Z<p>Jubalh: From eselect to epro</p>
<hr />
<div><noinclude><br />
{{InstallPart|initial system configuration using Funtoo Linux profiles}}<br />
</noinclude><br />
=== Profile ===<br />
<br />
Sobald du neugestartet hast, kannst du dein System mit Funtoo Profilen weiter auf deine Beduerfnisse anpassen.<br />
<br />
[[Funtoo 1.0 Profile|Funtoo Profile]] werden genutzt um Standardwerte fuer Portage zu setzen die auf deine Beduerfnisse angepasst sind. Es gibt vier Grundarten von Profilen: arch, build, [[Flavors and Mix-ins|flavor, und mix-ins]]:<br />
<br />
;arch: typischerweise <code>x86-32bit</code> oder <code>x86-64bit</code>, definiert den Prozessortyp. Dies wird definiert wernn dein stage gebaut wird, und sollte nicht geaendert werden.<br />
;build: beschreibt ob das System <code>current</code>, <code>stable</code> oder <code>experimental</code> ist. Systeme mit <code>current</code> haben neuere Pakete als <code>stable</code> Systeme.<br />
;flavor: beschreibt die generelle Art des Systems, wie beispielsweise <code>server</code> oder <code>desktop</code>, und setzt Standard USE Flags angepasst auf deine Beduerfnisse.<br />
;mix-ins: definiert verschiedene Einstellungen in denen du moeglicherweise interessiert bist.<br />
<br />
Eine Auswahl von arch, build und flavor muss fuer jedes Funtoo Linux System getroffen werden. Mix-ins sind optional und du kannst mehr als eins setzen falls du das moechtest.<br />
<br />
<br />
Bedenke das Profile immer vererbt werden koennen. Zum Beispiel erbt das <code>desktop</code> flavor die Einstellungen des <code>workstation</code> flavor. Und somit auch die Einstellungen des <code>X</code> und <code>audio</code> mix-ins. epro zeigt dir das auch an:<br />
<br />
{{console|body=<br />
(chroot) # ##i### epro show<br />
<br />
=== ##g##Enabled Profiles##!g##: ===<br />
<br />
arch: ##c##x86-64bit<br />
build: ##c##current<br />
subarch: ##c##intel64-haswell<br />
flavor: ##c##desktop<br />
mix-ins: ##c##gnome<br />
<br />
<br />
=== ##g##All inherited flavors from desktop flavor##!g##: ===<br />
<br />
##c##workstation (from desktop flavor)<br />
##c##core (from workstation flavor)<br />
##c##minimal (from core flavor)<br />
<br />
=== ##g##All inherited mix-ins from desktop flavor##!g##: ===<br />
<br />
##c##X##!c## (from workstation flavor)<br />
##c##audio##!c## (from workstation flavor)<br />
##c##dvd##!c## (from workstation flavor)<br />
##c##media##!c## (from workstation flavor)<br />
##c##mediadevice-audio-consumer##!c## (from media mix-in)<br />
##c##mediadevice-base##!c## (from mediadevice-audio-consumer mix-in)<br />
##c##mediadevice-video-consumer##!c## (from media mix-in)<br />
##c##mediadevice-base##!c## (from mediadevice-video-consumer mix-in)<br />
##c##mediaformat-audio-common##!c## (from media mix-in)<br />
##c##mediaformat-gfx-common##!c## (from media mix-in)<br />
##c##mediaformat-video-common##!c## (from media mix-in)<br />
##c##console-extras##!c## (from workstation flavor)<br />
##c##print##!c## (from desktop flavor)<br />
}}<br />
<br />
Um alle installieren Profile angezeigt zu bekommen:<br />
<console><br />
(chroot) # ##i##epro list<br />
</console><br />
<br />
Aktivierte Profile werden in Cyan angezeigt. Direkt aktivierte Profile sind in fetter Schrift dargestellt und enden mit einem *.<br />
<br />
Um das flavor zu wechseln:<br />
<console><br />
(chroot) # ##i##epro flavor desktop<br />
</console><br />
<br />
Um ein mix-in hinzuzufuegen:<br />
<br />
<console><br />
(chroot) # ##i##epro mix-in +gnome<br />
</console></div>Jubalhhttps://www.funtoo.org/index.php?title=LXQt&diff=9750LXQt2015-04-27T15:07:29Z<p>Jubalh: Correct link</p>
<hr />
<div>== About LXQt ==<br />
<br />
LXQt is a lightweight Desktop environment. Some LXDE developers decided to create a Qt based version of their Desktop environment, it's name was lxde-qt. Around the same time some other people were working on a different minimal Qt based DE called razor-qt. When some developers of those projects met they decided to join forces and work together on one project. LXQt was born.<br />
<br />
=== Qt5 only system ===<br />
LXQt depends only on Qt5, but polkit-qt has automatically set the qt4 USE flag. In case you are sure that you won't install any Qt4 applications which need polkit-qt you can disable Qt4 there resulting in a leaner System. Otherwise emerging LXQt will not just install qtcore-5 but also qtcore-4. In case your goal is to have a minimal, up to date Qt5 based system edit your /etc/portage/package.use file as follows:<br />
{{file|name=/etc/portage/package.use|lang=|desc=add or alter the polkit-qt line|body=<br />
sys-auth/polkit-qt -qt4<br />
}}<br />
<br />
== Installation ==<br />
<br />
You should have set the desktop flavor before trying to install LXQt, furthermore we recommend setting the LXQt mix-in. These settings will take care of the USE flags that you otherwise have to set by hand.<br />
<br />
Just run epro without any arguments to see your current settings.<br />
{{console|body=<br />
###i## epro<br />
<br />
=== Enabled Profiles: ===<br />
<br />
arch: x86-64bit<br />
build: current<br />
subarch: generic_64<br />
flavor: core<br />
mix-ins: (not set)<br />
<br />
}}<br />
<br />
In case you have a output like this. Change it using:<br />
<br />
{{console|body=<br />
###i## epro flavor desktop<br />
###i## epro mix-in +lxqt<br />
<br />
=== Enabled Profiles: ===<br />
<br />
arch: x86-64bit<br />
build: current<br />
subarch: generic_64<br />
flavor: desktop<br />
mix-ins: lxqt<br />
<br />
>>> Added lxqt mix-in.<br />
<br />
}}<br />
<br />
Since lxqt-meta depends on policykit we have to add policykit to consolekit:<br />
{{console|body=<br />
###i## echo "sys-auth/consolekit policykit" >> /etc/portage/package.use<br />
}}<br />
<br />
Now we are ready to install LXQt.<br />
<br />
{{console|body=<br />
###i## emerge lxqt-meta<br />
}}<br />
<br />
== Starting LXQt ==<br />
<br />
You can either use a display manager to log into your system and start LXQt, or you can log in on a TTY and run {{c|startx}} to start xinit by hand.<br />
<br />
=== xinit ===<br />
<br />
You should edit the file {{c|~/.xinitrc}} if it already exists, and put {{c|"exec startlxqt"}} in there.<br />
If it doesn't exist you can create it like this:<br />
<br />
{{console|body=$##i## echo "exec startlxqt" > ~/.xinitrc}}<br />
<br />
You might want to add the commands and options {{c|ck-launch-session dbus-launch --sh-syntax --exit-with-session}} to the {{c|exec}} to start it with ConsoleKit and DBus.<br />
In this case you also need to add ConsoleKit to the default runlevel:<br />
<br />
{{console|body=<br />
###i## rc-update add consolekit default<br />
###i## rc<br />
}}<br />
<br />
<br />
<br />
=== Login Manager ===<br />
<br />
Please take a look at [[Package:XDM_(Display_Manager)|XDM Display Managers]] for this.</div>Jubalhhttps://www.funtoo.org/index.php?title=LXQt&diff=9749LXQt2015-04-27T15:03:19Z<p>Jubalh: Use epro instead of eselect and make instructions more verbose</p>
<hr />
<div>== About LXQt ==<br />
<br />
LXQt is a lightweight Desktop environment. Some LXDE developers decided to create a Qt based version of their Desktop environment, it's name was lxde-qt. Around the same time some other people were working on a different minimal Qt based DE called razor-qt. When some developers of those projects met they decided to join forces and work together on one project. LXQt was born.<br />
<br />
=== Qt5 only system ===<br />
LXQt depends only on Qt5, but polkit-qt has automatically set the qt4 USE flag. In case you are sure that you won't install any Qt4 applications which need polkit-qt you can disable Qt4 there resulting in a leaner System. Otherwise emerging LXQt will not just install qtcore-5 but also qtcore-4. In case your goal is to have a minimal, up to date Qt5 based system edit your /etc/portage/package.use file as follows:<br />
{{file|name=/etc/portage/package.use|lang=|desc=add or alter the polkit-qt line|body=<br />
sys-auth/polkit-qt -qt4<br />
}}<br />
<br />
== Installation ==<br />
<br />
You should have set the desktop flavor before trying to install LXQt, furthermore we recommend setting the LXQt mix-in. These settings will take care of the USE flags that you otherwise have to set by hand.<br />
<br />
Just run epro without any arguments to see your current settings.<br />
{{console|body=<br />
###i## epro<br />
<br />
=== Enabled Profiles: ===<br />
<br />
arch: x86-64bit<br />
build: current<br />
subarch: generic_64<br />
flavor: core<br />
mix-ins: (not set)<br />
<br />
}}<br />
<br />
In case you have a output like this. Change it using:<br />
<br />
{{console|body=<br />
###i## epro flavor desktop<br />
###i## epro mix-in +lxqt<br />
<br />
=== Enabled Profiles: ===<br />
<br />
arch: x86-64bit<br />
build: current<br />
subarch: generic_64<br />
flavor: desktop<br />
mix-ins: lxqt<br />
<br />
>>> Added lxqt mix-in.<br />
<br />
}}<br />
<br />
Since lxqt-meta depends on policykit we have to add policykit to consolekit:<br />
{{console|body=<br />
###i## echo "sys-auth/consolekit policykit" >> /etc/portage/package.use<br />
}}<br />
<br />
Now we are ready to install LXQt.<br />
<br />
{{console|body=<br />
###i## emerge lxqt-meta<br />
}}<br />
<br />
== Starting LXQt ==<br />
<br />
You can either use a display manager to log into your system and start LXQt, or you can log in on a TTY and run {{c|startx}} to start xinit by hand.<br />
<br />
=== xinit ===<br />
<br />
You should edit the file {{c|~/.xinitrc}} if it already exists, and put {{c|"exec startlxqt"}} in there.<br />
If it doesn't exist you can create it like this:<br />
<br />
{{console|body=$##i## echo "exec startlxqt" > ~/.xinitrc}}<br />
<br />
You might want to add the commands and options {{c|ck-launch-session dbus-launch --sh-syntax --exit-with-session}} to the {{c|exec}} to start it with ConsoleKit and DBus.<br />
In this case you also need to add ConsoleKit to the default runlevel:<br />
<br />
{{console|body=<br />
###i## rc-update add consolekit default<br />
###i## rc<br />
}}<br />
<br />
<br />
<br />
=== Login Manager ===<br />
<br />
Please take a look at http://www.funtoo.org/Package:XDM_%28Display_Manager%29 for this.</div>Jubalhhttps://www.funtoo.org/index.php?title=LXQt&diff=9748LXQt2015-04-27T14:54:10Z<p>Jubalh: </p>
<hr />
<div>== About LXQt ==<br />
<br />
LXQt is a lightweight Desktop environment. Some LXDE developers decided to create a Qt based version of their Desktop environment, it's name was lxde-qt. Around the same time some other people were working on a different minimal Qt based DE called razor-qt. When some developers of those projects met they decided to join forces and work together on one project. LXQt was born.<br />
<br />
== Installation ==<br />
<br />
It is recommended to set the LXQt mix-in before emerging it.<br />
<br />
=== Qt5 only system ===<br />
LXQt depends only on Qt5, but polkit-qt has automatically set the qt4 USE flag. In case you are sure that you won't install any Qt4 applications which need polkit-qt you can disable Qt4 there resulting in a leaner System. Otherwise emerging LXQt will not just install qtcore-5 but also qtcore-4. In case your goal is to have a minimal, up to date Qt5 based system edit your /etc/portage/package.use file as follows:<br />
{{file|name=/etc/portage/package.use|lang=|desc=add or alter the polkit-qt line|body=<br />
sys-auth/polkit-qt -qt4<br />
}}<br />
<br />
{{console|body=<br />
###i## eselect profile add funtoo/1.0/linux-gnu/mix-ins/lxqt<br />
###i## emerge lxqt-meta<br />
}}<br />
<br />
== Starting LXQt ==<br />
<br />
You can either use a display manager to log into your system and start LXQt, or you can log in on a TTY and run {{c|startx}} to start xinit by hand.<br />
<br />
=== xinit ===<br />
<br />
You should edit the file {{c|~/.xinitrc}} if it already exists, and put {{c|"exec startlxqt"}} in there.<br />
If it doesn't exist you can create it like this:<br />
<br />
{{console|body=$##i## echo "exec startlxqt" > ~/.xinitrc}}<br />
<br />
You might want to add the commands and options {{c|ck-launch-session dbus-launch --sh-syntax --exit-with-session}} to the {{c|exec}} to start it with ConsoleKit and DBus.<br />
In this case you also need to add ConsoleKit to the default runlevel:<br />
<br />
{{console|body=<br />
###i## rc-update add consolekit default<br />
###i## rc<br />
}}<br />
<br />
<br />
<br />
=== Login Manager ===<br />
<br />
Please take a look at http://www.funtoo.org/Package:XDM_%28Display_Manager%29 for this.</div>Jubalhhttps://www.funtoo.org/index.php?title=LXQt&diff=9747LXQt2015-04-27T14:48:08Z<p>Jubalh: Qt5 only</p>
<hr />
<div>== About LXQt ==<br />
<br />
LXQt is a lightweight Desktop environment. Some LXDE developers decided to create a Qt based version of their Desktop environment, it's name was lxde-qt. Around the same time some other people were working on a different minimal Qt based DE called razor-qt. When some developers of those projects met they decided to join forces and work together on one project. LXQt was born.<br />
<br />
== Installation ==<br />
<br />
It is recommended to set the LXQt mix-in before emerging it.<br />
<br />
=== Qt5 only system ===<br />
LXQt depends only on Qt5, but polkit-qt has automatically set the qt4 USE flag. In case you are sure that you won't install any Qt4 applications which need polkit-qt you can disable Qt4 there resulting in a leaner System. Otherwise emerging LXQt will not just install qtgui-5 but also qtgui-4. In case your goal is to have a minimal, up to date Qt5 based system edit your /etc/portage/package.use file as follows:<br />
{{file|name=/etc/portage/package.use|lang=|desc=add or alter the polkit-qt line|body=<br />
polkit-qt -qt4<br />
}}<br />
<br />
{{console|body=<br />
###i## eselect profile add funtoo/1.0/linux-gnu/mix-ins/lxqt<br />
###i## emerge lxqt-meta<br />
}}<br />
<br />
== Starting LXQt ==<br />
<br />
You can either use a display manager to log into your system and start LXQt, or you can log in on a TTY and run {{c|startx}} to start xinit by hand.<br />
<br />
=== xinit ===<br />
<br />
You should edit the file {{c|~/.xinitrc}} if it already exists, and put {{c|"exec startlxqt"}} in there.<br />
If it doesn't exist you can create it like this:<br />
<br />
{{console|body=$##i## echo "exec startlxqt" > ~/.xinitrc}}<br />
<br />
You might want to add the commands and options {{c|ck-launch-session dbus-launch --sh-syntax --exit-with-session}} to the {{c|exec}} to start it with ConsoleKit and DBus.<br />
In this case you also need to add ConsoleKit to the default runlevel:<br />
<br />
{{console|body=<br />
###i## rc-update add consolekit default<br />
###i## rc<br />
}}<br />
<br />
<br />
<br />
=== Login Manager ===<br />
<br />
Please take a look at http://www.funtoo.org/Package:XDM_%28Display_Manager%29 for this.</div>Jubalhhttps://www.funtoo.org/index.php?title=LXQt&diff=8962LXQt2015-02-07T10:25:38Z<p>Jubalh: </p>
<hr />
<div>== About LXQt ==<br />
<br />
LXQt is a lightweight Desktop environment. Some LXDE developers decided to create a Qt based version of their Desktop environment, it's name was lxde-qt. Around the same time some other people were working on a different minimal Qt based DE called razor-qt. When some developers of those projects met they decided to join forces and work together on one project. LXQt was born.<br />
<br />
== Installation ==<br />
<br />
It is recommended to set the LXQt mix-in before emerging it.<br />
<br />
{{console|body=<br />
###i## eselect profile add funtoo/1.0/linux-gnu/mix-ins/lxqt<br />
###i## emerge lxqt-meta<br />
}}<br />
<br />
== Starting LXQt ==<br />
<br />
You can either use a display manager to log into your system and start LXQt, or you can log in on a TTY and run {{c|startx}} to start xinit by hand.<br />
<br />
=== xinit ===<br />
<br />
You should edit the file {{c|~/.xinitrc}} if it already exists, and put {{c|"exec startlxqt"}} in there.<br />
If it doesn't exist you can create it like this:<br />
<br />
{{console|body=$##i## echo "exec startlxqt" > ~/.xinitrc}}<br />
<br />
You might want to add the commands and options {{c|ck-launch-session dbus-launch --sh-syntax --exit-with-session}} to the {{c|exec}} to start it with ConsoleKit and DBus.<br />
In this case you also need to add ConsoleKit to the default runlevel:<br />
<br />
{{console|body=<br />
###i## rc-update add consolekit default<br />
###i## rc<br />
}}<br />
<br />
<br />
<br />
=== Login Manager ===<br />
<br />
Please take a look at http://www.funtoo.org/Package:XDM_%28Display_Manager%29 for this.</div>Jubalhhttps://www.funtoo.org/index.php?title=LXQt&diff=8961LXQt2015-02-07T10:25:17Z<p>Jubalh: fix</p>
<hr />
<div>== About LXQt ==<br />
<br />
LXQt is a lightweight Desktop environment. Some LXDE developers decided to create a Qt based version of their Desktop environment, it's name was lxde-qt. Around the same time some other people were working on a different minimal Qt based DE called razor-qt. When some developers of those projects met they decided to join forces and work together on one project. LXQt was born.<br />
<br />
== Installation ==<br />
<br />
It is recommended to set the LXQt mix-in before emerging it.<br />
<br />
{{console|body=<br />
###i## eselect profile add funtoo/1.0/linux-gnu/mix-ins/lxqt<br />
###i## emerge lxqt-meta<br />
}}<br />
<br />
== Starting LXQt ==<br />
<br />
You can either use a display manager to log into your system and start LXQt, or you can log in on a TTY and run {{c|startx}} to start xinit by hand.<br />
<br />
=== xinit ===<br />
<br />
You should edit the file {{c|~/.xinitrc}} if it already exists, and put {{c|"exec startlxqt"}} in there.<br />
If it doesn't exist you can create it like this:<br />
<br />
{{console|body=$##i## echo "exec startlxqt" > ~/.xinitrc}}<br />
<br />
You might want to add the commands and options {{c|ck-launch-session dbus-launch --sh-syntax --exit-with-session}} to the {{c|exec]}} to start it with ConsoleKit and DBus.<br />
In this case you also need to add ConsoleKit to the default runlevel:<br />
<br />
{{console|body=<br />
###i## rc-update add consolekit default<br />
###i## rc<br />
}}<br />
<br />
<br />
<br />
=== Login Manager ===<br />
<br />
Please take a look at http://www.funtoo.org/Package:XDM_%28Display_Manager%29 for this.</div>Jubalhhttps://www.funtoo.org/index.php?title=LXQt&diff=8960LXQt2015-02-07T10:24:44Z<p>Jubalh: expand information</p>
<hr />
<div>== About LXQt ==<br />
<br />
LXQt is a lightweight Desktop environment. Some LXDE developers decided to create a Qt based version of their Desktop environment, it's name was lxde-qt. Around the same time some other people were working on a different minimal Qt based DE called razor-qt. When some developers of those projects met they decided to join forces and work together on one project. LXQt was born.<br />
<br />
== Installation ==<br />
<br />
It is recommended to set the LXQt mix-in before emerging it.<br />
<br />
{{console|body=<br />
###i## eselect profile add funtoo/1.0/linux-gnu/mix-ins/lxqt<br />
###i## emerge lxqt-meta<br />
}}<br />
<br />
== Starting LXQt ===<br />
<br />
You can either use a display manager to log into your system and start LXQt, or you can log in on a TTY and run {{c|startx}} to start xinit by hand.<br />
<br />
=== xinit ===<br />
<br />
You should edit the file {{c|~/.xinitrc}} if it already exists, and put {{c|"exec startlxqt"}} in there.<br />
If it doesn't exist you can create it like this:<br />
<br />
{{console|body=$##i## echo "exec startlxqt" > ~/.xinitrc}}<br />
<br />
You might want to add the commands and options {{c|ck-launch-session dbus-launch --sh-syntax --exit-with-session}} to the {{c|exec]}} to start it with ConsoleKit and DBus.<br />
In this case you also need to add ConsoleKit to the default runlevel:<br />
<br />
{{console|body=<br />
###i## rc-update add consolekit default<br />
###i## rc<br />
}}<br />
<br />
<br />
<br />
=== Login Manager ===<br />
<br />
Please take a look at http://www.funtoo.org/Package:XDM_%28Display_Manager%29 for this.</div>Jubalhhttps://www.funtoo.org/index.php?title=LXQt&diff=8922LXQt2015-02-03T20:43:53Z<p>Jubalh: update</p>
<hr />
<div>== About LXQt ==<br />
<br />
LXQt is a lightweight Desktop environment. Some LXDE developers decided to create a Qt based version of their Desktop environment, it's name was lxde-qt. Around the same time some other people were working on a different minimal Qt based DE called razor-qt. When some developers of those projects met they decided to join forces and work together on one project. LXQt was born.<br />
<br />
== Installation ==<br />
<br />
It is recommended to set the LXQt mix-in before emerging it.<br />
<br />
{{console|body=<br />
###i## eselect profile add funtoo/1.0/linux-gnu/mix-ins/lxqt<br />
###i## emerge lxqt-meta<br />
}}</div>Jubalhhttps://www.funtoo.org/index.php?title=LXQt&diff=8921LXQt2015-02-03T20:43:01Z<p>Jubalh: started entry</p>
<hr />
<div>== About LXQt ==<br />
<br />
LXQt is a lightweight Desktop environment. Some LXDE developers decided to create a Qt based version of their Desktop environment, it's name was lxde-qt. Around the same time some other people were working on a different minimal Qt based DE called razor-qt. When some developers of those projects met they decided to join forces and work together on one project. LXQt was born.<br />
<br />
== Instalation ==<br />
<br />
{{console|body=<br />
###i## eselect profile add funtoo/1.0/linux-gnu/mix-ins/lxqt<br />
###i## emerge lxqt-meta<br />
}}</div>Jubalhhttps://www.funtoo.org/index.php?title=Install/de/Stage3&diff=8872Install/de/Stage32015-01-30T20:46:19Z<p>Jubalh: completed</p>
<hr />
<div><noinclude><br />
{{InstallPart|the process of installing the Stage3 tarball}}<br />
</noinclude><br />
==== Setzen des Datums ====<br />
<br />
{{fancyimportant|Falls das Datum oder die Zeit falsch sein sollte kann das dazu fuehren das Portage die Quelldateien nicht richtig herunterladen kann. Das liegt daran das einige Quelldatien ueber HTTPS heruntergeladen werden, welches SSL Zertifikate verwendent. Und diese werden mit einem Ablaufdatum versehen. Wenn das Datum aber nah genug am tatsaechlichen Datum ist kann dieser Schritt trotzdem funktionieren.}}<br />
<br />
Jetzt ist es an der Zeit zu ueberpruefen ob das Datum richtigerweise auf UTC gesetzt ist. Man benutzt den <code>date</code> Befehl um das zu zu tun.<br />
<br />
<console><br />
# ##i##date<br />
Fri Jul 15 19:47:18 UTC 2011<br />
</console><br />
<br />
Falls das Datum korrigiert werden muss kann dies auf folgende Weise getan werden <code>date MMDDhhmmYYYY</code>.<br />
Das untere Beispiel setzt das Datum auf den 16. Juli 2001 20:00 Uhr UTC:<br />
<br />
<console><br />
# ##i##date 071620002011<br />
Fri Jul 16 20:00:00 UTC 2011<br />
</console><br />
<br />
Nachdem die Systemuhr gesetzt ist sollte man diese Zeit auf die Hardware-Uhr kopieren, damit die Zeit nach dem naechsten neustart bestehen bleibt:<br />
<br />
<console><br />
# ##i##hwclock --systohc<br />
</console><br />
<br />
=== Installation des stage 3 Tarballs ===<br />
<br />
Nachdem die Dateisysteme erstellt wurden und die Uhrzeit gesetzt ist, ist der naechste Schritt das herunterladen des Stage 3 Archivs.<br />
Dabei handelt es sich um eine vorkompilierstes System das als Startpunkt fuer Funtoo Linux benutzt wird.<br />
<br />
Um die richtige build Version zu installieren gehe zu [[Subarches}}. Subarches sind Builds von Funtoo Linux die auf eine bestimme CPU angepasst wurden um maximale Performance zu erzielen. Es koennen somit die optimalen Befehlssaetze der CPU genutzt werden.<br />
<br />
Die [[Subarches]] Seite listet alle optimierten Versionen von Funtoo Linux. Suche die auf deine CPU passende heraus, und klicke auf ihren Namen in der ersten Spalte (Beispiel: <code>corei</code> ). Von dieser Seite kann nun das Stage 3 Archiv heruntergeladen werden.<br />
<br />
Fuer die meisten Subarches gibt es mehre verfuegbare Stage 3 Archive zur Auswahl. Der naechste Abschnitt wird dir erklaeren wie du die passende auswaehlst.<br />
<br />
==== Welche Build Version? ====<br />
<br />
'''Falls du nicht sicher bist nimm <code>funtoo-current</code>.'''<br />
<br />
Funtoo Linux hat verschiedene 'builds':<br />
<br />
{{TableStart}}<br />
<tr><th class="info">Build</th><th class="info">Description</th></tr><br />
<tr><td><code>funtoo-current</code></td><td>Der meistgewaehlte build fuer Funtoo Linux. Wird hauefig aktualisiert und von Desktop Benutzern bevorzugt.</td></tr><br />
<tr><td><code>funtoo-stable</code></td><td>Hat weniger haeufige Aktualisierungen und setzt auf vertrauenswuerdige und stabile Versionen eines Pakets.</td></tr><br />
{{TableEnd}}<br />
<br />
==== Welche Variante? ====<br />
<br />
'''Falls du nicht sicher bist nimm <code>(None)</code>.'''<br />
<br />
Besides our "regular" stage3's listed with a variant of <code>(None)</code>, the following variant builds are available:<br />
<br />
{{TableStart}}<br />
<tr><th class="info">Variant</th><th class="info">Description</th></tr><br />
<tr><td>(None)</td><td>Die Standardversion von Funtoo Linux</td></tr><br />
<tr><td><code>pure64</code></td><td>Ein 64-bit Build welcher auf multilib (32-bit kompatibilitaet) verzichtet. Ideal fuer Server Systeme.</td></tr><br />
<tr><td><code>hardened</code></td><td>Enthaelt PIE/SSP fuer verbesserte Sicherheit. PIE benoetigt einen Kernel mit PaX wohingegen SSP mit jedem Kernel funktioniert. Somit erhaelt man verbesserte Sichereit im User-Space um stack basierte Exploits zu vermeiden.</td></tr><br />
{{TableEnd}}<br />
<br />
==== Download des Stage3 Archivs ====<br />
<br />
Wenn du das passende Stage 3 Archiv gefunden hast, benutze <code>wget</code> um es herunterzuladen. Es sollte unter <code>/mnt/funtoo</code> gespeichert werden. Hier der passende Befehl:<br />
<br />
<console># ##i##cd /mnt/funtoo<br />
# ##i##wget http://build.funtoo.org/funtoo-current/x86-64bit/generic_64/stage3-latest.tar.xz<br />
</console><br />
<br />
Bedenke das 64-bit Systeme 32 und 64-bit Stages ausfuehren konnen. Wohingegen 32-bit Systeme nur 32-bit stages ausfuehren koennen. Man sollte sicher gehen ein passendes Stage 3 Archiv ausgewaehlt zu haben. Falls man nicht sicher ist, sollte man <code>generic_64</code> oder <code>generic_32</code> nehmen. Schau dir nochmal die [[Subarches]] Seite fuer weitere Informationen an.<br />
<br />
Nachdem das Stage heruntergeladen ist, expacke es mit dem folgenden Befehl, wobei du den Namen des Archivs auf die von dir heruntergeladene Version anpassen musst:<br />
<br />
<console><br />
# ##i##tar xpf stage3-latest.tar.xz<br />
</console><br />
<br />
{{important|Es ist sehr wichtig <code>tar</code> mit der Option "<code>'''p'''</code>" zu benutzen. Somit wird <code>tar</code> alle Rechte (Englisch: permissions) die im Archiv vorhanden sind beibehalten. Ohne diese Option werden die Rechte deines Funtoo Linux Systems nicht richtig sein.}}</div>Jubalhhttps://www.funtoo.org/index.php?title=Install/de/Stage3&diff=8871Install/de/Stage32015-01-30T20:35:04Z<p>Jubalh: fix code</p>
<hr />
<div><noinclude><br />
{{InstallPart|the process of installing the Stage3 tarball}}<br />
</noinclude><br />
==== Setzen des Datums ====<br />
<br />
{{fancyimportant|Falls das Datum oder die Zeit falsch sein sollte kann das dazu fuehren das Portage die Quelldateien nicht richtig herunterladen kann. Das liegt daran das einige Quelldatien ueber HTTPS heruntergeladen werden, welches SSL Zertifikate verwendent. Und diese werden mit einem Ablaufdatum versehen. Wenn das Datum aber nah genug am tatsaechlichen Datum ist kann dieser Schritt trotzdem funktionieren.}}<br />
<br />
Jetzt ist es an der Zeit zu ueberpruefen ob das Datum richtigerweise auf UTC gesetzt ist. Man benutzt den <code>date</code> Befehl um das zu zu tun.<br />
<br />
<console><br />
# ##i##date<br />
Fri Jul 15 19:47:18 UTC 2011<br />
</console><br />
<br />
Falls das Datum korrigiert werden muss kann dies auf folgende Weise getan werden <code>date MMDDhhmmYYYY</code>.<br />
Das untere Beispiel setzt das Datum auf den 16. Juli 2001 20:00 Uhr UTC:<br />
<br />
<console><br />
# ##i##date 071620002011<br />
Fri Jul 16 20:00:00 UTC 2011<br />
</console><br />
<br />
Nachdem die Systemuhr gesetzt ist sollte man diese Zeit auf die Hardware-Uhr kopieren, damit die Zeit nach dem naechsten neustart bestehen bleibt:<br />
<br />
<console><br />
# ##i##hwclock --systohc<br />
</console><br />
<br />
=== Installation des stage 3 Tarballs ===<br />
<br />
Nachdem die Dateisysteme erstellt wurden und die Uhrzeit gesetzt ist, ist der naechste Schritt das herunterladen des Stage 3 Archivs.<br />
Dabei handelt es sich um eine vorkompilierstes System das als Startpunkt fuer Funtoo Linux benutzt wird.<br />
<br />
Um die richtige build Version zu installieren gehe zu [[Subarches}}. Subarches sind Builds von Funtoo Linux die auf eine bestimme CPU angepasst wurden um maximale Performance zu erzielen. Es koennen somit die optimalen Befehlssaetze der CPU genutzt werden.<br />
<br />
Die [[Subarches]] Seite listet alle optimierten Versionen von Funtoo Linux. Suche die auf deine CPU passende heraus, und klicke auf ihren Namen in der ersten Spalte (Beispiel: <code>corei</code> ). Von dieser Seite kann nun das Stage 3 Archiv heruntergeladen werden.<br />
<br />
Fuer die meisten Subarches gibt es mehre verfuegbare Stage 3 Archive zur Auswahl. Der naechste Abschnitt wird dir erklaeren wie du die passende auswaehlst.<br />
<br />
==== Welche Build Version? ====<br />
<br />
'''Falls du nicht sicher bist nimm <code>funtoo-current</code>.'''<br />
<br />
Funtoo Linux hat verschiedene 'builds':<br />
<br />
{{TableStart}}<br />
<tr><th class="info">Build</th><th class="info">Description</th></tr><br />
<tr><td><code>funtoo-current</code></td><td>Der meistgewaehlte build fuer Funtoo Linux. Wird hauefig aktualisiert und von Desktop Benutzern bevorzugt.</td></tr><br />
<tr><td><code>funtoo-stable</code></td><td>Hat weniger haeufige Aktualisierungen und setzt auf vertrauenswuerdige und stabile Versionen eines Pakets.</td></tr><br />
{{TableEnd}}<br />
<br />
==== Welche Variante? ====<br />
<br />
'''Falls du nicht sicher bist nimm <code>(None)</code>.'''<br />
<br />
Besides our "regular" stage3's listed with a variant of <code>(None)</code>, the following variant builds are available:<br />
<br />
{{TableStart}}<br />
<tr><th class="info">Variant</th><th class="info">Description</th></tr><br />
<tr><td>(None)</td><td>The "standard" version of Funtoo Linux</td></tr><br />
<tr><td><code>pure64</code></td><td>A 64-bit build that drops multilib (32-bit compatibility) support. Can be ideal for server systems.</td></tr><br />
<tr><td><code>hardened</code></td><td>Includes PIE/SSP toolchain for enhanced security. PIE does require the use of PaX in the kernel, while SSP works with any kernel, and provides enhanced security in user-space to avoid stack-based exploits.</td></tr><br />
{{TableEnd}}<br />
<br />
==== Download des Stage3 Archivs ====<br />
<br />
Once you have found the stage3 that you would like to download, use <code>wget</code> to download the Stage 3 tarball you have chosen to use as the basis for your new Funtoo Linux system. It should be saved to the <code>/mnt/funtoo</code> directory as follows:<br />
<br />
<console># ##i##cd /mnt/funtoo<br />
# ##i##wget http://build.funtoo.org/funtoo-current/x86-64bit/generic_64/stage3-latest.tar.xz<br />
</console><br />
<br />
Note that 64-bit systems can run 32-bit or 64-bit stages, but 32-bit systems can only run 32-bit stages. Make sure that you select a Stage 3 build that is appropriate for your CPU. If you are not certain, it is a safe bet to choose the <code>generic_64</code> or <code>generic_32</code> stage. Consult the [[Subarches]] page for more information.<br />
<br />
Once the stage is downloaded, extract the contents with the following command, substituting in the actual name of your stage 3 tarball:<br />
<console><br />
# ##i##tar xpf stage3-latest.tar.xz<br />
</console><br />
<br />
{{important|It is very important to use <code>tar's</code> "<code>'''p'''</code>" option when extracting the Stage 3 tarball - it tells <code>tar</code> to ''preserve'' any permissions and ownership that exist within the archive. Without this option, your Funtoo Linux filesystem permissions will be incorrect.}}</div>Jubalhhttps://www.funtoo.org/index.php?title=Install/de/Stage3&diff=8870Install/de/Stage32015-01-30T20:33:52Z<p>Jubalh: started</p>
<hr />
<div><noinclude><br />
{{InstallPart|the process of installing the Stage3 tarball}}<br />
</noinclude><br />
==== Setzen des Datums ====<br />
<br />
{{fancyimportant|Falls das Datum oder die Zeit falsch sein sollte kann das dazu fuehren das Portage die Quelldateien nicht richtig herunterladen kann. Das liegt daran das einige Quelldatien ueber HTTPS heruntergeladen werden, welches SSL Zertifikate verwendent. Und diese werden mit einem Ablaufdatum versehen. Wenn das Datum aber nah genug am tatsaechlichen Datum ist kann dieser Schritt trotzdem funktionieren.}}<br />
<br />
Jetzt ist es an der Zeit zu ueberpruefen ob das Datum richtigerweise auf UTC gesetzt ist. Man benutzt den <code>date</code> Befehl um das zu zu tun.<br />
<br />
<console><br />
# ##i##date<br />
Fri Jul 15 19:47:18 UTC 2011<br />
</console><br />
<br />
Falls das Datum korrigiert werden muss kann dies auf folgende Weise getan werden <code>date MMDDhhmmYYYY</code>.<br />
Das untere Beispiel setzt das Datum auf den 16. Juli 2001 20:00 Uhr UTC:<br />
<br />
<console><br />
# ##i##date 071620002011<br />
Fri Jul 16 20:00:00 UTC 2011<br />
</console><br />
<br />
Nachdem die Systemuhr gesetzt ist sollte man diese Zeit auf die Hardware-Uhr kopieren, damit die Zeit nach dem naechsten neustart bestehen bleibt:<br />
<br />
<console><br />
# ##i##hwclock --systohc<br />
</console><br />
<br />
=== Installation des stage 3 Tarballs ===<br />
<br />
Nachdem die Dateisysteme erstellt wurden und die Uhrzeit gesetzt ist, ist der naechste Schritt das herunterladen des Stage 3 Archivs.<br />
Dabei handelt es sich um eine vorkompilierstes System das als Startpunkt fuer Funtoo Linux benutzt wird.<br />
<br />
Um die richtige build Version zu installieren gehe zu [[Subarches}}. Subarches sind Builds von Funtoo Linux die auf eine bestimme CPU angepasst wurden um maximale Performance zu erzielen. Es koennen somit die optimalen Befehlssaetze der CPU genutzt werden.<br />
<br />
Die [[Subarches]] Seite listet alle optimierten Versionen von Funtoo Linux. Suche die auf deine CPU passende heraus, und klicke auf ihren Namen in der ersten Spalte (Beispiel: <code>corei<\code> ). Von dieser Seite kann nun das Stage 3 Archiv heruntergeladen werden.<br />
<br />
Fuer die meisten Subarches gibt es mehre verfuegbare Stage 3 Archive zur Auswahl. Der naechste Abschnitt wird dir erklaeren wie du die passende auswaehlst.<br />
<br />
==== Welche Build Version? ====<br />
<br />
'''Falls du nicht sicher bist nimm <code>funtoo-current</code>.'''<br />
<br />
Funtoo Linux hat verschiedene 'builds':<br />
<br />
{{TableStart}}<br />
<tr><th class="info">Build</th><th class="info">Description</th></tr><br />
<tr><td><code>funtoo-current</code></td><td>Der meistgewaehlte build fuer Funtoo Linux. Wird hauefig aktualisiert und von Desktop Benutzern bevorzugt.</td></tr><br />
<tr><td><code>funtoo-stable</code></td><td>Hat weniger haeufige Aktualisierungen und setzt auf vertrauenswuerdige und stabile Versionen eines Pakets.</td></tr><br />
{{TableEnd}}<br />
<br />
==== Welche Variante? ====<br />
<br />
'''Falls du nicht sicher bist nimm <code>(None)</code>.'''<br />
<br />
Besides our "regular" stage3's listed with a variant of <code>(None)</code>, the following variant builds are available:<br />
<br />
{{TableStart}}<br />
<tr><th class="info">Variant</th><th class="info">Description</th></tr><br />
<tr><td>(None)</td><td>The "standard" version of Funtoo Linux</td></tr><br />
<tr><td><code>pure64</code></td><td>A 64-bit build that drops multilib (32-bit compatibility) support. Can be ideal for server systems.</td></tr><br />
<tr><td><code>hardened</code></td><td>Includes PIE/SSP toolchain for enhanced security. PIE does require the use of PaX in the kernel, while SSP works with any kernel, and provides enhanced security in user-space to avoid stack-based exploits.</td></tr><br />
{{TableEnd}}<br />
<br />
==== Download des Stage3 Archivs ====<br />
<br />
Once you have found the stage3 that you would like to download, use <code>wget</code> to download the Stage 3 tarball you have chosen to use as the basis for your new Funtoo Linux system. It should be saved to the <code>/mnt/funtoo</code> directory as follows:<br />
<br />
<console># ##i##cd /mnt/funtoo<br />
# ##i##wget http://build.funtoo.org/funtoo-current/x86-64bit/generic_64/stage3-latest.tar.xz<br />
</console><br />
<br />
Note that 64-bit systems can run 32-bit or 64-bit stages, but 32-bit systems can only run 32-bit stages. Make sure that you select a Stage 3 build that is appropriate for your CPU. If you are not certain, it is a safe bet to choose the <code>generic_64</code> or <code>generic_32</code> stage. Consult the [[Subarches]] page for more information.<br />
<br />
Once the stage is downloaded, extract the contents with the following command, substituting in the actual name of your stage 3 tarball:<br />
<console><br />
# ##i##tar xpf stage3-latest.tar.xz<br />
</console><br />
<br />
{{important|It is very important to use <code>tar's</code> "<code>'''p'''</code>" option when extracting the Stage 3 tarball - it tells <code>tar</code> to ''preserve'' any permissions and ownership that exist within the archive. Without this option, your Funtoo Linux filesystem permissions will be incorrect.}}</div>Jubalhhttps://www.funtoo.org/index.php?title=Package:Tengine&diff=8860Package:Tengine2015-01-30T08:36:09Z<p>Jubalh: </p>
<hr />
<div>{{Ebuild<br />
|Summary=Robust, small and high performance http and reverse proxy server<br />
|CatPkg=www-servers/tengine<br />
|Maintainer=<br />
|Homepage=http://tengine.taobao.org<br />
}}<br />
Tengine is an nginx fork. It supports DSO module loading, meaning it can have external modules without the need to compile them in.<br />
<br />
==Installation==<br />
{{console|body=###i## emerge tengine}}<br />
<br />
==Configuration==<br />
Files for configuration are located at {{c|/etc/tengine}}<br />
<br />
The major differing point in tengine from nginx is that you have to specifically declare which modules are loaded. Available modules are located at {{c|/var/lib/tengine/modules}}.<br />
<br />
{{file|name=/etc/tengine/tengine.conf|desc=DSO module statements|body=<br />
...<br />
dso {<br />
load ngx_http_charset_filter_module.so;<br />
load ngx_http_fastcgi_module.so;<br />
load ngx_http_rewrite_module.so;<br />
}<br />
...<br />
}}<br />
<br />
===Tengine===<br />
{{c|/etc/tengine/tengine.conf}} contains engine specific configurations.<br />
<br />
===Sites===<br />
{{c|/etc/tengine/sites-available/localhost}} has site specific configurations. Generally localhost is copied to domain.tld file formats in the {{c|/etc/tengine/sites-available/}} directory.<br />
<br />
==Usage==<br />
To start the tengine server:<br />
<br />
{{console|body=###i## rc-update add tengine default<br />
###i## rc}}<br />
<br />
{{EbuildFooter}}</div>Jubalhhttps://www.funtoo.org/index.php?title=Package:Minitube&diff=8859Package:Minitube2015-01-30T08:33:11Z<p>Jubalh: links and formatting</p>
<hr />
<div>{{Ebuild<br />
|Summary=Qt4 YouTube Client<br />
|CatPkg=media-video/minitube<br />
|Homepage=http://flavio.tordini.org/minitube<br />
}}<br />
[http://flavio.tordini.org/minitube Minitube] is a qt youtube client, and video player. This program is useful for limiting quality on videos for older hardware. Minitube has several sharing features, float on top features, continuous playback, snapshot, subscription, compact mode, full screen, and more.<br />
<br />
Install via:<br />
<br />
{{console|body=###i## emerge media-video/minitube}}<br />
<br />
=== Keybindings ===<br />
<br />
* Toggle full screen mode: '''f11'''<br />
<br />
* Toggle compact mode: '''ctrl + shift + c'''<br />
<br />
* Next video: '''ctrl + right'''<br />
<br />
* Previous video: '''ctrl + left'''<br />
{{EbuildFooter}}</div>Jubalhhttps://www.funtoo.org/index.php?title=Install/de/Profiles&diff=8843Install/de/Profiles2015-01-27T23:57:59Z<p>Jubalh: completed</p>
<hr />
<div><noinclude><br />
{{InstallPart|initial system configuration using Funtoo Linux profiles}}<br />
</noinclude><br />
=== Profile ===<br />
<br />
Sobald du neugestartet hast, kannst du dein System mit Funtoo Profilen weiter auf deine Beduerfnisse anpassen.<br />
<br />
[[Funtoo 1.0 Profile|Funtoo Profile]] werden genutzt um Standardwerte fuer Portage zu setzen die auf deine Beduerfnisse angepasst sind. Es gibt vier Grundarten von Profilen: arch, build, [[Flavors and Mix-ins|flavor, und mix-ins]]:<br />
<br />
;arch: typischerweise <code>x86-32bit</code> oder <code>x86-64bit</code>, definiert den Prozessortyp. Dies wird definiert wernn dein stage gebaut wird, und sollte nicht geaendert werden.<br />
;build: beschreibt ob das System <code>current</code>, <code>stable</code> oder <code>experimental</code> ist. Systeme mit <code>current</code> haben neuere Pakete als <code>stable</code> Systeme.<br />
;flavor: beschreibt die generelle Art des Systems, wie beispielsweise <code>server</code> oder <code>desktop</code>, und setzt Standard USE Flags angepasst auf deine Beduerfnisse.<br />
;mix-ins: definiert verschiedene Einstellungen in denen du moeglicherweise interessiert bist.<br />
<br />
Eine Auswahl von arch, build und flavor muss fuer jedes Funtoo Linux System getroffen werden. Mix-ins sind optional und du kannst mehr als eins setzen falls du das moechtest.<br />
<br />
<br />
Bedenke das Profile immer vererbt werden koennen. Zum Beispiel erbt das <code>desktop</code> flavor die Einstellungen des <code>workstation</code> flavor. Und somit auch die Einstellungen des <code>X</code> und <code>audio</code> mix-ins. eselect zeigt dir das auch an:<br />
<br />
<console><br />
(chroot) # ##i##eselect profile show<br />
Currently set profiles:<br />
arch: gentoo:funtoo/1.0/linux-gnu/arch/x86-64bit<br />
build: gentoo:funtoo/1.0/linux-gnu/build/current<br />
flavor: gentoo:funtoo/1.0/linux-gnu/flavor/desktop<br />
mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/kde<br />
<br />
Automatically enabled profiles:<br />
mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/print<br />
mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/X<br />
mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/audio<br />
mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/dvd<br />
mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/media<br />
mix-ins: gentoo:funtoo/1.0/linux-gnu/mix-ins/console-extras<br />
</console><br />
<br />
Um alle installieren Profile angezeigt zu bekommen:<br />
<console><br />
(chroot) # ##i##eselect profile list<br />
</console><br />
<br />
Um das flavor zu wechseln:<br />
<console><br />
<br />
(chroot) # ##i##eselect profile set-flavor 7<br />
</console><br />
<br />
Um ein mix-in hinzuzufuegen:<br />
<br />
<console><br />
(chroot) # ##i##eselect profile add 10<br />
</console></div>Jubalhhttps://www.funtoo.org/index.php?title=Install/de/PortageTree&diff=8842Install/de/PortageTree2015-01-27T23:40:16Z<p>Jubalh: completed</p>
<hr />
<div><noinclude><br />
{{InstallPart|downloading the Portage tree within the chroot}}<br />
</noinclude><br />
=== Herunterladen des Portage Tree ===<br />
<br />
{{fancynote|Fuer eine alternative zur hier beschriebenen Methode siehe: [[Installing Portage From Snapshot]].}}<br />
Jetzt ist es an der Zeit eine Kopie des Portage Repository, welches Paket Skripte (sogennante ebuilds) enthaelt die portage anweisen wie tausende von Programmen gebaut und installiert werden muessen, zu installieren. Um das Repository zu erstellen, fuehrt man einfach <code>emerge --sync</code> innerhalb der chroot Umgebung aus. Dies erstellt automatisch eine Kopie des Trees von [https://github.com/funtoo/ports-2012 GitHub]:<br />
<br />
<console><br />
(chroot) # ##i##emerge --sync<br />
</console><br />
<br />
{{fancyimportant|1=<br />
Falls du beim erstmaligen ausfuehren von <code>emerge --sync</code> aufgrund von Begrenzungen des git Protokolls bekommst, aendere die Variable<code>SYNC</code> in <code>/etc/make.conf</code> folgendermassen:<br />
<pre><br />
SYNC="https://github.com/funtoo/ports-2012.git"<br />
</pre><br />
}}</div>Jubalhhttps://www.funtoo.org/index.php?title=Install/de/Network&diff=8841Install/de/Network2015-01-27T23:30:30Z<p>Jubalh: completed</p>
<hr />
<div><noinclude><br />
{{InstallPart|Network configuration}}<br />
</noinclude><br />
=== Netzwerkkonfiguration ===<br />
<br />
Es ist wichtig das du nach deinem Start in Funtoo Linux Zugriff auf dein LAN hast. Es gibt drei Wege das zu erreichen: NetworkManager, dhcpcd und [[Funtoo Linux Networking|Funtoo Netzwerkskripte]]. Im folgenden erklaeren wir dir wie du aus diesen drei Moeglichkeiten die passende auswaehlst.<br />
<br />
==== Wi-Fi ====<br />
===== Mit dem NetworkManager =====<br />
Fuer Laptops und andere mobile System bei denen man sich immer wieder in neue WLAN Netze einwaehlt sollte man NetworkManager benutzen. Die Funtoo Version von NetworkManager ist sogar von der Kommandozeile aus komplett bedienbar, somit brauchst du kein X und auch kein NetworkManager applet (nm-applet). Hier die Schritte zur Installation noetigen Schritte:<br />
<br />
<console><br />
(chroot) # ##i##emerge linux-firmware<br />
(chroot) # ##i##emerge networkmanager<br />
(chroot) # ##i##rc-update add NetworkManager default<br />
</console><br />
<br />
Hiermit haben wir linux-firmware, welches eine Sammlung verfuegbarer Firmware fuer viele unterschiedliche Geraete ist, unter anderem WLAN Adapter, installiert. Ausserdem installierten wir NetworkManager selbst, welcher sich um die Verwaltung der Verbindungen kuemmern wird. Danach haben wir ihn dem <code>default</code> runleven hinzugefuegt, somit wird er beim hochfahren des Systems automatisch gestartet.<br />
<br />
Nach einem Neustart kannst du auf folgende Weise deine WLAN Verbindungen konfigurieren:<br />
<br />
{{Note|Der Folgende Befehl wird in einer chroot Umgebung nicht funktionieren, weil dbus und rfkill vorhanden sein muessen. Also vergiss nicht neuzustarten!}}<br />
<br />
<console><br />
# ##i##addwifi -S wpa -K 'wifipassword' mywifinetwork<br />
</console><br />
<br />
Der Befehl <code>addwifi</code> wird benutzt um ein WPA/WPA2 WLAN Netz namens <code>mywifinetwork</code> mit dem Passwort <code>wifipassword</code> zu konfigurieren. Dies wird unter <code>/etc/NetworkManager/system-connections</code> gespeichert. Dieses Kommando muss also nur einmal fuer jedes Netz ausgefuehrt werden.<br />
<br />
===== Mit wpa_supplicant =====<br />
Wenn du aus irgendeinem Grund kein Tool wie den NetwokManager oder <code>wicd</code> benutzen moechtest, kannst du <code>wpa_supplicant</code> verwenden.<br />
<br />
Zuerst sollte es installiert werden:<br />
<br />
<console><br />
(chroot) ###i## emerge -a wpa_supplicant<br />
</console><br />
<br />
Und nun editiere die Konfigurationsdatei, weche sich unter /etc/wpa_supplicant/wpa_supplicant.conf befindet. <br />
Die Syntax ist leicht:<br />
<pre><br />
network={<br />
ssid="MyWifiName"<br />
psk="lol42-wifi"<br />
}<br />
<br />
network={<br />
ssid="Other Network"<br />
psk="6d96270004515a0486bb7f76196a72b40c55a47f"<br />
}<br />
</pre><br />
<br />
Du musst nun sowohl <code>wpa_supplicant</code> als auch <code>dhcpcd</code> zum default runlevel hinzufuegen.<code>wpa_supplicant</code> wird zu deinem Access Point verbinden, und <code>dhcpcd</code> wird eine IP Adresse mithilfe von DHCP beziehen:<br />
<br />
<console><br />
(chroot) # ##i##rc-update add dhcpcd default<br />
(chroot) # ##i##rc-update add wpa_supplicant default<br />
</console><br />
<br />
==== Desktop (Verkabeltes Ethernet) ====<br />
<br />
Fuer einen Desktop Rechner der mit Ethernet fest verdrahtet ist und DHCP zur Adressvergabe nutzt, ist die einfachste Option die Netzwerkverbindung herzustellen einfach <code>dhcpcd</code> zum default runleven hinzuzufuegen:<br />
<br />
<console><br />
(chroot) # ##i##rc-update add dhcpcd default<br />
</console><br />
<br />
Wenn du neustartest, wird <code>dhcpcd</code> im Hintergrund gestartet, er wird alle Netwerk Schnittstellen verwalten und mittels DHCP konfigurieren.<br />
<br />
==== Server (Statische IP) ====<br />
<br />
Fuer Server werden die [[Funtoo Linux Networking|Funtoo Netzwerkskripte]] empfohlen. Sie sind fuer Dinge wie statische Konfiguration und virtuelles Ethernet bridging optimiert.</div>Jubalhhttps://www.funtoo.org/index.php?title=User:Jubalh&diff=8837User:Jubalh2015-01-27T20:08:13Z<p>Jubalh: </p>
<hr />
<div>{{Person<br />
|Full name=Jubalh<br />
|Nick=colonolGron<br />
|Geoloc=47.67, 9.17<br />
|Location name=Germany<br />
|Roles={{Role<br />
|Role type=Contributor<br />
|Role desc=Contributor<br />
}}<br />
}}<br />
<br />
== Jubalh ==<br />
Being a Linux user since around 2003, I have tinkered with many distributions, mostly using Debian GNU/Linux.<br />
In March 2014 I made the switch to Funtoo as my main distribution.<br />
First started out small changes on the wiki, then created some articles. At some point started filing bugs and then wanted to to totally dive in and really help wherever I can. So that's what I am doing now.<br />
<br />
You can find me on GitHub and Freenode, username: jubalh.<br />
<br />
Peace.</div>Jubalhhttps://www.funtoo.org/index.php?title=User:Jubalh&diff=8836User:Jubalh2015-01-27T20:02:56Z<p>Jubalh: update</p>
<hr />
<div>{{Person<br />
|Full name=Jubalh<br />
|Nick=colonolGron<br />
|Geoloc=47.67, 9.17<br />
|Location name=Germany<br />
|Roles={{Role<br />
|Role type=Contributor<br />
|Role desc=Contributor<br />
}}<br />
}}<br />
<br />
== Jubalh ==<br />
Being a Linux user since around 2003, I have tinkered with many distributions, mostly using Debian GNU/Linux.<br />
In March 2014 I made the switch to Funtoo as my main distribution.<br />
First started out small changes on the wiki, then created some articles. At some point started filing bugs and then wanted to to totally dive in and really help wherever I can. So that's what I am doing now.<br />
<br />
You can find me on GitHub and Freenode, username: jubalh.<br />
Peace.</div>Jubalhhttps://www.funtoo.org/index.php?title=Install/de/NextSteps&diff=8816Install/de/NextSteps2015-01-27T13:39:16Z<p>Jubalh: completed</p>
<hr />
<div><noinclude><br />
{{InstallPart|the last "Next Steps" section to direct users to futher setup documents}}<br />
</noinclude><br />
<br />
=== Nächste Schritte ===<br />
<br />
Wenn du neu in der Welt on Funtoo und Gentoo Linux bist schau dir am besten [[Funtoo Linux First Steps]] an. Dieser Artikel wird dir dabei helfen dich an deinem neuen System zurecht zu finden. Wir aben auch eine Wiki Kategorie: [[:Category:Official Documentation|Offizielle Dokumentation]], welche alles beinhaltet was man zum Administrieren eine Funtoo Linux Systems wissen muss.<br />
<br />
Wir haben noch einige andere Seiten welche dazu dienen dir beim aufsetzen deines Systems beizustehen. Schau dir die Liste unten an. Falls du selbst Seiten zu dieser Liste hinzufügen möchtest, füge diese zur "First Step" MediaWiki Kategorie hinzu.<br />
<br />
{{#ask: [[Category:First Steps]] | format=ul }}<br />
<br />
Falls dein System nicht erfolgreich gestartet wurde, schau dir [[Installation Troubleshooting]] an, vielleicht hilft dir das weiter.</div>Jubalhhttps://www.funtoo.org/index.php?title=Install/de/Intro&diff=8807Install/de/Intro2015-01-27T13:08:53Z<p>Jubalh: Created page with "<noinclude> {{InstallPart|the initial introductory text}} </noinclude> = Funtoo Linux Download/Install = __NOTITLE__ '''Dieses Dokument in anderen Sprachen''': * Install/f..."</p>
<hr />
<div><noinclude><br />
{{InstallPart|the initial introductory text}}<br />
</noinclude><br />
= Funtoo Linux Download/Install =<br />
__NOTITLE__<br />
<br />
'''Dieses Dokument in anderen Sprachen''':<br />
<br />
* [[Install/fr|Installation de Funtoo Linux]] (Français)<br />
<br />
== Einführung == <br />
<br />
Dieses Dokument wurde mit dem Ziel geschrieben, dir bei deiner Installation von Funtoo Linux auf einem PC-kompatiblem Computer zu installieren, ohne dabei zu sehr auf ablenkende Feinheiten einzugehen.<br />
<br />
Falls du schoneinmal Gentoo Linux installiert hast, werden einige der hier aufgeführten Schritte dir schon bekannt vorkommen, du solltest dennoch den ganzen Arikel durchlesen, da es ein paar kleinere Unterschiede gibt.<br />
<br />
{{Note|Solltest du Funtoo Linux auf der [[Funtoo Linux Installation on ARM|ARM]] Architektur installieren wollen, sieh dir bitte [[Funtoo Linux Installation on ARM | Funtoo Linux auf ARM]] bezüglich den Unterschieden an. }}</div>Jubalhhttps://www.funtoo.org/index.php?title=Install/de/Finish&diff=8804Install/de/Finish2015-01-27T12:50:25Z<p>Jubalh: </p>
<hr />
<div><noinclude><br />
{{InstallPart|finishing steps such as setting root password and rebooting}}<br />
</noinclude><br />
=== Abschließende Schritte ===<br />
<br />
==== Setzen des root Passworts ====<br />
Es ist wichtig das du dein root Passwort setzt bevor du neustartest. Falls du das vergisst, musst du erneut in die chroot Umgebung und es setzen!<br />
<console><br />
(chroot) # ##i##passwd<br />
</console><br />
<br />
===Neustarten des Systems ===<br />
<br />
Jetzt ist es an der Zeit chroot zu verlassen, alle Funto Linux Partitionen auszuhängen und den Computer neuzustarten.<br />
Wenn du dies tust, wird GRUB (dein Bootloader) starten, den Linux Kernel und eventuell dein initramfs laden, und dein System wird hochfahren.<br />
<br />
Also, verlasse jetzt die chroot Umgebung, wechsle das Verzeichnis und hänge alle Funtoo Partitionen aus. Der Letzte Befehl sorgt für den Neustart.<br />
<console><br />
(chroot) # ##i##exit<br />
# ##i##cd /mnt<br />
# ##i##umount -l funtoo<br />
# ##i##reboot<br />
</console><br />
<br />
{{fancynote|System Rescue CD wird während des runterfahrens sowieso alle Partitionen aushängen. Solltest du dies also vergessen ist es nicht weiter schlimm.}}<br />
<br />
Jetzt sollte dein System neustarten. Du solltest den GRUB bootloader für einige Sekunden sehen, dann das Laden des Linux Kernels. Danach wird dich Funtoo mit <code>login:</code> begrüssen. Gratulation! Dein Funtoo Linux wurde erfolgreich instaliert!</div>Jubalhhttps://www.funtoo.org/index.php?title=Install/de/Finish&diff=8803Install/de/Finish2015-01-27T12:47:23Z<p>Jubalh: completed</p>
<hr />
<div><noinclude><br />
{{InstallPart|finishing steps such as setting root password and rebooting}}<br />
</noinclude><br />
=== Abschließende Schritte ===<br />
<br />
==== Setzen des root Passworts ====<br />
Es ist wichtig das du dein root Passwort setzt bevor du neustartest. Falls du das vergisst, musst du erneut in die chroot Umgebung und es setzen!<br />
<console><br />
(chroot) # ##i##passwd<br />
</console><br />
<br />
===Neustarten des Systems ===<br />
<br />
Jetzt ist es an der Zeit chroot zu verlassen, alle Funto Linux Partitionen auszuhängen und den Computer neuzustarten.<br />
Wenn du dies tust, wird GRUB (dein Bootloader) starten, den Linux Kernel und eventuell dein initramfs laden, und dein System wird hochfahren.<br />
<br />
Also, verlasse jetzt die chroot Umgebung, wechsle das Verzeichnis und hänge alle Funtoo Partitionen aus. Der Letzte Befehl sorgt für den Neustart.<br />
<console><br />
(chroot) # ##i##exit<br />
# ##i##cd /mnt<br />
# ##i##umount -l funtoo<br />
# ##i##reboot<br />
</console><br />
<br />
{{fancynote|System Rescue CD wird während des runterfahrens sowieso alle Partitionen aushängen. Solltest du dies also vergessen ist es nicht weiter schlimm.}}<br />
<br />
Jetzt sollte dein System neustarten. Du solltest den GRUB bootloader für einige Sekunden sehen, dann das Laden des Linux Kernels. Danach wird dich Funtoo mit <br />
<code>login:</code> begrüssen. Gratulation! Dein Funtoo Linux wurde erfolgreich instaliert!</div>Jubalhhttps://www.funtoo.org/index.php?title=Install/de/Portage&diff=8802Install/de/Portage2015-01-27T12:20:30Z<p>Jubalh: completed</p>
<hr />
<div><noinclude><br />
{{InstallPart|an introduction to Portage}}<br />
</noinclude><br />
=== Einführung in Portage ===<br />
Portage, der Paketmanager für Funtoo Linux hat einen Befehl <code>emerge</code> welcher benutzt wird um Pakete aus ihrem Quellcode zu bauen und zu installieren. Dabei sorgt es auch dafür das alle Abhänigkeiten eines Pakets aufgelöst werden.<br />
<br />
emerge wird folgerndermaßen aufgerufen:<br />
<br />
<console><br />
(chroot) # ##i##emerge paketname<br />
</console><br />
<br />
Wenn ein Paket auf diese Weise installiert wird, speichert Portage den Paketnamen in der Datei <code>/var/lib/portage/world</code> ab. Da du das Paket explizit, per Paketname installiert hast geht Portage davon aus, dass du es auch un Zukunft auf dem laufdenen Stand haben möchtest.<br />
Das Paket wird somit Teil deines Systems. <code>world</code> ist dabei ein sogenanntes Set. Dadruch das alle Pakete dem <code>world</code> Set hinzuguegt werden kannst du dein gesamtes System mit dem folgenden Kommando aktualisieren:<br />
<br />
<console><br />
(chroot) # ##i##emerge --sync<br />
(chroot) # ##i##emerge -auDN @world<br />
</console><br />
<br />
Hierbei handelt es sich um den "offiziellen" Weg dein Funtoo Linux System zu aktualisieren.<br />
Zuerst aktualisieren wir den gesamten Portage tree. Im Portage tree befinden sich alle ebuilds, welches Skripte sind die emerge beschreiben was genau getan werden muss um ein Paket zu installieren. Bei Funtoo Linux wird der Tree in einem git repository gespeichert. Dies ist um einiges schneller als rsync.<br />
Danach sagen wir emerge dass das gesammte System (das <code>world</code> Set) aktualisiert werden soll.<br />
Hier eine Aufschlüsselung der verwendeten Optionen:<br />
<br />
* '''<code>a</code>''' - zeige uns was emerged werden soll, und frage (englisch: ask) uns ob wir einverstanden sind<br />
* '''<code>u</code>''' - aktualisiere (englisch: update) die Pakete, aber emerge sie nicht falls eine keine Aenderungen gibt<br />
* '''<code>D</code>''' - Beachte den kompletten Abhängigkeitsbaum beim aktualisieren. In anderen Worten: Mache ein "tiefes" (englisch: deep) Update<br />
* '''<code>N</code>''' - Aktualisiere alle Pakete welche ein neues (englisch: new) bzw. geänderte USE flags haben<br />
<br />
Du solltest auch von Zeit zu Zeit die Option <code>--with-bdeps=y</code> mitübergeben. Das dient dazu auch alle build Abhängigkeiten zu aktualisieren.<br />
<br />
Manchmal möchten wir auch ein Paket installieren es aber nicht zum <code>world</code> Set hinzufügen. Zum Beispiel wenn du das Paket nur temporär installieren möchtest, oder das Paket nur eine Abhängigkeit eines anderen ist. In diesem Fall wird <code>emerge</code> folgendermaß en aufgerufen:<br />
<br />
<console><br />
(chroot) # ##i##emerge -1 paketname<br />
</console><br />
<br />
Fortgeschrittene Benutzer, und alle die es werden wollen, sollten für weitere Informationen die [[Emerge]] wiki Seite lesen.<br />
<br />
==== Aktualisieren von world ====<br />
<br />
Jetzt ist eine gute Zeit um das gesammte System zu aktualisieren. Am besten vor dem ersten Neustart.<br />
<br />
<console><br />
(chroot) # ##i##emerge --sync<br />
(chroot) # ##i##emerge -auDN @world<br />
</console><br />
<br />
{{fancyimportant|1=<br />
<code>emerge</code> gibt manchmal wichtige Meldungen aus. Lies diese! Besonders nachdem zu perl oder python aktualisiert hast}}</div>Jubalhhttps://www.funtoo.org/index.php?title=Install/de/Portage&diff=8793Install/de/Portage2015-01-27T11:13:56Z<p>Jubalh: started. now have to eat lunch haha</p>
<hr />
<div><noinclude><br />
{{InstallPart|an introduction to Portage}}<br />
</noinclude><br />
=== Einfuehrung in Portage ===<br />
Portage, der Paketmanager fuer Funtoo Linux hat einen Befehl <code>emerge</code> welcher benutzt wird um Pakete aus ihrem Quellcode zu bauen und zu installieren.</div>Jubalhhttps://www.funtoo.org/index.php?title=Install/Network&diff=8676Install/Network2015-01-16T11:10:50Z<p>Jubalh: add note</p>
<hr />
<div><noinclude><br />
{{InstallPart|Network configuration}}<br />
</noinclude><br />
=== Configuring your network ===<br />
<br />
It's important to ensure that you will be able to connect to your local-area network after you reboot into Funtoo Linux. There are three approaches you can use for configuring your network: NetworkManager, dhcpcd, and the [[Funtoo Linux Networking]] scripts. Here's how to choose which one to use based on the type of network you want to set up.<br />
<br />
==== Wi-Fi ====<br />
===== Using NetworkManager =====<br />
For laptop/mobile systems where you will be using Wi-Fi and connecting to various networks, NetworkManager is strongly recommended. The Funtoo version of NetworkManager is fully functional even from the command-line, so you can use it even without X or without the Network Manager applet. Here are the steps involved in setting up NetworkManager:<br />
<br />
<console><br />
(chroot) # ##i##emerge linux-firmware<br />
(chroot) # ##i##emerge networkmanager<br />
(chroot) # ##i##rc-update add NetworkManager default<br />
</console><br />
<br />
Above, we installed linux-firmware which contains a complete collection of available firmware for many hardware devices including Wi-Fi adapters, plus NetworkManager to manage our network connection. Then we added NetworkManager to the <code>default</code> runlevel so it will start when Funtoo Linux boots.<br />
<br />
After you reboot into Funtoo Linux, you will be able to add a Wi-Fi connection this way:<br />
<br />
{{Note|The following command will not work as long as you are in chroot environment. The reason for this is that addwifi will need dbus and rfkill to be set up. So don't forget to reboot!}}<br />
<br />
<console><br />
# ##i##addwifi -S wpa -K 'wifipassword' mywifinetwork<br />
</console><br />
<br />
The <code>addwifi</code> command is used to configure and connect to a WPA/WPA2 Wi-Fi network named <code>mywifinetwork</code> with the password <code>wifipassword</code>. This network configuration entry is stored in <code>/etc/NetworkManager/system-connections</code> so that it will be remembered in the future. You should only need to enter this command once for each Wi-Fi network you connect to.<br />
<br />
===== Using wpa_supplicant =====<br />
If for some reason you don't want to use a tool such as NetworkManager or <code>wicd</code>, you can use wpa_supplicant for wireless network connections.<br />
<br />
First, emerge wpa_supplicant:<br />
<br />
<console><br />
(chroot) ###i## emerge -a wpa_supplicant<br />
</console><br />
<br />
Now, edit the wpa_supplicant configuration file, located at /etc/wpa_supplicant.conf.<br />
The syntax is very easy:<br />
<pre><br />
network={<br />
ssid="MyWifiName"<br />
psk="lol42-wifi"<br />
}<br />
<br />
network={<br />
ssid="Other Network"<br />
psk="6d96270004515a0486bb7f76196a72b40c55a47f"<br />
}<br />
</pre><br />
<br />
You will need to add both <code>wpa_supplicant</code> and <code>dhcpcd</code> to the default runlevel. <code>wpa_supplicant</code> will connect to your access point, and <code>dhcpcd</code> will acquire an IP address via DHCP:<br />
<br />
<console><br />
(chroot) # ##i##rc-update add dhcpcd default<br />
(chroot) # ##i##rc-update add wpa_supplicant default<br />
</console><br />
<br />
==== Desktop (Wired Ethernet) ====<br />
<br />
For a home desktop or workstation with wired Ethernet that will use DHCP, the simplest and most effective option to enable network connectivity is to simply add <code>dhcpcd</code> to the default runlevel:<br />
<br />
<console><br />
(chroot) # ##i##rc-update add dhcpcd default<br />
</console><br />
<br />
When you reboot, <code>dhcpcd</code> will run in the background and manage all network interfaces and use DHCP to acquire network addresses from a DHCP server.<br />
<br />
==== Server (Static IP) ====<br />
<br />
For servers, the [[Funtoo Linux Networking]] scripts are recommended. They are optimized for static configurations and things like virtual ethernet bridging for virtualization setups. See [[Funtoo Linux Networking]] for information on how to use Funtoo Linux's template-based network configuration system.</div>Jubalhhttps://www.funtoo.org/index.php?title=Making_the_Distribution,_Part_2&diff=8523Making the Distribution, Part 22015-01-09T16:00:08Z<p>Jubalh: this needs daniels review!</p>
<hr />
<div>{{Article<br />
|Summary=In his previous article, Daniel Robbins told the story of how he became a Stampede Linux developer and why he eventually left Stampede to start the Enoch Linux distribution. In this go-round he lets you in on the strange events that happened after the Enoch development team discovered a little-known, blazingly fast compiler.<br />
|Article Category=General<br />
|Author=Drobbins<br />
|Previous in Series=Making the Distribution, Part 1<br />
|Next in Series=Making the Distribution, Part 3<br />
}}<br />
== From Enoch to Gentoo, via minor setbacks and corporate run-ins == <br />
<br />
=== First steps to Enoch ===<br />
<br />
In my previous article, I gave you the low-down on my days with the Stampede development team and why I left (to get away from lower-level politically-minded, project-controlling "freaks"). Because of the interference from these meddlesome by-standers, I figured it would be easier to put together my own Linux distribution than to continue improving Stampede under such dirty conditions! Fortunately I took with me a considerable amount of experience based on my (may I say substantial?) work for Stampede, including maintaining several of their packages, designing the initialization scripts, and leading the slpv6 (next-generation package management project).<br />
<br />
The distribution I began working on, code-named Enoch, was going to be blazingly fast because it would completely automate the package creation and upgrading process. I have to admit that this was in large part because I was a one-member team and couldn't afford to spend my time on repetitive work that my development box could be automated to do for me. And since I was designing a complete distribution from scratch (rather than "spinning off" from someone like RedHat), I had my work cut out for me and needed all the free time I could scrounge up.<br />
<br />
After getting my basic Enoch system up and running, I headed back to irc.openprojects.net and started my own channel called #enoch. From there I gradually assembled a team of about ten developers. In those early days we all hung out on IRC and worked on the distribution in our spare time. As we communally and cooperatively hacked away at it, finding and fixing new bugs, Enoch became more functional and professional every day.<br />
<br />
=== The first roadblock ===<br />
<br />
One inevitable day, Enoch hit its first roadblock. After adding Xfree86, glib, and gtk+, I decided to get xmms (an X11/gtk+-based MP3/CD player app) working. I figured it was time to celebrate with some music! But after installing xmms, I tried to start it... and X locked up! At first I thought xmms locked up because I used insane compiler optimizations ("-O6 -mpentiumpro", in case you were wondering). My first thought, to compile xmms with standard optimizations, didn't solve the problem. So I started looking elsewhere. After spending a full week of development time trying to track down the problem, I got an e-mail from an Enoch user, Omegadan, who was also experiencing xmms lockups.<br />
<br />
We corresponded for a while, and after many hours of testing we determined that the problem was a POSIX threads-related issue. For some reason, a pthread_mutex_trylock() call did not return the way it should. As the creator of a distribution, these were the types of bugs I really didn't want to encounter. I counted on the developers to release perfect sources so I could focus on enhancing the Linux experience rather than getting buggy sources to work. Of course I soon learned that this was an unrealistic expectation, and that problems like this will always pop up from time to time.<br />
<br />
As it turned out, the problem wasn't with xmms, gtk+, or glib. And it wasn't an issue with Xfree86 3.3.5 not being thread-safe and locking up. Surprisingly, we found the bug in the Linux POSIX threads implementation itself, part of the GNU C library (glibc) version 2.1.2. I was shocked at the time to find that such a critical part of Linux had such a major bug. (And we used a release version of glibc in Enoch, not a prerelease or CVS version!).<br />
<br />
So how did we track down the problem? Actually, we never were able to come up with a bug fix, but at one point I stumbled across a couple of e-mails on the glibc developer mailing list from another person who had the same problem. The glibc developer who replied posted a patch that solved the thread problem for us. But I was curious why RedHat 6 (which also used glibc 2.1.2) didn't suffer from this problem since the patch was just posted and RedHat 6 had been available for some time. To find out, I downloaded RedHat's glibc SRPM (source RPM) and took a look at their patches.<br />
<br />
RedHat had their own homegrown glibc patch that solved the pthread_mutex_trylock() issue. Apparently they experienced the same problem and created their own custom fix. Too bad they didn't send this patch "upstream" to the glibc developers so it could be shared with the rest of the world. But who knows, maybe RedHat sent the patch upstream and for some reason the glibc developers didn't accept it. Or maybe the thread bug was triggered by a specific combination of compiler and binutils versions, and RedHat never ran into it (although they did have a thread patch in their SRPM). I suppose we'll never know exactly what happened. But I did learn that RedHat SRPMs contain a lot of private bug fixes and tweaks that never seem to make it upstream to the original developers. I'm going to rant about this for a little while.<br />
<br />
=== Rant ===<br />
<br />
When you put together a Linux distribution it's really important that any bug fixes you create are sent upstream to the original developers. As I see it, this is one of the many ways that distribution creators contribute to Linux. We're the guys who actually get all these different programs working as a unified whole. We should send our fixes upstream as we unify so that other users and distributions can benefit from our discoveries. If you decide to keep bug fixes to yourself, you're not helping anyone; you're just ensuring that a lot of people will waste time fixing the same problem over and over again. This kind of policy goes against the whole open source ethic and stunts the growth of Linux development. Maybe I should say that it "bugs" us all.<br />
<br />
It's unfortunate that some distributions (ahem) aren't as good (RedHat) as others (Debian) about sharing their work with the community.<br />
<br />
=== Compiler drama ===<br />
<br />
During the time we were trying to fix the glibc threads problem, I e-mailed Ulrich Drepper (one of the guys at Cygnus who is heavily involved with glibc development). I mentioned the POSIX thread problem we were having, and that Enoch was using pgcc for optimum performance. And he responded with something like this (I'm paraphrasing here): "Our own compiler included with the CodeFusion product has an excellent x86 backend that produces executables far faster than those generated with pgcc." Obviously, I was very interested in testing out this mystery "turbo" compiler the Cygnus guys had created.<br />
<br />
I thereupon requested a demo copy of Cygnus Codefusion 1.0 so that I could test it out, and Omegadan and I were amazed to find that this compiler was everything that Ulrich claimed and then some more. The x86 backend increased the performance of some of the CPU-intensive executables (like bzip2) by close to 90%! All applications seemed to benefit from at least a 10% real-world performance increase, and all we did was swap out compilers. Enoch even booted 30 - 40% faster. The performance gains were far, far greater than what we gained by switching from gcc to pgcc. Obviously, after experiencing it for ourselves, we wanted to use this compiler for Enoch. Fortunately, the sources were included on the CodeFusion CD and were released under the GPL, so we were fully permitted to use this compiler... or so we thought.<br />
<br />
=== Let the freakiness begin ===<br />
<br />
I sent an e-mail to the marketing manager at Cygnus to let them know our intentions, expecting a "yeah, go for it, thanks for using our compiler" response. Instead the reply was that although we were (technically) allowed to use the Cygnus compiler, we were strongly urged not to use or include the compiler sources with Enoch. I responded by asking why they had released the source under the GPL, if that was the case. It's my guess that if they had a choice, they wouldn't have used the GPL, but because they derived their compiler from egcs (released under the GPL), they had no choice.<br />
<br />
This is a good example of a situation where the GPL prevented a company from creating a proprietary product based on open sources. My educated guess is that Cygnus was afraid that if we used their compiler we would undermine their boxed product sales, which would be especially strange because none of their marketing materials (nor the InfoWorld review) mentioned the new compiler included with CodeFusion. CodeFusion was marketed solely as a "development IDE" product, not as a compiler.<br />
<br />
In an attempt to put some of their paranoia to rest, I offered to endorse CodeFusion and place the endorsement on our Web site with a link to help spur CodeFusion sales. Personally I didn't think that a "turbo" Enoch would negatively affect their sales, since CodeFusion was marketed as an IDE. But I tried nevertheless to make them happy. The IDE component of CodeFusion was a commercial product, and we had no desire or intention (or right) to distribute it with Enoch.<br />
<br />
I e-mailed my (generous?) offer to Cygnus and received another strange response. They wanted authority over all of our "marketing materials" (apparently, this also included the content of our Web site!) Another shocker. The Cygnus marketing team seemed to have no grasp of how the Linux community or the GPL worked, so I decided to cut off communication with Cygnus for the indefinite future. In the mean time, we created a private "turbo" and public "non-turbo" version of Enoch, leaving the final decision for later.<br />
<br />
But after several months they integrated the CodeFusion x86 backend into gcc 2.95.2. Now everyone could benefit from the nice new backend, not just the people who knew about the "secret GPL compiler" included on the CodeFusion CD. But we decided to go ahead and use gcc rather than the CodeFusion compiler. In addition to being more stable, gcc 2.95.2 also allowed us avoid Cygnus, which by this time had been purchased by RedHat for a ridiculous sum of money. (Note: the new x86 backend in gcc 2.95.2 is what gave newer Linux distributions the significant speed boost that we all got to experience. It also gave FreeBSD 4.0 a nice speed boost over 3.3.6. Notice the difference?)<br />
<br />
=== On the soapbox ===<br />
<br />
Thanks to this and other experiences, I've learned a lot about for-profit open source companies. There's absolutely nothing bad about being a for-profit open source company. Nor is there anything morally wrong with producing proprietary closed-source software, if that's what you'd like to do. But it doesn't make any sense for open source companies to subvert or refuse to cooperate with the rest of the open source world, either by not supporting the GPL or by any other means. This is a practical point that clearly makes business sense.<br />
<br />
Open source companies should realize that the free exchange of ideas and code is what they profit from. By opposing things like the standard GPL practices, they undermine the environment they rely upon to prosper and grow. If open source is the soil from which your business has sprouted, it makes sense to keep the soil healthy.<br />
<br />
I understand that there's a temptation to keep at least some information secret for short-term financial gain. Advanced code or special techniques provide a coveted competitive advantage, which could potentially result in increased sales and profit. But if the goal is to be the sole provider of a product, the product should be commercial rather than open source. Open source does not allow for exclusive access to the inner workings of anything. That's what it means.<br />
<br />
=== Back to Enoch ===<br />
<br />
Now, I'll step down from my soapbox and continue my story.<br />
<br />
As Enoch became more and more refined, we decided that a name change was in order, and "Gentoo Linux" was born. By this time we had released a couple of versions of Enoch (now Gentoo), and were racing to get to Gentoo Linux version 1.0. Around this time I also decided to upgrade my old Celeron 300 box (overclocked and rock-solid at 450Mhz) to a brand-new Abit BP6 (a dual Celeron board that had just hit the market). I sold my old box and put my dual Celeron 366 system together. After overclocking the processors to something on the order of 500Mhz, I was cruising. But I noticed that my new machine wasn't very stable.<br />
<br />
Obviously my first reaction was to go back down to 2x366Mhz. But now I experienced an even stranger problem. As long as my machine kept the CPUs chugging away, the machine didn't lock up. But if I left the machine idle overnight, there was a good probability that the system would lock up completely. Yes, an idle bug -- argh! After some research, I found several other Linux users with the same problem on this particular motherboard. A chip on the BP6 (was it the PCI controller?) seemed to be flaky or out of spec, which caused Linux to lock up at idle.<br />
<br />
I was more than a wee bit upset, and because I couldn't afford to order more PC parts, Gentoo development effectively halted. I became more and more pessimistic about Linux and decided to switch over to FreeBSD. Yes, FreeBSD. And that's where I'll end this installment -- see you in Part 3. :)<br />
{{ArticleFooter}}</div>Jubalhhttps://www.funtoo.org/index.php?title=Making_the_Distribution,_Part_2&diff=8522Making the Distribution, Part 22015-01-09T15:43:19Z<p>Jubalh: </p>
<hr />
<div>{{Article<br />
|Summary=In his previous article, Daniel Robbins told the story of how he became a Stampede Linux developer and why he eventually left Stampede to start the Enoch Linux distribution. In this go-round he lets you in on the strange events that happened after the Enoch development team discovered a little-known, blazingly fast compiler.<br />
|Article Category=General<br />
|Author=Drobbins<br />
|Previous in Series=Making the Distribution, Part 1<br />
|Next in Series=Making the Distribution, Part 3<br />
}}<br />
== From Enoch to Gentoo, via minor setbacks and corporate run-ins == <br />
<br />
=== First steps to Enoch ===<br />
<br />
In my previous article, I gave you the low-down on my days with the Stampede development team and why I left (to get away from lower-level politically-minded, project-controlling "freaks"). Because of the interference from these meddlesome by-standers, I figured it would be easier to put together my own Linux distribution than to continue improving Stampede under such dirty conditions! Fortunately I took with me a considerable amount of experience based on my (may I say substantial?) work for Stampede, including maintaining several of their packages, designing the initialization scripts, and leading the slpv6 (next-generation package management project).<br />
<br />
The distribution I began working on, code-named Enoch, was going to be blazingly fast because it would completely automate the package creation and upgrading process. I have to admit that this was in large part because I was a one-member team and couldn't afford to spend my time on repetitive work that my development box could be automated to do for me. And since I was designing a complete distribution from scratch (rather than "spinning off" from someone like RedHat), I had my work cut out for me and needed all the free time I could scrounge up.<br />
<br />
After getting my basic Enoch system up and running, I headed back to irc.openprojects.net and started my own channel called #enoch. From there I gradually assembled a team of about ten developers. In those early days we all hung out on IRC and worked on the distribution in our spare time. As we communally and cooperatively hacked away at it, finding and fixing new bugs, Enoch became more functional and professional every day.<br />
<br />
=== The first roadblock ===<br />
<br />
One inevitable day, Enoch hit its first roadblock. After adding Xfree86, glib, and gtk+, I decided to get xmms (an X11/gtk+-based MP3/CD player app) working. I figured it was time to celebrate with some music! But after installing xmms, I tried to start it... and X locked up! At first I thought xmms locked up because I used insane compiler optimizations ("-O6 -mpentiumpro", in case you were wondering). My first thought, to compile xmms with standard optimizations, didn't solve the problem. So I started looking elsewhere. After spending a full week of development time trying to track down the problem, I got an e-mail from an Enoch user, Omegadan, who was also experiencing xmms lockups.<br />
<br />
We corresponded for a while, and after many hours of testing we determined that the problem was a POSIX threads-related issue. For some reason, a pthread_mutex_trylock() call did not return the way it should. As the creator of a distribution, these were the types of bugs I really didn't want to encounter. I counted on the developers to release perfect sources so I could focus on enhancing the Linux experience rather than getting buggy sources to work. Of course I soon learned that this was an unrealistic expectation, and that problems like this will always pop up from time to time.<br />
<br />
As it turned out, the problem wasn't with xmms, gtk+, or glib. And it wasn't an issue with Xfree86 3.3.5 not being thread-safe and locking up. Surprisingly, we found the bug in the Linux POSIX threads implementation itself, part of the GNU C library (glibc) version 2.1.2. I was shocked at the time to find that such a critical part of Linux had such a major bug. (And we used a release version of glibc in Enoch, not a prerelease or CVS version!).<br />
<br />
So how did we track down the problem? Actually, we never were able to come up with a bug fix, but at one point I stumbled across a couple of e-mails on the glibc developer mailing list from another person who had the same problem. The glibc developer who replied posted a patch that solved the thread problem for us. But I was curious why RedHat 6 (which also used glibc 2.1.2) didn't suffer from this problem since the patch was just posted and RedHat 6 had been available for some time. To find out, I downloaded RedHat's glibc SRPM (source RPM) and took a look at their patches.<br />
<br />
RedHat had their own homegrown glibc patch that solved the pthread_mutex_trylock() issue. Apparently they experienced the same problem and created their own custom fix. Too bad they didn't send this patch "upstream" to the glibc developers so it could be shared with the rest of the world. But who knows, maybe RedHat sent the patch upstream and for some reason the glibc developers didn't accept it. Or maybe the thread bug was triggered by a specific combination of compiler and binutils versions, and RedHat never ran into it (although they did have a thread patch in their SRPM). I suppose we'll never know exactly what happened. But I did learn that RedHat SRPMs contain a lot of private bug fixes and tweaks that never seem to make it upstream to the original developers. I'm going to rant about this for a little while.<br />
<br />
=== Rant ===<br />
<br />
When you put together a Linux distribution it's really important that any bug fixes you create are sent upstream to the original developers. As I see it, this is one of the many ways that distribution creators contribute to Linux. We're the guys who actually get all these different programs working as a unified whole. We should send our fixes upstream as we unify so that other users and distributions can benefit from our discoveries. If you decide to keep bug fixes to yourself, you're not helping anyone; you're just ensuring that a lot of people will waste time fixing the same problem over and over again. This kind of policy goes against the whole open source ethic and stunts the growth of Linux development. Maybe I should say that it "bugs" us all.<br />
<br />
It's unfortunate that some distributions (ahem) aren't as good (RedHat) as others (Debian) about sharing their work with the community.<br />
<br />
=== Compiler drama ===<br />
<br />
During the time we were trying to fix the glibc threads problem, I e-mailed Ulrich Drepper (one of the guys at Cygnus who is heavily involved with glibc development). I mentioned the POSIX thread problem we were having, and that Enoch was using pgcc for optimum performance. And he responded with something like this (I'm paraphrasing here): "Our own compiler included with the CodeFusion product has an excellent x86 backend that produces executables far faster than those generated with pgcc." Obviously, I was very interested in testing out this mystery "turbo" compiler the Cygnus guys had created.<br />
<br />
I thereupon requested a demo copy of Cygnus Codefusion 1.0 so that I could test it out, and Omegadan and I were amazed to find that this compiler was everything that Ulrich claimed and then some. The x86 backend increased the performance of some of the CPU-intensive executables (like bzip2) by close to 90%! All applications seemed to benefit from at least a 10% real-world performance increase, and all we did was swap out compilers. Enoch even booted 30 - 40% faster. The performance gains were far, far greater than what we gained by switching from gcc to pgcc. Obviously, after experiencing it for ourselves, we wanted to use this compiler for Enoch. Fortunately, the sources were included on the CodeFusion CD and were released under the GPL, so we were fully permitted to use this compiler... or so we thought.<br />
<br />
=== Let the freakiness begin ===<br />
<br />
I sent an e-mail to the marketing manager at Cygnus to let them know our intentions, expecting a "yeah, go for it, thanks for using our compiler" response. Instead the reply was that although we were (technically) allowed to use the Cygnus compiler, we were strongly urged not to use or include the compiler sources with Enoch. I responded by asking why they had released the source under the GPL, if that was the case. It's my guess that if they had a choice, they wouldn't have used the GPL, but because they derived their compiler from egcs (released under the GPL), they had no choice.<br />
<br />
This is a good example of a situation where the GPL prevented a company from creating a proprietary product based on open sources. My educated guess is that Cygnus was afraid that if we used their compiler we would undermine their boxed product sales, which would be especially strange because none of their marketing materials (nor the InfoWorld review) mentioned the new compiler included with CodeFusion. CodeFusion was marketed solely as a "development IDE" product, not as a compiler.<br />
<br />
In an attempt to put some of their paranoia to rest, I offered to endorse CodeFusion and place the endorsement on our Web site with a link to help spur CodeFusion sales. Personally I didn't think that a "turbo" Enoch would negatively affect their sales, since CodeFusion was marketed as an IDE. But I tried nevertheless to make them happy. The IDE component of CodeFusion was a commercial product, and we had no desire or intention (or right) to distribute it with Enoch.<br />
<br />
I e-mailed my (generous?) offer to Cygnus and received another strange response. They wanted authority over all of our "marketing materials" (apparently, this also included the content of our Web site!) Another shocker. The Cygnus marketing team seemed to have no grasp of how the Linux community or the GPL worked, so I decided to cut off communication with Cygnus for the indefinite future. In the mean time, we created a private "turbo" and public "non-turbo" version of Enoch, leaving the final decision for later.<br />
<br />
But after several months they integrated the CodeFusion x86 backend into gcc 2.95.2. Now everyone could benefit from the nice new backend, not just the people who knew about the "secret GPL compiler" included on the CodeFusion CD. But we decided to go ahead and use gcc rather than the CodeFusion compiler. In addition to being more stable, gcc 2.95.2 also allowed us avoid Cygnus, which by this time had been purchased by RedHat for a ridiculous sum of money. (Note: the new x86 backend in gcc 2.95.2 is what gave newer Linux distributions the significant speed boost that we all got to experience. It also gave FreeBSD 4.0 a nice speed boost over 3.3.6. Notice the difference?)<br />
<br />
=== On the soapbox ===<br />
<br />
Thanks to this and other experiences, I've learned a lot about for-profit open source companies. There's absolutely nothing bad about being a for-profit open source company. Nor is there anything morally wrong with producing proprietary closed-source software, if that's what you'd like to do. But it doesn't make any sense for open source companies to subvert or refuse to cooperate with the rest of the open source world, either by not supporting the GPL or by any other means. This is a practical point that clearly makes business sense.<br />
<br />
Open source companies should realize that the free exchange of ideas and code is what they profit from. By opposing things like the standard GPL practices, they undermine the environment they rely upon to prosper and grow. If open source is the soil from which your business has sprouted, it makes sense to keep the soil healthy.<br />
<br />
I understand that there's a temptation to keep at least some information secret for short-term financial gain. Advanced code or special techniques provide a coveted competitive advantage, which could potentially result in increased sales and profit. But if the goal is to be the sole provider of a product, the product should be commercial rather than open source. Open source does not allow for exclusive access to the inner workings of anything. That's what it means.<br />
<br />
=== Back to Enoch ===<br />
<br />
Now, I'll step down from my soapbox and continue my story.<br />
<br />
As Enoch became more and more refined, we decided that a name change was in order, and "Gentoo Linux" was born. By this time we had released a couple of versions of Enoch (now Gentoo), and were racing to get to Gentoo Linux version 1.0. Around this time I also decided to upgrade my old Celeron 300 box (overclocked and rock-solid at 450Mhz) to a brand-new Abit BP6 (a dual Celeron board that had just hit the market). I sold my old box and put my dual Celeron 366 system together. After overclocking the processors to something on the order of 500Mhz, I was cruising. But I noticed that my new machine wasn't very stable.<br />
<br />
Obviously my first reaction was to go back down to 2x366Mhz. But now I experienced an even stranger problem. As long as my machine kept the CPUs chugging away, the machine didn't lock up. But if I left the machine idle overnight, there was a good probability that the system would lock up completely. Yes, an idle bug -- argh! After some research, I found several other Linux users with the same problem on this particular motherboard. A chip on the BP6 (was it the PCI controller?) seemed to be flaky or out of spec, which caused Linux to lock up at idle.<br />
<br />
I was more than a wee bit upset, and because I couldn't afford to order more PC parts, Gentoo development effectively halted. I became more and more pessimistic about Linux and decided to switch over to FreeBSD. Yes, FreeBSD. And that's where I'll end this installment -- see you in Part 3. :)<br />
{{ArticleFooter}}</div>Jubalhhttps://www.funtoo.org/index.php?title=Linux_on_KVM&diff=6823Linux on KVM2014-11-13T09:37:35Z<p>Jubalh: vmware, cirrus vga</p>
<hr />
<div>== Starting your first KVM virtual machine ==<br />
<br />
To start your first KVM virtual machine, first download SysRescueCD and save it to systemrescuecd.iso. Then use the following commands, which will create a 10GB qcow disk image to use for the first disk, and then the next command will start your virtual machine, booting from the CD:<br />
<br />
<console><br />
# ##i##qemu-img create -f qcow2 vdisk.qcow2 10<br />
</console><br />
<br />
You have several possibillities to display your virtual machine.<br />
You can tell qemu to start a VNC server, or you can display it directly in it's own window.<br />
<br />
{{note|It might be possible that you have to add '--enable-kvm' switch to 'qemu-system-x86_64'.}}<br />
<br />
=== Output ===<br />
It might be possible that some parts of the windows in your guest system look fuzzy, this might be because of the cirrus/std driver.<br />
A solution for this is to use vmware driver for displaying.<br />
First download the driver:<br />
<console><br />
# ##i## emerge -a xf86-video-vmware xf86-input-vmmouse<br />
</console><br />
<br />
It might be that you need to add some USE flags before you can emerge those:<br />
<console><br />
# ##i## echo "x11-libs/libdrm video_cards_vmware" >> /etc/portage/package.use<br />
# ##i## echo "media-libs/mesa xa" >> /etc/portage/package.use<br />
</console><br />
<br />
Now add the '-vga vmware' switch when calling 'qemu-system'.<br />
<br />
==== Own window ====<br />
<br />
Qemu needs to be compiled with either 'gtk' or 'sdl' use flags.<br />
<br />
<console><br />
# ##i##qemu-system-x86_64 vdisk.qcow2 -m 1024 -cdrom systemrescuecd.iso -cpu host -net nic -net user -vgs std -monitor stdio<br />
</console><br />
<br />
==== VNC ====<br />
<console><br />
# ##i##qemu-system-x86_64 vdisk.qcow2 -m 1024 -cdrom systemrescuecd.iso -cpu host -net nic -net user -vnc 127.0.0.1:1<br />
VNC server running on `127.0.0.1:5900'<br />
</console><br />
Now you should be able to use a VNC client to connect to 127.0.0.1:5901 (VNC session 1) and access your virtual machine.<br />
A plus for this method is, that you can close the window but the machine will keep on running, if you need it again just connect again via VNC.<br />
<br />
== Networking Options ==<br />
<br />
Above, networking will be enabled but will be on its own private LAN, and ping will not work. If you have a local bridge that you use for networking, the following steps will allow you use your existing bridge to provide higher-performance and full-featured network access to your virtual machine. <br />
<br />
First, create <tt>/etc/qemu-ifup</tt> and add the following to it. Replace <tt>brlan</tt> with the name of your bridge:<br />
<br />
<syntaxhighlight lang="bash"><br />
#!/bin/bash<br />
ifconfig $1 0.0.0.0 promisc up<br />
brctl addif brlan $1<br />
sleep 2<br />
</syntaxhighlight><br />
<br />
Make it executable:<br />
<br />
<console><br />
# ##i##chmod +x /etc/qemu-ifup<br />
</console><br />
<br />
Start the virtual machine as follows:<br />
<br />
<console><br />
# ##i##qemu-system-x86_64 vdisk.qcow2 -m 1024 -cdrom systemrescuecd-x86-2.8.0.iso -cpu host -vnc 127.0.0.1:1 -net nic -net tap,id=foo<br />
</console><br />
<br />
== Tweaking KVM ==<br />
<br />
=== VNC Output ===<br />
<br />
If you wanted to have VNC listen on a different IP address or port, you can use the format <tt>-vnc IP:vncnum</tt> which will cause VNC to listen on the IP specified, and the TCP port 5900+vncnum.<br />
<br />
=== CPU Settings ===<br />
<br />
By default, the KVM guest will have one CPU with one core. To change this, use <tt>-cpu host</tt> (to export all of the host's CPU features) and <tt>-smp cores=X,threads=Y</tt>, where X is the number of cores, and Y is the number of threads on each core. You can emulate more CPUs and cores than you actually have.<br />
[[Category:Virtualization]][[Category:KVM]]</div>Jubalhhttps://www.funtoo.org/index.php?title=Linux_on_KVM&diff=6815Linux on KVM2014-11-12T12:04:59Z<p>Jubalh: kvm switch</p>
<hr />
<div>== Starting your first KVM virtual machine ==<br />
<br />
To start your first KVM virtual machine, first download SysRescueCD and save it to systemrescuecd.iso. Then use the following commands, which will create a 10GB qcow disk image to use for the first disk, and then the next command will start your virtual machine, booting from the CD:<br />
<br />
<console><br />
# ##i##qemu-img create -f qcow2 vdisk.qcow2 10<br />
</console><br />
<br />
You have several possibillities to display your virtual machine.<br />
You can tell qemu to start a VNC server, or you can display it directly in it's own window.<br />
<br />
{{note|It might be possible that you have to add '--enable-kvm' switch to 'qemu-system-x86_64'.}}<br />
<br />
=== Own window ===<br />
<br />
Qemu needs to be compiled with either 'gtk' or 'sdl' use flags.<br />
<br />
<console><br />
# ##i##qemu-system-x86_64 vdisk.qcow2 -m 1024 -cdrom systemrescuecd.iso -cpu host -net nic -net user -vgs std -monitor stdio<br />
</console><br />
<br />
=== VNC ===<br />
<console><br />
# ##i##qemu-system-x86_64 vdisk.qcow2 -m 1024 -cdrom systemrescuecd.iso -cpu host -net nic -net user -vnc 127.0.0.1:1<br />
VNC server running on `127.0.0.1:5900'<br />
</console><br />
Now you should be able to use a VNC client to connect to 127.0.0.1:5901 (VNC session 1) and access your virtual machine.<br />
A plus for this method is, that you can close the window but the machine will keep on running, if you need it again just connect again via VNC.<br />
<br />
== Networking Options ==<br />
<br />
Above, networking will be enabled but will be on its own private LAN, and ping will not work. If you have a local bridge that you use for networking, the following steps will allow you use your existing bridge to provide higher-performance and full-featured network access to your virtual machine. <br />
<br />
First, create <tt>/etc/qemu-ifup</tt> and add the following to it. Replace <tt>brlan</tt> with the name of your bridge:<br />
<br />
<syntaxhighlight lang="bash"><br />
#!/bin/bash<br />
ifconfig $1 0.0.0.0 promisc up<br />
brctl addif brlan $1<br />
sleep 2<br />
</syntaxhighlight><br />
<br />
Make it executable:<br />
<br />
<console><br />
# ##i##chmod +x /etc/qemu-ifup<br />
</console><br />
<br />
Start the virtual machine as follows:<br />
<br />
<console><br />
# ##i##qemu-system-x86_64 vdisk.qcow2 -m 1024 -cdrom systemrescuecd-x86-2.8.0.iso -cpu host -vnc 127.0.0.1:1 -net nic -net tap,id=foo<br />
</console><br />
<br />
== Tweaking KVM ==<br />
<br />
=== VNC Output ===<br />
<br />
If you wanted to have VNC listen on a different IP address or port, you can use the format <tt>-vnc IP:vncnum</tt> which will cause VNC to listen on the IP specified, and the TCP port 5900+vncnum.<br />
<br />
=== CPU Settings ===<br />
<br />
By default, the KVM guest will have one CPU with one core. To change this, use <tt>-cpu host</tt> (to export all of the host's CPU features) and <tt>-smp cores=X,threads=Y</tt>, where X is the number of cores, and Y is the number of threads on each core. You can emulate more CPUs and cores than you actually have.<br />
[[Category:Virtualization]][[Category:KVM]]</div>Jubalhhttps://www.funtoo.org/index.php?title=Linux_on_KVM&diff=6814Linux on KVM2014-11-12T12:03:20Z<p>Jubalh: vnc and gtk output</p>
<hr />
<div>== Starting your first KVM virtual machine ==<br />
<br />
To start your first KVM virtual machine, first download SysRescueCD and save it to systemrescuecd.iso. Then use the following commands, which will create a 10GB qcow disk image to use for the first disk, and then the next command will start your virtual machine, booting from the CD:<br />
<br />
<console><br />
# ##i##qemu-img create -f qcow2 vdisk.qcow2 10<br />
</console><br />
<br />
You have several possibillities to display your virtual machine.<br />
You can tell qemu to start a VNC server, or you can display it directly in it's own window.<br />
<br />
=== Own window ===<br />
<br />
Qemu needs to be compiled with either 'gtk' or 'sdl' use flags.<br />
<br />
<console><br />
# ##i##qemu-system-x86_64 vdisk.qcow2 -m 1024 -cdrom systemrescuecd.iso -cpu host -net nic -net user -vgs std -monitor stdio<br />
</console><br />
<br />
=== VNC ===<br />
<console><br />
# ##i##qemu-system-x86_64 vdisk.qcow2 -m 1024 -cdrom systemrescuecd.iso -cpu host -net nic -net user -vnc 127.0.0.1:1<br />
VNC server running on `127.0.0.1:5900'<br />
</console><br />
Now you should be able to use a VNC client to connect to 127.0.0.1:5901 (VNC session 1) and access your virtual machine.<br />
A plus for this method is, that you can close the window but the machine will keep on running, if you need it again just connect again via VNC.<br />
<br />
== Networking Options ==<br />
<br />
Above, networking will be enabled but will be on its own private LAN, and ping will not work. If you have a local bridge that you use for networking, the following steps will allow you use your existing bridge to provide higher-performance and full-featured network access to your virtual machine. <br />
<br />
First, create <tt>/etc/qemu-ifup</tt> and add the following to it. Replace <tt>brlan</tt> with the name of your bridge:<br />
<br />
<syntaxhighlight lang="bash"><br />
#!/bin/bash<br />
ifconfig $1 0.0.0.0 promisc up<br />
brctl addif brlan $1<br />
sleep 2<br />
</syntaxhighlight><br />
<br />
Make it executable:<br />
<br />
<console><br />
# ##i##chmod +x /etc/qemu-ifup<br />
</console><br />
<br />
Start the virtual machine as follows:<br />
<br />
<console><br />
# ##i##qemu-system-x86_64 vdisk.qcow2 -m 1024 -cdrom systemrescuecd-x86-2.8.0.iso -cpu host -vnc 127.0.0.1:1 -net nic -net tap,id=foo<br />
</console><br />
<br />
== Tweaking KVM ==<br />
<br />
=== VNC Output ===<br />
<br />
If you wanted to have VNC listen on a different IP address or port, you can use the format <tt>-vnc IP:vncnum</tt> which will cause VNC to listen on the IP specified, and the TCP port 5900+vncnum.<br />
<br />
=== CPU Settings ===<br />
<br />
By default, the KVM guest will have one CPU with one core. To change this, use <tt>-cpu host</tt> (to export all of the host's CPU features) and <tt>-smp cores=X,threads=Y</tt>, where X is the number of cores, and Y is the number of threads on each core. You can emulate more CPUs and cores than you actually have.<br />
[[Category:Virtualization]][[Category:KVM]]</div>Jubalhhttps://www.funtoo.org/index.php?title=KVM&diff=6813KVM2014-11-12T10:06:01Z<p>Jubalh: info about autoloading</p>
<hr />
<div><br />
== Introduction ==<br />
<br />
KVM is a hardware-accelerated full-machine hypervisor and virtualization solution included as part of kernel 2.6.20 and later. It allows you to create and start hardware-accelerated virtual machines under Linux using the QEMU tools.<br />
<br />
== Kernel Setup ==<br />
<br />
To enable KVM, the following kernel config parameters should be enabled (this is based on a 3.x kernel):<br />
<br />
Under <code>Processor type and features</code>, enable <code>Linux guest support</code>, and enable the following options:<br />
<br />
{{kernelop|title=Processor type and features,Linux guest support|desc=<br />
--- Linux guest support<br />
[*] Enable paravirtualization code<br />
[ ] paravirt-ops debugging (NEW)<br />
[*] Paravirtualization layer for spinlocks<br />
[ ] Xen guest support (NEW)<br />
[*] KVM Guest support (including kvmclock) (NEW)<br />
[ ] Enable debug information for KVM Guests in debugfs (NEW)<br />
[ ] Paravirtual steal time accounting (NEW)<br />
}}<br />
<br />
<br />
Under the <code>Virtualization</code> category from the main kernel config menu, enable <code>Kernel-based Virtual Machine (KVM) support</code>, and enable at least one type of KVM, either for Intel or AMD processors. It is also recommended to enable <code>Host kernel acceleration for virtio net</code>.<br />
<br />
{{kernelop|title=Virtualization|desc=<br />
--- Virtualization<br />
<M> Kernel-based Virtual Machine (KVM) support<br />
<M> KVM for Intel processors support<br />
<M> KVM for AMD processors support<br />
[*] KVM legacy PCI device assignment support<br />
<M> Host kernel accelerator for virtio net<br />
}}<br />
<br />
<br />
You can use modules or build these parts directly into the kernel. Build your new kernel and modules, and reboot.<br />
<br />
== User-space tools ==<br />
<br />
If you are using QEMU on your desktop, add the following USE flag to <code>/etc/portage/make.conf</code>:<br />
<br />
<pre><br />
USE="$USE usbredir"<br />
</pre><br />
This will enable good mouse support for QEMU on your desktop.<br />
<br />
Now, emerge qemu:<br />
<br />
<console><br />
# ##i## emerge qemu<br />
</console><br />
<br />
==Initial Setup==<br />
<br />
Prior to using KVM, modprobe the appropriate accelerated driver for Intel or AMD:<br />
<br />
<console><br />
# ##i##modprobe kvm_intel<br />
</console><br />
<br />
{{note|Alternatively you can edit /etc/conf.d/modules to load it automatically}}<br />
<br />
== Next Steps ==<br />
<br />
{{important|Before using KVM, be sure that your user account is in the <code>kvm</code> group. You will need to use a command such as <code>vigr</code> or <code>gpasswd -a $USER kvm</code> as root to do this, and then log out and log back in for this to take effect.}}<br />
<br />
{{important|Atm the group <code>kvm</code> has no access to /dev/kvm. Change this with<br />
<console><br />
# ##i##chown root:kvm /dev/kvm<br />
# ##i##chmod g+rw /dev/kvm<br />
</console><br />
and kvm will start like expected [https://bugs.funtoo.org/browse/FL-1626 (see bug FL-1626)] }}<br />
<br />
For information on how to use KVM with various operating systems, see:<br />
<br />
* [[Windows 7 Virtualization with KVM]]<br />
* [[Linux on KVM]]<br />
<br />
[[Category:Virtualization]]<br />
[[Category:KVM]]</div>Jubalhhttps://www.funtoo.org/index.php?title=Rsync_Backup&diff=6637Rsync Backup2014-10-29T08:52:25Z<p>Jubalh: correct name</p>
<hr />
<div>== Introduction ==<br />
This tutorial leads you through the process of backing up and restoring your OS. This process is completed using the <code>rsync</code> tool that is included in SystemRescueCd.<br />
<br />
== Why SystemRescueCd? ==<br />
The usage of SystemRescueCD is quite simple: it enables us to backup the contents of our entire OS.<br />
<br />
== Backing Up ==<br />
=== Preparation ===<br />
By default, SystemRescueCd provides a <tt>/mnt/backup</tt> mount point. We will use this. There is no mount point for Funtoo. We have to create one:<br />
<console><br />
###i## install -d /mnt/funtoo<br />
</console><br />
When you use SystemRescueCd to backup you OS for the first time, you also have to create mount points for additional partitions. In this tutorial we assume that there is a <tt>/boot</tt> and a <tt>/home</tt> partition. Create the directories in <tt>/mnt/funtoo</tt>: <br />
<console><br />
###i## install -d /mnt/funtoo/boot<br />
###i## install -d /mnt/funtoo/home<br />
</console><br />
We also assume that we are backing up a sytem to an external drive. Plug in the USB device and power it on.<br />
<console>###i## cat /proc/partitions<br />
major minor #blocks name <br />
8 0 488386584 sda <br />
8 1 512000 sda1 <br />
8 2 32768 sda2 <br />
8 3 2097152 sda3 <br />
8 4 52428800 sda4 <br />
8 5 433314823 sda5 <br />
8 16 488386584 sdb <br />
11 0 1048575 sr0 <br />
8 48 488386584 sdd <br />
8 49 229032928 sdd1 <br />
8 52 1 sdd4 <br />
8 53 259352576 sdd5<br />
</console><br />
<br />
The above command helps you to determine the device name. Lets's suppose that your backup device is <tt>/dev/sdd1</tt>. Mount the device now - along with your Funtoo partitions.<br />
<console><br />
###i## mount /dev/sdd1 /mnt/backup<br />
###i## mount /dev/sda4 /mnt/funtoo<br />
###i## mount /dev/sda5 /mnt/funtoo/home<br />
###i## mount /dev/sda1 /mnt/funtoo/boot<br />
</console><br />
<br />
=== Backup ===<br />
Now, we backup our Funtoo partition:<br />
<console><br />
###i## rsync -aHA --del --force --stats --progress /mnt/funtoo /mnt/backup<br />
</console><br />
<br />
=== Snapshot ===<br />
Once this command has completed, you can create a snapshot. Create a snapshot folder if there is none:<br />
<console><br />
###i## install -d /mnt/backup/snapshot<br />
</console><br />
Give your snapshot copy a name that includes the date. Therefore, you may keep as many snapshot copies as you want and use one of those copies to restore your system to its state at any given date:<br />
<console><br />
###i## cp -al /mnt/backup/funtoo /mnt/backup/snaphot/snap-2K014B26-a<br />
</console><br />
{{fancynote| In our example, the name of the snapshot tells us that it was created on February 26th (B26) 2014 and it is the first one (a) made on that date. }}<br />
<br />
<br />
=== Log of backups ===<br />
Logging backups is not mandatory but can be useful. Create a log file and add a descriptive, yet short record for each of your backup. Here is an example:<br />
<pre><br />
Date File Description<br />
----------------- -------------------- ----------------------------------------------------------<br />
Feb 26th 2014 snap-2K014B26-a Backup after system update : <br />
- New kernel installed<br />
</pre><br />
<br />
<br />
== Restoring ==<br />
First, you have to boot your PC with SystemRescueCd. Next, create and format partitions as per [[Funtoo_Linux_Installation#Prepare_Hard_Disk|installation guide]].<br />
For the sake of brevity, we assume that we are restoring the <tt>/boot</tt>, <tt>/</tt> and <tt>/home</tt> partitions. First, you must create a mount point for Funtoo:<br />
<console><br />
###i## install -d /mnt/funtoo<br />
</console><br />
<br />
<br />
=== Mount partitions ===<br />
<console><br />
###i## mount /dev/sdd1 /mnt/backup<br />
###i## mount /dev/sda4 /mnt/funtoo<br />
###i## mount /dev/sda5 /mnt/home<br />
###i## mount /dev/sda1 /mntboot<br />
</console><br />
{{fancywarning|If <tt>/home</tt> and <tt>/boot</tt> fail to mount, simply create the appropriate mount points and run the mount commands again.}}<br />
<br />
<br />
=== Restoring from latest backup ===<br />
<console><br />
###i## rsync -aHA --del --force --stats --progress /mnt/backup/funtoo/ /mnt/funtoo<br />
</console><br />
{{fancynote| The <tt>/</tt> at the end of <code>/mnt/backup/funtoo/</code> is mandatory -- not a typo.}}<br />
<br />
<br />
=== Restoring from a previous backup ===<br />
<console><br />
###i## rsync -aHA --del --force --stats --progress /mnt/backup/snapshot/snap-2K014B26-a/ /mnt/funtoo<br />
</console><br />
{{fancynote| The '''<tt>/</tt>''' at the end of <code>/mnt/backup/snapshot/snap-2K014B26-a/</code> is mandatory -- not a typo.}}<br />
<br />
<br />
=== Restoring GRUB2 ===<br />
Once the system has been restored, GRUB2 must be reinstalled. The example below is for a GRUB/Bios partition schema. This assumes that the Funtoo partitions were created on <tt>/dev/sda</tt>:<br />
<console><br />
###i## cd /mnt/funtoo<br />
###i## mount -t proc none proc<br />
###i## mount -o bind /dev dev<br />
###i## mount -o bind /sys sys<br />
###i## swapon /dev/sda3<br />
###i## cp /etc/resolv.conf etc<br />
###i## env -i HOME=/root TERM=$TERM chroot . bash -l<br />
###i## grub-install /dev/sda<br />
</console><br />
{{fancywarning|If, for some reason, the partitions were not created on the same devices -- (let's say they were moved from <tt>/dev/sda</tt> to <tt>/dev/sdb</tt>) -- please amend <code>/etc/boot.conf</code> and <code>/etc/fstab</code> accordingly before running <code>boot-update</code>.}}<br />
<console><br />
###i## boot-update<br />
</console><br />
You're done. Unmount partitions and reboot.<br />
<br />
<br />
== Credit ==<br />
This is an as-is translation by Guy Fontaine (AKA Aramis_qc) of an original French tutorial written by Sylvain Alain (AKA d2_racing). Some parts were reviewed and modified to reflect Funtoo GNU/Linux instead of Gentoo GNU/Linux. <br />
<br />
<br />
[[Category:HOWTO]]<br />
[[Category:First Steps]]</div>Jubalhhttps://www.funtoo.org/index.php?title=GNOME_First_Steps&diff=6630GNOME First Steps2014-10-28T09:45:46Z<p>Jubalh: correct adwaita instructions</p>
<hr />
<div>== What is GNOME? ==<br />
"GNOME 3 is an easy and elegant way to use your computer. It is designed to put you in control and bring freedom to everybody. GNOME 3 is developed by the GNOME community, a diverse, international group of contributors that is supported by an independent, non-profit foundation." [http://gnome.org GNOME]<br />
<br />
== Prerequisites ==<br />
<br />
Before installing GNOME, ensure that the [[X Window System]] has been installed.<br />
<br />
{{fancywarning|1=<br />
Please note that Linux kernel 3.15.* may still have serious incompatibility with various graphics drivers. If you like to use <code>gentoo-sources</code> or <code>vanilla-sources</code>, please use a 3.14.* kernel. This is of particular importance if you plan to run GNOME, and want to use NVIDIA (commercial or nouveau) or ATI (ati-drivers) graphics drivers.}}<br />
<br />
== Preparing to emerge ==<br />
<br />
To get your system ready to emerge gnome, it is recommended that you first set the gnome profile mix-in. To accomplish this, do the following:<br />
<console><br />
##r### ##b## eselect profile list<br />
##g##Currently available mix-ins profiles: <br />
[11] funtoo/1.0/linux-gnu/mix-ins/audio <br />
[12] funtoo/1.0/linux-gnu/mix-ins/console-extras <br />
[13] funtoo/1.0/linux-gnu/mix-ins/dvd <br />
[14] funtoo/1.0/linux-gnu/mix-ins/gnome <br />
[15] funtoo/1.0/linux-gnu/mix-ins/kde <br />
[16] funtoo/1.0/linux-gnu/mix-ins/mate <br />
[17] funtoo/1.0/linux-gnu/mix-ins/media <br />
[18] funtoo/1.0/linux-gnu/mix-ins/print <br />
[19] funtoo/1.0/linux-gnu/mix-ins/python3-only <br />
[20] funtoo/1.0/linux-gnu/mix-ins/rhel5-compat <br />
[21] funtoo/1.0/linux-gnu/mix-ins/server-db <br />
[22] funtoo/1.0/linux-gnu/mix-ins/server-mail <br />
[23] funtoo/1.0/linux-gnu/mix-ins/server-web<br />
[24] funtoo/1.0/linux-gnu/mix-ins/X <br />
[25] funtoo/1.0/linux-gnu/mix-ins/xfce <br />
[26] funtoo/1.0/linux-gnu/mix-ins/vmware-guest <br />
[27] funtoo/1.0/linux-gnu/mix-ins/hardened<br />
</console><br />
After seeing a list of available profiles, we want to add in the appropriate number for the gnome mix-in. To do this, run the following:<br />
<console><br />
##r### ##b##eselect profile add 14<br />
</console><br />
<br />
By enabling the gnome mix-in, various USE and other settings will be optimized to provide you with a pain-free GNOME installation experience.<br />
<br />
== Emerging == <br />
<br />
You are provided with two packages that will pull in this desktop environment: <br />
<br />
* ''gnome''<br />
<br />
{{fancynote|This is the "whole shabang" - pulls in a range of applications made for the gnome desktop environment including a few games, an archive manager, a system monitor, a web browser, a terminal, etc.}}<br />
<br />
* ''gnome-light''<br />
<br />
{{fancynote|As the name implies, this pulls in the base minimal you need to get a functioning GNOME Desktop Environment.}}<br />
<br />
=== GNOME 3.12 from a clean install ===<br />
<br />
==== gnome ====<br />
<br />
To emerge ''gnome'' run the following command<br />
<br />
<console><br />
# ##i## emerge gnome<br />
</console><br />
<br />
==== gnome-light ====<br />
<br />
To emerge ''gnome-light'' run the following command<br />
<br />
<console><br />
# ##i## emerge gnome-light<br />
</console><br />
<br />
=== Upgrading from GNOME 3.6 ===<br />
<br />
==== gnome ====<br />
<br />
To emerge ''gnome'', remove nautilus-open-terminal if it is installed as it now bundled into gnome-terminal<br />
<br />
<console><br />
# ##i## emerge -C nautilus-open-terminal<br />
</console><br />
<br />
Then, run the following command<br />
<br />
<console><br />
# ##i## emerge -vauDN world<br />
</console><br />
<br />
==== gnome-light ====<br />
<br />
To emerge ''gnome-light'' remove the following packages as there have been changes since 3.6 (you will have up reinstall any packages that have been renamed after gnome-light completes).<br />
<br />
<console><br />
# ##i## emerge -C gnome-fallback gnome-panel gnome-screensaver metacity gnome-games gcalctool nautilus-open-terminal<br />
</console><br />
<br />
Then, run the following command<br />
<br />
<console><br />
# ##i## emerge -vauDN world<br />
</console><br />
<br />
Finally, restore any applications that have been renamed (such as gcalctool => gnome-calculator)<br />
<br />
<console><br />
# ##i## emerge gnome-calculator<br />
</console><br />
<br />
== Subsystems ==<br />
<br />
=== Bluetooth ===<br />
<br />
For bluetooth support, ensure that:<br />
<br />
# Bluetooth support is enabled in your kernel (using modules is fine).<br />
# Your bluetooth hardware is turned on.<br />
# Add the <code>bluetooth</code> startup script to the default runlevel, and start it.<br />
<br />
This can be done as follows:<br />
<br />
<console><br />
# ##i##rc-update add bluetooth default<br />
# ##i##rc<br />
</console><br />
<br />
Once this is done, you should now be able to navigate to ''Settings'' -> ''Bluetooth'' and turn bluetooth on. The icon next to devices should now animate and you should be able to discover and add devices such as keyboards.<br />
<br />
{{Note|1=<br />
Additional kernel drivers may need to be enabled for certain input devices. For example, for the bluetooth Apple Magic Trackpad, the following option must be enabled in your kernel: <br />
<br />
{{kernelop|title=Device Drivers,HID support,HID bus support,Special HID drivers|desc=<br />
<M> Apple Magic Mouse/Trackpad multi-touch support<br />
}}}}<br />
<br />
=== Printing ===<br />
<br />
To enable printing support, add <code>cupsd</code> to the default runlevel:<br />
<br />
<console><br />
# ##i##rc-update add cupsd default<br />
# ##i##rc<br />
</console><br />
<br />
You should now be able to navigate to ''Settings'' -> ''Printers'' and add printers to your system, and print.<br />
<br />
=== Scanning ===<br />
<br />
To enable scanning support, add your user account to the <code>lp</code> group. This will allow your user to access the USB scanner.<br />
<br />
Then, <code>emerge xsane</code>, and run it. It should be able to access your scanner.<br />
<br />
== Finishing Touches ==<br />
<br />
=== X ===<br />
<br />
==== Setting up xdm (GUI log-in) ====<br />
<br />
Typically, you will want to use <code>gdm</code>, the GNOME display manager, to log in to GNOME. This will allow you to log in graphically, rather than using the text console.<br />
<br />
To enable gdm, edit <code>/etc/conf.d/xdm</code> and set <code>DISPLAYMANAGER</code> to <code>gdm</code> instead of <code>xdm</code>. Then, perform the following steps to add <code>xdm</code> to the default runlevel, and have it start automatically from now on when your system starts:<br />
<br />
{{Note|Funtoo's <code>/etc/init.d/xdm</code> initscript has been modified to start the requisite services <code>dbus</code>, <code>openrc-settingsd</code> and <code>consolekit</code> prior to starting <code>gdm</code>.}}<br />
<br />
<console><br />
# ##i## rc-update add xdm default<br />
</console><br />
<br />
Then, if you want to start it now do:<br />
<br />
<console><br />
# ##i##rc<br />
</console><br />
<br />
==== Setting up xinitrc (text log-in) ====<br />
<br />
Adding the following to your <code>~/.xinitrc</code> file is sufficient:<br />
<br />
<pre><br />
# Fix Missing Applications in Gnome<br />
export XDG_MENU_PREFIX=gnome-<br />
<br />
# Properly Launch the Desired X Session<br />
exec ck-launch-session gnome-session<br />
</pre><br />
<br />
Additionaly, if you need support for different input sources, there is no longer a need to configure ibus or scrim in your <code>.xinitrc</code> file as GNOME uses ibus natively. Simply configure it in the Control Center under Region & Langauge.<br />
<br />
=== Disable Adwaita Dark Theme ===<br />
<br />
If you do not like the Adwaita Dark Theme it can be disabled by copying then modifying it like so:<br />
<br />
<console><br />
mkdir -p ~/.themes/Adwaita-NoDark<br />
cp -r /usr/share/themes/Adwaita/gtk-* ~/.themes/Adwaita-NoDark<br />
rm ~/.themes/Adwaita-NoDark/gtk-3.0/gtk-dark.css<br />
ln -s gtk.css ~/.themes/Adwaita-NoDark/gtk-3.0/gtk-dark.css<br />
</console><br />
<br />
Then, run gnome-tweak-tool and select select Theme -> GTK+ Theme -> Adwaita-NoDark.<br />
<br />
{{fancynote|If you run GUI programs with the sudo command, then the above steps (excluding running gnome-tweak-tool) must be repeated for the root account.}}<br />
<br />
[https://ask.fedoraproject.org/en/question/10304/how-do-i-ban-apps-from-using-gnome-3-adwaita-dark-theme/ Reference]<br />
<br />
=== Verify the inode/directory MimeType Handler ===<br />
<br />
In some odd instances, baobab might take priority over nautilus when handling the inode/directory MimeType. If this behavior is not desired, add the following to /home/~/.local/share/applications/mimeapps.list:<br />
<br />
<pre><br />
[Added Associations]<br />
inode/directory=nautilus.desktop;baobab.desktop;<br />
</pre><br />
<br />
=== Automatically Starting Applications at Login ===<br />
<br />
When using an old-fashioned <code>.xinitrc</code>, starting up applications when X starts is relatively easy. When using GDM, this can still be accomplished, by using the <code>~/.xprofile</code> file. Here's my sample <code>.xprofile</code> to start <code>xflux</code> to dim the screen at night:<br />
<br />
<pre><br />
xflux -z 87107<br />
</pre><br />
<br />
Remember to add a <code>&</code> at the end of any command that doesn't return to the shell prompt after running.<br />
<br />
[[Category:Desktop]]<br />
[[Category:First Steps]]<br />
[[Category:Official Documentation]]</div>Jubalhhttps://www.funtoo.org/index.php?title=Cloud_Backup&diff=6582Cloud Backup2014-10-23T10:05:25Z<p>Jubalh: info that etckeeper is in tree but maybe need to use layman</p>
<hr />
<div>This howto will describe a method for automatically backing up your funtoo install to the internet, in this case dropbox, but any online storage will do. Gentoo describes a method of creating a stage 4 archive. The problem with a stage 4 is that it is large and it archives a lot of unnecessary files. Such as applications that can be reinstalled from an emerge world. Instead, this method will aim for more of a "stage 3.5."<br />
<br />
{{fancynote| This method does not attempt to backup everything. The intention is only to backup the system. Optionally you can also archive and copy your <tt>/home</tt> folder if you have enough online storage.}}<br />
<br />
== Use Case ==<br />
A backup machine currently provides network drives on a home LAN to allow clients on the LAN to backup to, using apps such as Time Machine (Mac) and Genie Timeline (Windows). As this machine ''is'' the backup machine it doesn't have anywhere to backup to itself. In this situation a backup solution is provided by backing up to somewhere online - dropbox. If a restore from the backup is required, the client machine's backups would be trashed, and the backup machine restored.<br />
<br />
== Automatic Backup Archives With Etckeeper ==<br />
Etckeeper is a tool that is used to save versions of <tt>/etc</tt>, including meta-data in a version control repository such as git.<br />
As etckeeper is not in the funtoo portage tree, layman is used to provide an overlay.<br />
<br />
{{important|At the time of this writing, 13. October of 2014, the etckeeper ebuild is part of funtoo's portage tree. So you don't have to install it from an overlay but just emerge it.<br />
As this ebuild comes from an unofficial source it is possible that it will not be existent, in which case you should follow the install instructions via layman}}<br />
<br />
=== Install etckeeper via layman ===<br />
Before you install layman it is worth mentioning that you probably want <tt>USE="git subversion"</tt> in <tt>/etc/portage/make.conf</tt>. After adjusting use flags, to install layman you run:<br />
<console><br />
###i## emerge layman<br />
</console><br />
In order to backup the layman configuration, but not the portage overlay trees, make the following modifications to the default install.<br />
Tell Portage about layman-fetched repositories by adding the following line to <tt>/etc/portage/make.conf</tt>:<br />
<pre><br />
source /etc/layman/make.conf<br />
</pre><br />
<br />
Modify the following lines in <tt>/etc/layman/layman.cfg</tt>:<br />
<pre><br />
storage : /var/lib/layman<br />
installed : /etc/layman/installed.xml<br />
make_conf : /etc/layman/make.conf<br />
</pre><br />
<br />
Add the bgo-overlay. As described on their web page, [http://bgo.zugaina.org/ bgo.zugaina.org]. <br />
<console><br />
###i## layman -o http://gpo.zugaina.org/lst/gpo-repositories.xml -L<br />
###i## layman -a bgo-overlay -o http://gpo.zugaina.org/lst/gpo-repositories.xml<br />
</console><br />
<br />
More information about layman can be found here: http://www.gentoo.org/proj/en/overlays/userguide.xml<br />
<br />
Then unmask and install etckeeper.<br />
<console><br />
###i## emerge etckeeper --autounmask-write<br />
###i## emerge etckeeper <br />
</console><br />
{{fancynote| To update layman overlays do:}}<br />
<br />
<console><br />
###i## layman -S<br />
</console><br />
<br />
If you see the following error, apply this fix:<br />
<console><br />
###i## emerge etckeeper<br />
Calculating dependencies... done!<br />
>>> Verifying ebuild manifests<br />
!!! A file is not listed in the Manifest: '/var/lib/layman/bgo-overlay/sys-apps/etckeeper/files/etckeeper-gentoo-0.58.patch'<br />
<br />
###i## cd /var/lib/layman/bgo-overlay/sys-apps/etckeeper<br />
###i## ebuild etckeeper-0.58-r2.ebuild manifest<br />
###i## emerge etckeeper<br />
</console><br />
<br />
== Configure etckeeper ==<br />
Move any config files that do not live in <tt>/etc</tt>. i.e. <br />
Check <tt>/root</tt> for any files to be archived, such as iptables scripts, and move them to <tt>/etc</tt>.<br />
<br />
{{fancynote| because funtoo uses [[Boot-Update]], this means that <tt>/boot/grub/grub.cfg</tt> does not need to be archived.}}<br />
<br />
To ensure your portage world file is archived, make the following link:<br />
<console><br />
###i## ln /var/lib/portage/world /etc/world<br />
</console><br />
<br />
Initialize the git repository:<br />
<console><br />
###i## etckeeper init<br />
Initialized empty Git repository in /etc/.git/<br />
###i## etckeeper commit "Initial commit."<br />
</console><br />
<br />
If you don't already have a cron daemon installed, emerge one now:<br />
<console><br />
###i## emerge vixie-cron<br />
</console><br />
<br />
{{fancynote| git will only create a new version (commit) if there are changes from the previous one.}} <br />
Write a cron job to save an hourly version of <tt>/etc</tt> by creating the file <tt>/etc/cron.hourly/etckeeper</tt>:<br />
<br />
<syntaxhighlight lang="bash"><br />
#! /bin/bash<br />
etckeeper commit "Hourly auto-commit"<br />
</syntaxhighlight><br />
<br />
== Encrypt and copy backups online ==<br />
=== Copy To Dropbox ===<br />
<console><br />
###i## emerge dropbox<br />
</console><br />
<br />
Add a dropbox user:<br />
<console><br />
###i## useradd dropbox<br />
</console><br />
<br />
Write the dropbox init files in <tt>/etc/conf.d/dropbox</tt>:<br />
<syntaxhighlight lang="bash"> <br />
#!/sbin/runscript <br />
# Copyright 1999-2004 Gentoo Foundation <br />
# Distributed under the terms of the GNU General Public License, v2 or later <br />
# $Header: /var/cvsroot/gentoo-x86/sys-fs/dropbox/files/dropbox.init-1.0,v 1.4 2007/04/04 13:35:25 cardoe Exp $ <br />
<br />
DROPBOX_USERS="dropbox"<br />
NICENESS=5 <br />
<br />
depend() { <br />
need localmount net <br />
after bootmisc <br />
} <br />
<br />
start() { <br />
ebegin "Starting dropbox..." <br />
for dbuser in $DROPBOX_USERS; do <br />
start-stop-daemon -S -b -m --pidfile /var/run/dropbox-$dbuser.pid -N $NICENESS -u $dbuser -v -e HOME="/home/$dbuser" -x /opt/dropbox/dropboxd <br />
done <br />
eend $? <br />
} <br />
<br />
stop() { <br />
ebegin "Stopping dropbox..." <br />
for dbuser in $DROPBOX_USERS; do <br />
start-stop-daemon --stop --pidfile /var/run/dropbox-$dbuser.pid <br />
done <br />
eend $? <br />
} <br />
<br />
status() { <br />
for dbuser in $DROPBOX_USERS; do <br />
if [ -e /var/run/dropbox-$dbuser.pid ] ; then <br />
echo "dropboxd for USER $dbuser: running." <br />
else <br />
echo "dropboxd for USER $dbuser: not running." <br />
fi <br />
done <br />
eend $? <br />
}<br />
</syntaxhighlight><br />
Start dropbox now and at boot time:<br />
<console><br />
###i## chmod 0755 /etc/init.d/dropbox <br />
###i## /etc/init.d/dropbox start<br />
###i## rc-update add dropbox default<br />
</console><br />
<br />
After starting the dropbox daemon, it will provide a http link. You will need to visit this site just once to associate your computer with your dropbox account.<br />
<br />
Write the cron job to make the backup archive and move it online. Create the file <tt>/etc/cron.daily/backup</tt>:<br />
<syntaxhighlight lang="bash"><br />
#! /bin/bash<br />
cd /etc<br />
git bundle create /tmp/backup.bundle --all<br />
cd /tmp<br />
mv -v -f backup.bundle /home/dropbox/Dropbox/Private/<br />
</syntaxhighlight><br />
<br />
Make the script executable:<br />
<console><br />
###i## chmod +x /etc/cron.daily/backup <br />
</console><br />
<br />
=== Encrypt Backups ===<br />
It is a good idea to encrypt your backup before moving it online. This can be done with gpg, using a symmetric (password only) or public/private key encryption. Additionally you can chose to sign the backup to check its integrity before restoring.<br />
<console><br />
###i## emerge gpg<br />
</console><br />
<br />
==== Symmetric Encryption ====<br />
There is no preparation required to use a symmetric key as all that is required is simply a passphrase. Just modify the cron job. Edit <tt>/etc/cron.daily/backup</tt>:<br />
<br />
<syntaxhighlight lang="bash"><br />
#! /bin/bash<br />
cd /etc<br />
git bundle create /tmp/backup.bundle --all<br />
cd /tmp<br />
echo 'encryption_password' | gpg -o backup.gpg --batch --homedir /root/.gnupg -vvv --passphrase-fd 0 --yes -c backup.bundle<br />
mv -v -f router.gpg /home/dropbox/Dropbox/Private/<br />
</syntaxhighlight><br />
{{fancyimportant| Remember to change <tt>encryption_password</tt>}}<br />
{{fancywarning| If you forget this password the backup will be unusable. Lose the password and you lose the backup.}}<br />
<br />
As there is now sensitive information in this file, you might want to remove read permission:<br />
<console><br />
###i## chmod og-r /etc/cron.daily/backup <br />
</console><br />
<br />
==== Private/Public key Encryption ====<br />
Make a private/public encryption/decryptions key pair. The public key will be used to encrypt and the private key to decrypt.<br />
<console><br />
###i## gpg --gen-key<br />
</console><br />
The public key is used to create the encrypted backup and needs to live on the computer being backed up. A copy of the private key needs to be made and stored securely in another place. If this machine becomes unbootable, and this is the only place the private key lives, the backup dies with it.<br />
The private key should not be kept:<br />
* In the same place as the back up<br />
* On the machine being backed up<br />
{{fancynote| The private key is the only key that will decrypt the backup. Lose this key and/or it's password and you lose the backup.}}<br />
<br />
List the private keys:<br />
<console><br />
###i## gpg -K<br />
/root/.gnupg/secring.gpg<br />
------------------------<br />
sec 2048R/0EF13559 2012-01-21<br />
uid my_key <noone@example.com><br />
ssb 2048R/67417FEB 2012-01-21<br />
</console><br />
<br />
The private key can be exported using either the key name or key number. In this case "my_key" or "0EF13559".<br />
To cut and paste the key. Ie, if logging in remotely.<br />
<console><br />
###i## gpg -a --export-secret-key 0EF13559<br />
</console><br />
<br />
To create a key file:<br />
<console><br />
###i## gpg -o private_decryption.gpgkey --export-secret-key 0EF13559<br />
</console><br />
<br />
Now store this key somewhere secure. The backup is only as secure as the private key.<br />
<br />
Modify the cron job at <tt>/etc/cron.daily/backup</tt>:<br />
<br />
<syntaxhighlight lang="bash"><br />
#! /bin/bash<br />
cd /etc<br />
git bundle create /tmp/backup.bundle --all<br />
cd /tmp<br />
gpg -o backup.gpg -r 'my-key' --batch --homedir /root/.gnupg -vvv --passphrase-fd 0 --yes -e backup.bundle<br />
mv -v -f backup.gpg /home/dropbox/Dropbox/Private/<br />
</syntaxhighlight><br />
<br />
{{fancynote| Replace "my-key" with the appropriate name from the key list. Also note the change from -c for symmetric encryption to -e for private/public key encryption. }}<br />
<br />
==== Sign Backups ====<br />
Create a 2nd private/public (signing) key pair. The private key is used to sign and the public key is used to check the authenticity/integrity.<br />
<console><br />
###i## gpg --gen-key<br />
</console><br />
<br />
{{fancynote| The password for this key will be required in the script below.}} <br />
In this case the private key is required to sign the backup and the public key is used to check the integrity of the backup.<br />
Follow a similar process as above to copy the public key to to another computer/storage media.<br />
<br />
List the private keys:<br />
<console><br />
###i## gpg -k<br />
</console><br />
{{fancynote| <tt>-K</tt> lists private keys while <tt>-k</tt> lists public keys.}} <br />
<br />
Then export this public key via cut and paste:<br />
<console><br />
###i## gpg -a --export <key name or number><br />
</console><br />
<br />
Or to create a key file:<br />
<console><br />
###i## gpg -o public_signing.gpgkey --export <key name or number><br />
</console><br />
<br />
Now store this key somewhere secure.<br />
<br />
Modify the backup cron job at <tt>/etc/cron.daily/backup</tt>:<br />
<br />
<syntaxhighlight lang="bash"><br />
#! /bin/bash<br />
cd /etc<br />
git bundle create /tmp/backup.bundle --all<br />
cd /tmp<br />
echo 'signing_key_password' | gpg -s -o backup.gpg -r 'my-encryption-key' --batch --homedir /root/.gnupg -vvv --passphrase-fd 0 --yes -e backup.bundle <br />
mv -v -f backup.gpg /home/dropbox/Dropbox/Private/<br />
</syntaxhighlight><br />
<br />
{{fancynote| the script will require the password for your private (signing) key to sign the backup. Replace "password" with the password for your signing private key.<br />
And as there is sensitive information in this file don't forget to remove read permission.}}<br />
<console><br />
###i## chmod og-r /etc/cron.daily/backup <br />
</console><br />
<br />
== To Restore From A Backup ==<br />
This restore will assume your are starting with a new blank disk.<br />
Start by performing a stage 3 install, upto and including section 5 "Chroot into your new system." http://www.funtoo.org/wiki/Funtoo_Linux_Installation<br />
<br />
Then the restore process is:<br />
# Download backup from dropbox<br />
# Decrypt<br />
# Clone<br />
# Link world file<br />
# Emerge world<br />
# Compile the kernel<br />
# Restore grub bootloader<br />
# Reboot<br />
<br />
== Download backup from dropbox ==<br />
Log into your dropbox account and find your backup file. Move it to a public area if it isn't already in one. Then right click on it and click "copy public link."<br />
Now on the computer to be restored, delete the contents of the /etc folder and download the backup file.<br />
<br />
(Need to check if this needs done before chrooting into the new install).<br />
<console><br />
###i## cd /etc<br />
###i## rm -rf *<br />
###i## cd /tmp<br />
###i## wget http://dl.dropbox.com/link-to-backup-file/backup.gpg<br />
</console><br />
<br />
{{fancynote| if you have to copy the link from another computer and therefore can not cut and paste it, there is a "shorten link" option.}}<br />
<br />
== Decrypt ==<br />
If you used a public/private key to encrypt, and optionally signed the backup, import the decryption and signing keys.<br />
<br />
Note:<br />
# The decryption key is the private key of the encryption key pair - private_decryption.gpgkey<br />
# The signing key is the public key of the signing key pair - public_signing.gpgkey<br />
<br />
To import the keys by cut and paste:<br />
<console><br />
###i## gpg --import <<EOF<br />
</console><br />
{{fancynote| The last line after pasting the key should be "EOF"}}<br />
Repeat for both keys.<br />
<br />
To import the keys by file:<br />
<console><br />
###i## gpg --import private_decryption.gpgkey<br />
###i## gpg --import public_signing.gpgkey<br />
</console><br />
<br />
Decrypt the backup:<br />
<console><br />
###i## gpg -d backup.gpg > backup.bundle<br />
</console><br />
<br />
If the backup was signed and you have correctly imported the signing public key you should see a message similar to:<br />
<console><br />
gpg: Good signature from "my_signing_key <noone@example.com>"<br />
</console><br />
<br />
== Clone ==<br />
<console><br />
###i## git clone /tmp/backup.bundle /etc/<br />
</console><br />
<br />
== Link world file ==<br />
<console><br />
###i## ln /etc/world /var/lib/portage/world<br />
</console><br />
<br />
== Emerge world ==<br />
<console><br />
###i## emerge --sync<br />
###i## layman -S<br />
###i## emerge -uDaNv world<br />
</console><br />
<br />
== Compile the kernel (genkernel)==<br />
If you have genkernel set to save config files (the default):<br />
<console><br />
###i## cp /etc/kernels/kernel-config-x86_64-<latest version>-gentoo /usr/src/linux/.config <br />
</console><br />
<br />
Otherwise use the currently loaded kernel's config:<br />
<console><br />
###i## zcat /proc/config.gz > /usr/src/linux/.config <br />
</console><br />
<br />
Then compile the kernel:<br />
<console><br />
###i## genkernel --oldconfig --no-mrproper all <br />
</console><br />
<br />
== Restore grub bootloader ==<br />
<console><br />
###i## grub-install --no-floppy /dev/sda<br />
###i## boot-update<br />
</console><br />
<br />
Adjust the device as required if installing to another location.<br />
<br />
== Reboot ==<br />
<console><br />
###i## reboot<br />
</console><br />
<br />
[[Category:First Steps]]<br />
[[Category:HOWTO]]</div>Jubalh