Re: trimming down Fedora installed size

2014-05-16 Thread James Antill
On Thu, 2014-05-15 at 18:14 -0700, Adam Williamson wrote:
 On Thu, 2014-04-10 at 09:56 -0400, James Antill wrote:
  On Thu, 2014-04-10 at 10:42 +0300, Marius A wrote:
  
   Wow, this is exactly what I was looking for. Thanks!
   On Fedora 21, any way to apply these before installing to SDD from live 
   usb
   image? e.g. open terminal, run fs filter's, then start the install?
  
   So the way yum fs filter works is to change the yum configuration for
  tsflags and override_install_langs.
   If you specify --installroot when running the filter command then yum
  should write the new yum.conf within the installroot. Then when you run
  the next installroot command, to actually install, it will pickup those
  configurations and dtrt.
   You can also use --setopt to set them too, or .conf.blah if you are
  using the API.
 
 (adamw-catching-up-on-devel-thread-necro-alert!)

 Cast of raise the dead succeeded! Badge unlocked

 but that would not be any use to a live install, because a live install
 doesn't actually do any package transactions, would it?

 There aren't any rpmdb transactions to do the copy ... but AIUI you can
still do them, right?

 There are also two parts to the filtering in yum:

yum fs filter documentation

...this tells yum to start filtering all the documentation from all
future transactions, but because of the way that this applies to removes
as well as installs in rpm[1] yum also has:

yum fs refilter
yum fs refilter-cleanup

...the former alters all the yumdb.ts_install_langs and
yumdb.tsflag_nodocs flags for the installed packages (without having to
do an action reinstall), so that those packages are marked as having
their docs/langs filtered (by yumdb, rpm -V will still complain).
 The later then deletes all the files that are on disk but should be
filtered.


[1] So if you do an upgrade the documentation for the new package is
filtered from being installed, but the documentation from the old
package is also filtered from being removed.

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-05-16 Thread James Antill
On Fri, 2014-05-16 at 14:52 -0400, James Antill wrote:
 yum fs refilter

 ...the former alters all the yumdb.ts_install_langs and
 yumdb.tsflag_nodocs flags for the installed packages (without having to
 do an actual reinstall), so that those packages are marked as having
 their docs/langs filtered (by yumdb, rpm -V will still complain).

 I apparently changed/fixed this at some point from when I remembered,
so it does do the reinstall transaction (and thus. rpm -V is happy). But
I believe this is fine on the live CD, right? (you can run transactions
to install/reinstall packages)?

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-05-15 Thread Adam Williamson
On Thu, 2014-04-10 at 09:56 -0400, James Antill wrote:
 On Thu, 2014-04-10 at 10:42 +0300, Marius A wrote:
 
  Wow, this is exactly what I was looking for. Thanks!
  On Fedora 21, any way to apply these before installing to SDD from live usb
  image? e.g. open terminal, run fs filter's, then start the install?
 
  So the way yum fs filter works is to change the yum configuration for
 tsflags and override_install_langs.
  If you specify --installroot when running the filter command then yum
 should write the new yum.conf within the installroot. Then when you run
 the next installroot command, to actually install, it will pickup those
 configurations and dtrt.
  You can also use --setopt to set them too, or .conf.blah if you are
 using the API.

(adamw-catching-up-on-devel-thread-necro-alert!)

but that would not be any use to a live install, because a live install
doesn't actually do any package transactions, would it?
-- 
Adam Williamson
Fedora QA Community Monkey
IRC: adamw | Twitter: AdamW_Fedora | XMPP: adamw AT happyassassin . net
http://www.happyassassin.net

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-12 Thread Andrew Price

On 11/04/14 21:54, Richard W.M. Jones wrote:

On Thu, Apr 10, 2014 at 06:13:42PM +0100, Andrew Price wrote:

On 10/04/14 17:05, Bill Nottingham wrote:

James Antill (ja...@fedoraproject.org) said:

  Not that I assume splitting lanauges and docs. into sub packages would
triple primary numbers, but if it did ... that would be bad.


To put it in perspective, if we split out 'langpacks' for apps per language,
something like gedit then grows *100* new subpackages.

Bill


It's a shame we can't store .mo files compressed.


Unfortunately .mo files are mmapped and shared between processes, so
compressing them wouldn't work :-(


That's what I thought :/

Just thinking out loud, but maybe with an updated gettext(3) it could 
work, but I guess it would require some hefty changes in libc, right? 
Unless programs could be linked against a zintl lib to provide an 
alternative gettext(3) perhaps. Either way it would need to be 
transparently backward compatible with the current .mo format and 
obviously there'd be performance concerns for some programs so they'd 
need to stick with the current implementation. Portability shouldn't be 
an issue though as .po files can be compiled to whatever .mo format the 
distro/package uses. I think there's potential for innovation in that 
area anyway, but it would need some momentum behind it.


Andy
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-11 Thread Florian Festi
On 04/10/2014 09:53 PM, James Antill wrote:
  20 | 38,561 |  38 G  | 19M

So there are 20MB of meta data that need to be downloaded once. This can
hardly be a problem - even if the size tripled.

 same thing for updates gives:
 18 | 18,606 |  20 G  | 12M

Ok, let this be another 20MB for the updates during the life time of an
Fedora release. This would also not be an issue if we had not to
download this file over and over again and then inflate it to ten times
it's size.

The main issue here is not the amount of data but the way yum handles it
and the refusal of yum upstream to even consider an efficient meta data
handling by insisting on the reconstruction of transport representation
on the client side.

In the end we need a saner MD handling no matter if we go for finer
grained packages or not. I hope DNF will be able to provide this at some
point when they are done with the more basic things.

Florian
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-11 Thread Richard W.M. Jones
On Thu, Apr 10, 2014 at 06:13:42PM +0100, Andrew Price wrote:
 On 10/04/14 17:05, Bill Nottingham wrote:
 James Antill (ja...@fedoraproject.org) said:
   Not that I assume splitting lanauges and docs. into sub packages would
 triple primary numbers, but if it did ... that would be bad.
 
 To put it in perspective, if we split out 'langpacks' for apps per language,
 something like gedit then grows *100* new subpackages.
 
 Bill
 
 It's a shame we can't store .mo files compressed.

Unfortunately .mo files are mmapped and shared between processes, so
compressing them wouldn't work :-(

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-builder quickly builds VMs from scratch
http://libguestfs.org/virt-builder.1.html
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-10 Thread Marius A
On Wed, Apr 9, 2014 at 10:57 PM, James Antill ja...@fedoraproject.orgwrote:

 On Wed, 2014-04-09 at 12:37 +0300, Ville Skyttä wrote:
  On Wed, Apr 9, 2014 at 10:33 AM, Marius A marius1...@gmail.com wrote:
   1. remove /usr/share/docs
 
  Try this in /etc/rpm/macros.whatever:
  %_excludedocs 1

  For recent yum it's significantly better to do:

 yum fs filter nodocs




  Try this in /etc/rpm/macros.whatever:
  %_install_langs en

  Dito. to get rid of extra languages by:

 yum fs filter langs en

 ...then you can yum fs refilter / yum fs refilter-cleanup.


Wow, this is exactly what I was looking for. Thanks!
On Fedora 21, any way to apply these before installing to SDD from live usb
image? e.g. open terminal, run fs filter's, then start the install?

This thread has spawned good discussions tough :)
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

rotated /var/log/journal (was Re: trimming down Fedora installed size)

2014-04-10 Thread Marius A
On Wed, Apr 9, 2014 at 2:23 PM, Michal Schmidt mschm...@redhat.com wrote:

 On 04/09/2014 09:33 AM, Marius A wrote:
  3. cleanup /var/log/journal, which seems it's not automatically rotated

 It's supposed to be automatic. How big did it become on your system?

600mb. Now in April I still had files from January.
Looks about right according to man page:
The first pair defaults to 10% and the second to 15% of the size of the
respective file system.


 If the default size limits do not suit you, you can change them in
 /etc/systemd/journald.conf.

Got it, I'll use that in the future. Thanks!

Would be good to have a sample entry in man page with
 SystemMaxUse=, SystemKeepFree=,
I cannot tell if it's bytes, mb, or percentage of file system size. Google
answered that (e.g. 50M)

Marius
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-10 Thread Miroslav Suchý

On 04/09/2014 09:33 AM, Marius A wrote:

Are there any other disk space saving tips?


From Debian world:
https://wiki.debian.org/ReduceDebian


--
Miroslav Suchy, RHCE, RHCDS
Red Hat, Senior Software Engineer, #brno, #devexp, #fedora-buildsys
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-10 Thread James Antill
On Wed, 2014-04-09 at 16:41 -0400, Matthew Miller wrote:
 On Wed, Apr 09, 2014 at 03:57:27PM -0400, James Antill wrote:
   For recent yum it's significantly better to do:
  yum fs filter nodocs
   Dito. to get rid of extra languages by:
  yum fs filter langs en
  ...then you can yum fs refilter / yum fs refilter-cleanup.
 
 So -- if the host is originally installed with anaconda's kickstart options
 for nodocs and language selection, will `yum fs refilter` still work?

 The way the nodocs stuff is done in anaconda is by changing the rpm
macros directly where yum uses the slightly saner API there of setting
the rpm.RPMTRANS_FLAG_NODOCS transaction flag. And yum looks just for
that transaction flag when it sets/gets the yumdb tsflag_nodocs.
 On the other hand, the only way to change the installed languages is
via. the rpm macro ... so while anaconda doesn't use the yum
configuration to do it, I believe yum will still see that the rpm macro
has changes and get/set yumdb ts_install_langs correctly.

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-10 Thread James Antill
On Thu, 2014-04-10 at 10:42 +0300, Marius A wrote:

 Wow, this is exactly what I was looking for. Thanks!
 On Fedora 21, any way to apply these before installing to SDD from live usb
 image? e.g. open terminal, run fs filter's, then start the install?

 So the way yum fs filter works is to change the yum configuration for
tsflags and override_install_langs.
 If you specify --installroot when running the filter command then yum
should write the new yum.conf within the installroot. Then when you run
the next installroot command, to actually install, it will pickup those
configurations and dtrt.
 You can also use --setopt to set them too, or .conf.blah if you are
using the API.

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-10 Thread James Antill
On Wed, 2014-04-09 at 23:10 +0200, Florian Festi wrote:
 On 04/09/2014 08:42 PM, Bill Nottingham wrote:
  Given the number of packages that ship localization, this seems like it
  would have a pretty dramatic effect on metadata size. Is this a concern?
 
 Meta data is a concern. But the major part of the meta data is file data
 and change logs. Everything else is less than 10%. So doubling or even
 tripling this part won't hurt.

 I'm not sure what you mean by 10% here, but tripling primary would hurt
a lot. Eg. for Fedora 18/updates we have:

404K comps-f18.xml.gz
 17M filelists.sqlite.bz2
6.2M other.sqlite.bz2
780K pkgtags.sqlite.gz
2.7M prestodelta.xml.gz
 12M primary.sqlite.bz2
1.2M updateinfo.xml.gz

...and downloading ~15M does matter, so while compression helps and we
are already in a lot of pain ... more pain is more pain. Also this
locally turns into:

  86M filelists_db.sqlite
  34M other_db.sqlite
 1.8M pkgtags.sqlite
  13M prestodelta.xml
  51M primary_db.sqlite
  13M updateinfo.xml

...and randomly using 80+MB of extra disk space is also painful in some
use cases.

 Not that I assume splitting lanauges and docs. into sub packages would
triple primary numbers, but if it did ... that would be bad.
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-10 Thread Bill Nottingham
James Antill (ja...@fedoraproject.org) said: 
  Not that I assume splitting lanauges and docs. into sub packages would
 triple primary numbers, but if it did ... that would be bad.

To put it in perspective, if we split out 'langpacks' for apps per language,
something like gedit then grows *100* new subpackages.

Bill
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-10 Thread Andrew Price

On 10/04/14 17:05, Bill Nottingham wrote:

James Antill (ja...@fedoraproject.org) said:

  Not that I assume splitting lanauges and docs. into sub packages would
triple primary numbers, but if it did ... that would be bad.


To put it in perspective, if we split out 'langpacks' for apps per language,
something like gedit then grows *100* new subpackages.

Bill


It's a shame we can't store .mo files compressed. The ratio seems quite 
good:


[root@phanto ~]# cd /usr/share
[root@phanto share]# cp -r locale locale-compressed
[root@phanto share]# find locale-compressed -type f -name '*.mo' -exec 
bzip2 --best {} \;

[root@phanto share]# du -sh locale locale-compressed
657Mlocale
245Mlocale-compressed

(NB this isn't a newly installed system.)

Andy
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-10 Thread Peter Oliver
On 9 April 2014 22:10, Florian Festi ffe...@redhat.com wrote:

 On 04/09/2014 08:42 PM, Bill Nottingham wrote:
  Given the number of packages that ship localization, this seems like it
  would have a pretty dramatic effect on metadata size. Is this a concern?

 Meta data is a concern. But the major part of the meta data is file data
 and change logs. Everything else is less than 10%. So doubling or even
 tripling this part won't hurt.

What about performance?  I don't have any figures, but my feeling was
that TeX seemed to update awfully slowly after it was split into many
small packages.

-- 
Peter Oliver
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-10 Thread Basil Mohamed Gohar
On 04/10/2014 01:23 PM, Peter Oliver wrote:
 On 9 April 2014 22:10, Florian Festi ffe...@redhat.com wrote:

 On 04/09/2014 08:42 PM, Bill Nottingham wrote:
 Given the number of packages that ship localization, this seems like it
 would have a pretty dramatic effect on metadata size. Is this a concern?

 Meta data is a concern. But the major part of the meta data is file data
 and change logs. Everything else is less than 10%. So doubling or even
 tripling this part won't hurt.
 
 What about performance?  I don't have any figures, but my feeling was
 that TeX seemed to update awfully slowly after it was split into many
 small packages.
 

If package metadata is a problem, what if we split up the repositories
and allocate some, that we can deem to be, to some degree, optional, to
be for these less-than-mandatory packages.

So, for example, if the extra languages packages are put into their own
repository.  This would, of course, be unfair to the languages that are
not considered main, and this would likely heavily be biased towards
English given it probably has the widest coverage.

But what if manpages were in their own repository?

I guess my point is, can we spread the problem out across semi-optional
repositories and handle dependencies in a soft a way such that they'll
be installed if they are present [i.e., the repository(-ies) with the
given dependency(-ies) is/are present] but then the install continues
without a problem except maybe a gentle notice that there exist optional
dependencies so someone can choose to enable the associated repositories?

I don't know if this will introduce more problems than it solves, but
for the typical 1TB+ desktop user of Fedora, we can enable pretty-much
all of these optional repositories, and for the embedded and/or
minimal/micro installs, these optional repositories can be left unenabled.

I think this would require fewer changes to the dependency logic and RPM
itself than, say, a complicated set of flags and package labeling/tagging.

P.S.  Please forgive me if I use terms that might have specific meaning
to the packaging team (maybe tagging means something I don't intend in
that context, I'm using it generically).

-- 
Libre Video
http://librevideo.org
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-10 Thread James Antill
On Thu, 2014-04-10 at 12:05 -0400, Bill Nottingham wrote:
 James Antill (ja...@fedoraproject.org) said: 
   Not that I assume splitting lanauges and docs. into sub packages would
  triple primary numbers, but if it did ... that would be bad.
 
 To put it in perspective, if we split out 'langpacks' for apps per language,
 something like gedit then grows *100* new subpackages.

 FWIW here is some data (For x86_64):

Ver | pkgs. num. | pkgs. size | primary size

 10 | 14,303 |  16 G  |  8.2M
 11 | 16,577 |  20 G  | 11M
 12 | 19,122 |  17 G  | 12M
 13 | 20,840 |  20 G  | 13M
 14 | 22,161 |  22 G  | 14M
 15 | 24,085 |  23 G  | 14M
 16 | 25,098 |  25 G  | 15M
 17 | 27,033 |  27 G  | 15M
 18 | 33,868 |  33 G  | 18M
 19 | 36,253 |  36 G  | 18M
 20 | 38,561 |  38 G  | 19M

...which gives about 500-600 bytes of primary per. package. Doing the
same thing for updates gives:

Ver | pkgs. num. | pkgs. size | primary size

 10 |  9,024 |  11 G  |  6M
 11 | 10,066 |  13 G  |  6.6M
 12 |  9,645 |  12 G  |  6.4M
 13 |  9,655 |  12 G  |  6.5M
 14 |  9,982 |  13 G  |  6.8M
 15 | 10,214 |  13 G  |  7.1M
 16 | 11,055 |  15 G  |  7.6M
 17 | 13,163 |  18 G  |  8.4M
 18 | 18,606 |  20 G  | 12M

...which is a bit more at about 650 bytes per. package, probably due to
compression not working as well with small numbers of packages.

 So to do some math with F20:

 in @^minimal-environment gives me 218 packages, so adding an extra
docs package to just those is ~120k in release primary MD
 in @^web-server-environment (which requires filelists to resolve,
nice) is 524 packages so you are at ~300k
 in @^gnome-desktop-environment is 1,265 packages and you are at
~750k.

...if you added 100x the packages to even the first though, it would
obviously be pretty bad.




 Stats. generating using:

repo=fedora

for num in $(seq 10 20); do
yum --disablerepo=\* --enablerepo=$repo repoinfo $repo --releasever=$num | \
  egrep -- '-(name|pkg|size)'
( cd /var/cache/yum/x86_64/$num/$repo; ls --size -h *primary* )
done

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-10 Thread J. Randall Owens
On 04/09/2014 12:57 PM, James Antill wrote:
 On Wed, 2014-04-09 at 12:37 +0300, Ville Skyttä wrote:
 On Wed, Apr 9, 2014 at 10:33 AM, Marius A marius1...@gmail.com wrote:
 1. remove /usr/share/docs

 Try this in /etc/rpm/macros.whatever:
 %_excludedocs 1
 
  For recent yum it's significantly better to do:
 
 yum fs filter nodocs
 
 Try this in /etc/rpm/macros.whatever:
 %_install_langs en
 
  Dito. to get rid of extra languages by:
 
 yum fs filter langs en
 
 ...then you can yum fs refilter / yum fs refilter-cleanup.
 
 It's possible that these settings break some things such as scriptlets
 that do not take missing files into account, but at least they're
 cleaner attempts than simply deleting installed files/dirs.
 
  This can still be true though.
 

Of course, this would all be much more obvious if the `yum help` output
didn't say fs  Creates filesystem snapshots, or lists/deletes current
snapshots, exactly what it also says for fssnapshot. Bug filed. [1]

[1] https://bugzilla.redhat.com/show_bug.cgi?id=1086461

-- 
J. Randall Owens | http://www.ghiapet.net/
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

trimming down Fedora installed size

2014-04-09 Thread Marius A
Hi there,

I've been struggling keeping a fedora 20 install on a small SSD, with 6gb
/ partition (/home is separate).

Besides removing packages, I also found this useful:

1. remove /usr/share/docs
2. remove /usr/share/locale/* (all except en and en_US)
3. cleanup /var/log/journal, which seems it's not automatically rotated

While this saves space, it also results in package upgrade warnings due to
missing files.

Are there any other disk space saving tips?

What do you think about excluding docs by default in Fedora packages?
And for docs either go online, or have a command to install/sync docs for
all installed packages? (similar to ruby or npm packages install, not using
rpm packages)

I think less than 0.1% of users ever look into /usr/share/doc, but I don't
have any data to back this up.
As more folks switch to SSDs, it would benefit both for disk space saving
and wearing to have less space occupied by default.

Thanks
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Ville Skyttä
On Wed, Apr 9, 2014 at 10:33 AM, Marius A marius1...@gmail.com wrote:
 1. remove /usr/share/docs

Try this in /etc/rpm/macros.whatever:
%_excludedocs 1

But that'll exclude _all_ files marked as docs in packages such as man
pages, it's not limited to /usr/share/doc. You might also/instead want
to try this:
%_netsharedpath %{_datadir}/doc

 2. remove /usr/share/locale/* (all except en and en_US)

Try this in /etc/rpm/macros.whatever:
%_install_langs en

It's possible that these settings break some things such as scriptlets
that do not take missing files into account, but at least they're
cleaner attempts than simply deleting installed files/dirs.
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Michal Schmidt
On 04/09/2014 09:33 AM, Marius A wrote:
 3. cleanup /var/log/journal, which seems it's not automatically rotated

It's supposed to be automatic. How big did it become on your system?
If the default size limits do not suit you, you can change them in
/etc/systemd/journald.conf.

Michal

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Jóhann B. Guðmundsson


On 04/09/2014 07:33 AM, Marius A wrote:


Are there any other disk space saving tips?


Users should not have to result doing disk saving tips.

I would say in the long run we should be working towards creating 
separated locale,doc,man packages


JBG
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Stephen Gallagher
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 04/09/2014 07:23 AM, Jóhann B. Guðmundsson wrote:
 
 On 04/09/2014 07:33 AM, Marius A wrote:
 
 Are there any other disk space saving tips?
 
 Users should not have to result doing disk saving tips.
 
 I would say in the long run we should be working towards creating 
 separated locale,doc,man packages

Hmm, I wonder if RPM 4.12 would allow us to do this with weak
dependencies?

Perhaps something like having a metapackage on the system for docs and
one for each language. Then we could break up the doc and language
packages into sub-packages that are installed conditionally on the
presence of that metapackage on the system.

Of course, I think there would still be work needed in RPM to support
adding a language later, but maybe we could solve that with special
tooling or a yum plugin.

-BEGIN PGP SIGNATURE-
Version: GnuPG v1
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iEYEARECAAYFAlNFNA0ACgkQeiVVYja6o6P3SgCfRoJnKbSe/2g6/HIZkzkYAJRc
iDcAoKRygNTlNDEIbf8j46e94RowXtis
=OpG3
-END PGP SIGNATURE-
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Jóhann B. Guðmundsson


On 04/09/2014 11:50 AM, Stephen Gallagher wrote:

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 04/09/2014 07:23 AM, Jóhann B. Guðmundsson wrote:

On 04/09/2014 07:33 AM, Marius A wrote:

Are there any other disk space saving tips?

Users should not have to result doing disk saving tips.

I would say in the long run we should be working towards creating
separated locale,doc,man packages

Hmm, I wonder if RPM 4.12 would allow us to do this with weak
dependencies?

Perhaps something like having a metapackage on the system for docs and
one for each language. Then we could break up the doc and language
packages into sub-packages that are installed conditionally on the
presence of that metapackage on the system.

Of course, I think there would still be work needed in RPM to support
adding a language later, but maybe we could solve that with special
tooling or a yum plugin.


Yeah and we probably have to move the man packages in their own 
sub-package once the rpm trigger that replaces the cron job lands


JBG

--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Matthew Miller
On Wed, Apr 09, 2014 at 07:50:37AM -0400, Stephen Gallagher wrote:
  I would say in the long run we should be working towards creating 
  separated locale,doc,man packages
 Hmm, I wonder if RPM 4.12 would allow us to do this with weak
 dependencies?
 Perhaps something like having a metapackage on the system for docs and
 one for each language. Then we could break up the doc and language
 packages into sub-packages that are installed conditionally on the
 presence of that metapackage on the system.
 Of course, I think there would still be work needed in RPM to support
 adding a language later, but maybe we could solve that with special
 tooling or a yum plugin.

+1 to all of this. Needs:

  * rpm macros, possibly other RPM work
  * packaging guidelines
  * yum/dnf tooling
  * a plan for realistically getting from where we are now to where we
want to be
  * executing on that plan

Cloud SIG has a lot of interest in this and we may be able to find some
contributors to the effort there.

https://fedoraproject.org/wiki/Changes/Use_license_macro_in_RPMs_for_packages_in_Cloud_Image

could be a model (and is in fact a prerequisite).

-- 
Matthew Miller--   Fedora Project--mat...@fedoraproject.org
  Tepid change for the somewhat better!
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Florian Festi
On 04/09/2014 01:50 PM, Stephen Gallagher wrote:
 On 04/09/2014 07:23 AM, Jóhann B. Guðmundsson wrote:
 
 On 04/09/2014 07:33 AM, Marius A wrote:

 Are there any other disk space saving tips?
 
 Users should not have to result doing disk saving tips.
 
 I would say in the long run we should be working towards creating
 separated locale,doc,man packages
 
 Hmm, I wonder if RPM 4.12 would allow us to do this with weak
 dependencies?
 
 Perhaps something like having a metapackage on the system for docs and
 one for each language. Then we could break up the doc and language
 packages into sub-packages that are installed conditionally on the
 presence of that metapackage on the system.
 
 Of course, I think there would still be work needed in RPM to support
 adding a language later, but maybe we could solve that with special
 tooling or a yum plugin.

Yes, this is one of the reasons we go for more expressive relations in
RPM. You already very closely describe what I have in mind.

There are basically two possible ways of making the distribution more
flexible in the future:

1) Normal weak dependencies. In a normal install all the docs (and all
other bells and whistles) get installed by default. You can
remove/deselect packages which are pulled in by weak dependencies. You
can even switch off all weak dependencies to only get the core packages.

2) Rich dependencies. Doc and language packages can be build as
bridging packages that are only installed if two other packages are
present. This can be done by adding e.g.

Recommends: foo-langpack-hu if langsupport-hu

to package foo or

Supplements: foo and langsupport-hu

to the foo-langpack-hu package. Similar things can be done for docs or
any other set of packages that should be controlled by a single switch
package.

The nice thing about this is that no additional tooling is needed.
Installing foo will automatically install the lang packs for all
installed languages and installing a new langsupport package will
install the langpacks for all installed packages.

The plan is to get all pieces for 1) into F21. So it could already be
used for F22. I will try to get 2) ready in this time frame, too, but
the bets are still open.

Florian
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Matthew Miller
On Wed, Apr 09, 2014 at 10:33:25AM +0300, Marius A wrote:
 I've been struggling keeping a fedora 20 install on a small SSD, with 6gb
 / partition (/home is separate).

This part of conversation probably belongs on the user list rather than
devel. But there are some development-related aspects (see rest of thread)
and while we're at it, I have some constructive practical points as well.

 2. remove /usr/share/locale/* (all except en and en_US)

Also do 

localedef --delete-from-archive $(localedef --list-archive | grep -v -i ^$LANG 
| xargs)

mv /usr/lib/locale/locale-archive  /usr/lib/locale/locale-archive.tmpl

build-locale-archive


 3. cleanup /var/log/journal, which seems it's not automatically rotated

It actually _is_ automatically rotated. See /etc/systemd/journald.conf and
`man journald.conf`. Particularly, look at SystemMaxUse, SystemKeepFree, and
MaxRetentionSec.

-- 
Matthew Miller--   Fedora Project--mat...@fedoraproject.org
  Tepid change for the somewhat better!
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Basil Mohamed Gohar
On 04/09/2014 03:33 AM, Marius A wrote:
 
 I think less than 0.1% of users ever look into /usr/share/doc, but I
 don't have any data to back this up. 

I think I must fit into this 0.1% (and I am not disputing that that is
the correct ratio, either) because I definitely use /usr/share/doc, but
mostly because that holds more than just documentation.  For example,
avahi stores example service definitions for ssh and sftp under
/usr/share/doc, and I believe this behavior exists with other packages
for non-strictly-documentation data.

I don't know what the standard is for defining what, if anything, should
be placed under /usr/share/doc, but as it stands now, we should at least
know and acknowledge that it's not just READMEs and HTML files when we
make the decision to not install it by default or to reduce the chance
that it's installed.

Having said that, I am all for saving space on a default install and/or
making a more minimal install possible.  I noticed just now that
manpages are compressed, but with gz.  I am sure this discussion has
already happened, but maybe we can have an alternative man-xz format
that will reduce the size of the individual packages for a Fedora
Minimal or somesuch (I think manpages should be very, very far down on
the list of what to be left out from an install, as they are sometimes
the last resort on what to do).

My two bits on the idea.

-- 
Libre Video
http://librevideo.org
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Matthew Miller
On Wed, Apr 09, 2014 at 09:53:10AM -0400, Basil Mohamed Gohar wrote:
 I think I must fit into this 0.1% (and I am not disputing that that is
 the correct ratio, either) because I definitely use /usr/share/doc, but
 mostly because that holds more than just documentation.  For example,
 avahi stores example service definitions for ssh and sftp under
 /usr/share/doc, and I believe this behavior exists with other packages
 for non-strictly-documentation data.

This is a packaging bug and should (probably must) be fixed.

-- 
Matthew Miller--   Fedora Project--mat...@fedoraproject.org
  Tepid change for the somewhat better!
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Stephen Gallagher
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 04/09/2014 10:01 AM, Matthew Miller wrote:
 On Wed, Apr 09, 2014 at 09:53:10AM -0400, Basil Mohamed Gohar
 wrote:
 I think I must fit into this 0.1% (and I am not disputing that
 that is the correct ratio, either) because I definitely use
 /usr/share/doc, but mostly because that holds more than just
 documentation.  For example, avahi stores example service
 definitions for ssh and sftp under /usr/share/doc, and I believe
 this behavior exists with other packages for
 non-strictly-documentation data.
 
 This is a packaging bug and should (probably must) be fixed.
 

Why is this a packaging bug? %doc is allowed to contain anything that
is not used by the package for runtime execution. It's very common
(and appropriate!) to have things like example config files in %doc.
-BEGIN PGP SIGNATURE-
Version: GnuPG v1
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iEYEARECAAYFAlNFVN0ACgkQeiVVYja6o6OBywCgrYgmx8fjMrhIRLHLwPc8g9jv
NGQAoKudkM+C7x56tY8bwjXE3ziCUKOT
=b7Cg
-END PGP SIGNATURE-
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Matthew Miller
On Wed, Apr 09, 2014 at 10:10:37AM -0400, Stephen Gallagher wrote:
  I think I must fit into this 0.1% (and I am not disputing that
  that is the correct ratio, either) because I definitely use
  /usr/share/doc, but mostly because that holds more than just
  documentation.  For example, avahi stores example service
  definitions for ssh and sftp under /usr/share/doc, and I believe
  this behavior exists with other packages for
  non-strictly-documentation data.
  This is a packaging bug and should (probably must) be fixed.
 Why is this a packaging bug? %doc is allowed to contain anything that
 is not used by the package for runtime execution. It's very common
 (and appropriate!) to have things like example config files in %doc.

Sorry, I missed the word example. Examples _are_ just documentation,
pretty much by definition, and shouldn't be required at runtime. So I'm not
seeing a problem here.

-- 
Matthew Miller--   Fedora Project--mat...@fedoraproject.org
  Tepid change for the somewhat better!
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Ralf Corsepius

On 04/09/2014 04:01 PM, Matthew Miller wrote:

On Wed, Apr 09, 2014 at 09:53:10AM -0400, Basil Mohamed Gohar wrote:

I think I must fit into this 0.1% (and I am not disputing that that is
the correct ratio, either) because I definitely use /usr/share/doc, but
mostly because that holds more than just documentation.  For example,
avahi stores example service definitions for ssh and sftp under
/usr/share/doc, and I believe this behavior exists with other packages
for non-strictly-documentation data.


This is a packaging bug and should (probably must) be fixed.


Pardon, but you're not right: Examples are considered to be documentation.

Ralf

--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Ralf Corsepius

On 04/09/2014 03:53 PM, Basil Mohamed Gohar wrote:


Having said that, I am all for saving space on a default install and/or
making a more minimal install possible.  I noticed just now that
manpages are compressed, but with gz.  I am sure this discussion has
already happened, but maybe we can have an alternative man-xz format
that will reduce the size of the individual packages for a Fedora
Minimal or somesuch (I think manpages should be very, very far down on
the list of what to be left out from an install, as they are sometimes
the last resort on what to do).


SUSE once ( 10 years ago) had used *.bz2-compressed manpages, but for a 
while they also have returned to *.gz.


I don't know why they did so, but I'd guess it simply doesn't pay-off 
size-wise and introduced too much of a penalty speed-wise.


So, I'd question the usefulness of not installing man-pages, because 
their sizes are comparatively small on today's disk-scales, e.g. on my 
primary system:

# du -sh /usr/share/man
89M /usr/share/man

That's almost neglibile in comparision to the overall size of the 
installation.


Ralf

--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Matthias Clasen
On Wed, 2014-04-09 at 08:39 -0400, Matthew Miller wrote:
 On Wed, Apr 09, 2014 at 07:50:37AM -0400, Stephen Gallagher wrote:
   I would say in the long run we should be working towards creating 
   separated locale,doc,man packages
  Hmm, I wonder if RPM 4.12 would allow us to do this with weak
  dependencies?
  Perhaps something like having a metapackage on the system for docs and
  one for each language. Then we could break up the doc and language
  packages into sub-packages that are installed conditionally on the
  presence of that metapackage on the system.
  Of course, I think there would still be work needed in RPM to support
  adding a language later, but maybe we could solve that with special
  tooling or a yum plugin.
 
 +1 to all of this. Needs:
 
   * rpm macros, possibly other RPM work
   * packaging guidelines
   * yum/dnf tooling
   * a plan for realistically getting from where we are now to where we
 want to be
   * executing on that plan

From the desktop/workstation perspective, here are a few things I would
like to see if we decide to work on this:

Support for a new locale is more or less like a 'system extension' for
the OS. It would be good to define clear rules for what it means to
provide a subpackage that becomes part of this system extension.

In an ideal world, this could even be automatic and pattern-based (e.g.
if you install anything into /usr/lib64/gstreamer-1.0, you are providing
a 'codec' extension, and all the files below that directory belong to
it).

To present this in the UI, we need to know the available 'extension
points' (either a fixed list, or a way to enumerate them), as well as
the installed and available extensions for each, including suitable
metadata (name+short description at least).

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Jóhann B. Guðmundsson


On 04/09/2014 02:31 PM, Ralf Corsepius wrote:


So, I'd question the usefulness of not installing man-page


It's more about getting to the point of being able to remove them and or 
have the option not to install them.


Whether they should or should not be installed by default depends on 
people personal preferences and SIG's uses cases/target audience


Embedded  + cloud + containers probably want to remove them

Server + desktop probably wants to keep them

And to you 89m is little, to me it's much so fourth and so on...

JBG
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Martin Langhoff
On Wed, Apr 9, 2014 at 10:31 AM, Ralf Corsepius rc040...@freenet.de wrote:
 So, I'd question the usefulness of not installing man-pages, because their
 sizes are comparatively small on today's disk-scales, e.g. on my primary
 system:
 # du -sh /usr/share/man
 89M /usr/share/man

 That's almost neglibile in comparision to the overall size of the
 installation.

Disk usage of many small files can be disproportionate. On some
platforms -- embedded, lightweight VMs, the savings are sometimes
important. They sure were on XO-1 not that long ago, and I'm not sure
what I'd do with docs and manages in an on-demand VMs.

Having said that, exclude_docs and install_langs have worked well for
OLPC and work reasonably well for lightweight VMs too.

I am not arguing for big changes here. The plans outlined seem doable,
but reworking the whole distro into doc packages to fix something that
already works /reasonably well/ seems... not cost effective.

There are some limited use cases that aren't ideal now with
install_lang and exclude_docs. For example, installing missing docs or
langs -- for all or some packages. But that seems like it could be
solved by a script that drives rpm to do just that.

cheers,




m
-- 
 martin.langh...@gmail.com
 -  ask interesting questions
 - don't get distracted with shiny stuff  - working code first
 ~ http://docs.moodle.org/en/User:Martin_Langhoff
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Corey Sheldon
may be easier to just rewrite the mandb for it rather than create extra
confusion of two man pages


Corey W Sheldon
Owner, 1st Class Mobile Shine
310.909.7672
www.facebook.com/1stclassmobileshine


On Wed, Apr 9, 2014 at 10:49 AM, Jóhann B. Guðmundsson johan...@gmail.com
 wrote:


 On 04/09/2014 02:31 PM, Ralf Corsepius wrote:


 So, I'd question the usefulness of not installing man-page


 It's more about getting to the point of being able to remove them and or
 have the option not to install them.

 Whether they should or should not be installed by default depends on
 people personal preferences and SIG's uses cases/target audience

 Embedded  + cloud + containers probably want to remove them

 Server + desktop probably wants to keep them

 And to you 89m is little, to me it's much so fourth and so on...

 JBG

 --
 devel mailing list
 devel@lists.fedoraproject.org
 https://admin.fedoraproject.org/mailman/listinfo/devel
 Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Martin Langhoff
On Wed, Apr 9, 2014 at 10:49 AM, Jóhann B. Guðmundsson
johan...@gmail.com wrote:
 It's more about getting to the point of being able to remove them and or
 have the option not to install them.

See my other email on this thread. Following on what I wrote there,
instead of reworking all the packages across the distro, a script can
be written to achieve the equivalent of exclude_docs.

 Embedded  + cloud + containers probably want to remove them

Those already work right with exclude_docs --  I have been a primary
user of both use cases (OLPC as embedded, cloud/containers now).

cheers,



m
-- 
 martin.langh...@gmail.com
 -  ask interesting questions
 - don't get distracted with shiny stuff  - working code first
 ~ http://docs.moodle.org/en/User:Martin_Langhoff
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Alexey I. Froloff
On Wed, Apr 09, 2014 at 02:49:56PM +, Jóhann B. Guðmundsson wrote:
 So, I'd question the usefulness of not installing man-page
 It's more about getting to the point of being able to remove them and
 or have the option not to install them.
Since man pages are marked as %doc, you can use %_excludedocs
macro:

$ grep -B2 excludedoc /usr/lib/rpm/macros 
#   Boolean (i.e. 1 == yes, 0 == no) that controls whether files
#   marked as %doc should be installed.
#%_excludedocs

And also:

$ grep -B3 install_langs /usr/lib/rpm/macros 
#   A colon separated list of desired locales to be installed;
#   all means install all locale specific files.
#   
%_install_langs all

-- 
Regards,--
Sir Raorn.   --- https://plus.google.com/+AlexeyFroloff


pgpSHNhRvZ_wA.pgp
Description: PGP signature
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Jóhann B. Guðmundsson


On 04/09/2014 02:59 PM, Alexey I. Froloff wrote:

On Wed, Apr 09, 2014 at 02:49:56PM +, Jóhann B. Guðmundsson wrote:

So, I'd question the usefulness of not installing man-page

It's more about getting to the point of being able to remove them and
or have the option not to install them.

Since man pages are marked as %doc, you can use %_excludedocs
macro:

$ grep -B2 excludedoc /usr/lib/rpm/macros
#   Boolean (i.e. 1 == yes, 0 == no) that controls whether files
#   marked as %doc should be installed.
#%_excludedocs

And also:

$ grep -B3 install_langs /usr/lib/rpm/macros
#   A colon separated list of desired locales to be installed;
#   all means install all locale specific files.
#   
%_install_langs all


Does not solve the problem of dependency like for example if we want to 
get rid of man-db and it's dependency's so forth and so on.


The only way we can move forward is *fixing* our dependency tree. It is 
a mess to say the least


JBG
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Florian Festi
On 04/09/2014 04:53 PM, Matthias Clasen wrote:
 From the desktop/workstation perspective, here are a few things I would
 like to see if we decide to work on this:
 
 Support for a new locale is more or less like a 'system extension' for
 the OS. It would be good to define clear rules for what it means to
 provide a subpackage that becomes part of this system extension.

Yes, but my guess this is not very complicated. Natural languages are
pretty straight forward. All other 'system extension' will basically
come with their own description. We just have to make sure that the
description as shown to the user is not completely ignored by the
packages using it.

 In an ideal world, this could even be automatic and pattern-based (e.g.
 if you install anything into /usr/lib64/gstreamer-1.0, you are providing
 a 'codec' extension, and all the files below that directory belong to
 it).

*cough* *cough*

 To present this in the UI, we need to know the available 'extension
 points' (either a fixed list, or a way to enumerate them), as well as
 the installed and available extensions for each, including suitable
 metadata (name+short description at least).

We need the rethink the whole packaging UI anyway. Comps still has all
its known problems. SoftwareCenter has its own, very special view on the
packages, and no one has a clue how to make use of the weak weak
dependencies (which are not completely unlike optional packages in comps).

So making the number of installed and available packages more manageable
is one of the next big things that need to be done after the basic
infrastructure is in place.

Florian
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Alexey I. Froloff
On Wed, Apr 09, 2014 at 03:00:24PM +, Jóhann B. Guðmundsson wrote:
 Does not solve the problem of dependency like for example if we want
 to get rid of man-db and it's dependency's so forth and so on.
Well, it does solve the wasted disk space problem.

 The only way we can move forward is *fixing* our dependency tree. It
 is a mess to say the least
I second that...

-- 
Regards,--
Sir Raorn.   --- https://plus.google.com/+AlexeyFroloff


pgp9aIjMXWF1r.pgp
Description: PGP signature
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Stephen Gallagher
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 04/09/2014 08:42 AM, Florian Festi wrote:
 On 04/09/2014 01:50 PM, Stephen Gallagher wrote:
 On 04/09/2014 07:23 AM, Jóhann B. Guðmundsson wrote:
 
 On 04/09/2014 07:33 AM, Marius A wrote:
 
 Are there any other disk space saving tips?
 
 Users should not have to result doing disk saving tips.
 
 I would say in the long run we should be working towards
 creating separated locale,doc,man packages
 
 Hmm, I wonder if RPM 4.12 would allow us to do this with weak 
 dependencies?
 
 Perhaps something like having a metapackage on the system for
 docs and one for each language. Then we could break up the doc
 and language packages into sub-packages that are installed
 conditionally on the presence of that metapackage on the system.
 
 Of course, I think there would still be work needed in RPM to
 support adding a language later, but maybe we could solve that
 with special tooling or a yum plugin.
 
 Yes, this is one of the reasons we go for more expressive relations
 in RPM. You already very closely describe what I have in mind.
 
 There are basically two possible ways of making the distribution
 more flexible in the future:
 
 1) Normal weak dependencies. In a normal install all the docs (and
 all other bells and whistles) get installed by default. You can 
 remove/deselect packages which are pulled in by weak dependencies.
 You can even switch off all weak dependencies to only get the core
 packages.
 
 2) Rich dependencies. Doc and language packages can be build as 
 bridging packages that are only installed if two other packages
 are present. This can be done by adding e.g.
 
 Recommends: foo-langpack-hu if langsupport-hu
 
 to package foo or
 
 Supplements: foo and langsupport-hu


This construct would be extremely valuable to the SSSD as well:

%package -n client
Recommends: sssd-client.i686 if glibc.i686



 
 to the foo-langpack-hu package. Similar things can be done for docs
 or any other set of packages that should be controlled by a single
 switch package.
 
 The nice thing about this is that no additional tooling is needed. 
 Installing foo will automatically install the lang packs for all 
 installed languages and installing a new langsupport package will 
 install the langpacks for all installed packages.
 



The second half of this statement is the exciting part to me.

It's pretty easy to install a language at package-install time, but in
order to add the language subpackages for all installed packages on
the system if the new langsupport package comes in will mean
re-processing all of the dependencies on the installed packages.
Probably very slow, but certainly valuable.

 The plan is to get all pieces for 1) into F21. So it could already
 be used for F22. I will try to get 2) ready in this time frame,
 too, but the bets are still open.
 

This would be fantastic, now we just need the FPC to agree. Might be
worth filing an FPC bug or two now for them to debate before pushing
too hard here.

-BEGIN PGP SIGNATURE-
Version: GnuPG v1
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iEYEARECAAYFAlNFZeQACgkQeiVVYja6o6Nv7ACgom5qypruoq68WLtnFqLydelm
ykkAn21vSW53VnMypMNz+amO9AaTfKrl
=CKpf
-END PGP SIGNATURE-
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Florian Festi
On 04/09/2014 05:23 PM, Stephen Gallagher wrote:
 This construct would be extremely valuable to the SSSD as well:
 
 %package -n client
 Recommends: sssd-client.i686 if glibc.i686

That's not exactly by accident...

 It's pretty easy to install a language at package-install time, but in
 order to add the language subpackages for all installed packages on
 the system if the new langsupport package comes in will mean
 re-processing all of the dependencies on the installed packages.
 Probably very slow, but certainly valuable.

Well, there is a reason why Fedora is moving to a new dependency solver.
I am pretty optimistic about performance.

 The plan is to get all pieces for 1) into F21. So it could already
 be used for F22. I will try to get 2) ready in this time frame,
 too, but the bets are still open.
 
 This would be fantastic, now we just need the FPC to agree. Might be
 worth filing an FPC bug or two now for them to debate before pushing
 too hard here.

For now there is just https://fedoraproject.org/wiki/Changes/RPM-4.12

I will talk to the FPC as soon as the parts are all in place. Be aware
that it is not enough to just implement the stuff. It needs to be tested
and to make its way to the builders. Even with a hurry things need quite
some time in RPM land.

Florian
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Ralf Corsepius

On 04/09/2014 04:49 PM, Jóhann B. Guðmundsson wrote:


On 04/09/2014 02:31 PM, Ralf Corsepius wrote:


So, I'd question the usefulness of not installing man-page


It's more about getting to the point of being able to remove them and or
have the option not to install them.


Well, rpm-wise, all files marked %doc are considered to be optional.

I.e. rm -rf /usr/share/doc/* etc. are supposed to work
= rpm issuing warnings/errors after %doc-files removals should be 
considered  to be packaging bugs (I don't have a case at hand, but know 
there are such bugs).



Whether they should or should not be installed by default depends on
people personal preferences and SIG's uses cases/target audience

Embedded  + cloud + containers probably want to remove them

Server + desktop probably wants to keep them

And to you 89m is little, to me it's much so fourth and so on...


C'mon, we have packages whose install-sizes are measured in 10ths and 
100s of MBs ... and we have other dirs which can easily grow beyond any 
limits.


Same system as before:
# du -sh /var/cache /usr
13G /var/cache
8.8G/usr

Ralf




--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Jóhann B. Guðmundsson


On 04/09/2014 04:14 PM, Ralf Corsepius wrote:




C'mon, we have packages whose install-sizes are measured in 10ths and 
100s of MBs ... and we have other dirs which can easily grow beyond 
any limits. 


I was refering to it being in the eye of the beholder so to speak but as 
I see it we need to start working towards shrinking the core/base of the 
distribution to the size of posted stamp compare to the bloat we are 
now, to keep us agile enough and relevant for the next generation of 
tinkerers embedded as well as to be able to serve the cloud and 
container market.


In doing so we need to fix dependency and drop or make it optional to 
add or remove various components ( agile ) as well as the legacy cruff 
which everybody hold so dear to, in the process.


copr presents us with the ability to mapping out and make such drastic 
changes without having to cause disruption to Fedora in general and 
people work flows until things have been properly fixed and prepared to 
do so.


Something we did not have when we decide to replace the distribution 
init system.


JBG
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Bill Nottingham
Florian Festi (ffe...@redhat.com) said: 
 1) Normal weak dependencies. In a normal install all the docs (and all
 other bells and whistles) get installed by default. You can
 remove/deselect packages which are pulled in by weak dependencies. You
 can even switch off all weak dependencies to only get the core packages.
 
 2) Rich dependencies. Doc and language packages can be build as
 bridging packages that are only installed if two other packages are
 present. This can be done by adding e.g.
 
 Recommends: foo-langpack-hu if langsupport-hu
 
 to package foo or
 
 Supplements: foo and langsupport-hu
 
 to the foo-langpack-hu package. Similar things can be done for docs or
 any other set of packages that should be controlled by a single switch
 package.

Given the number of packages that ship localization, this seems like it
would have a pretty dramatic effect on metadata size. Is this a concern?

Bill
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread James Antill
On Wed, 2014-04-09 at 12:37 +0300, Ville Skyttä wrote:
 On Wed, Apr 9, 2014 at 10:33 AM, Marius A marius1...@gmail.com wrote:
  1. remove /usr/share/docs
 
 Try this in /etc/rpm/macros.whatever:
 %_excludedocs 1

 For recent yum it's significantly better to do:

yum fs filter nodocs

 Try this in /etc/rpm/macros.whatever:
 %_install_langs en

 Dito. to get rid of extra languages by:

yum fs filter langs en

...then you can yum fs refilter / yum fs refilter-cleanup.

 It's possible that these settings break some things such as scriptlets
 that do not take missing files into account, but at least they're
 cleaner attempts than simply deleting installed files/dirs.

 This can still be true though.

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Billy Crook
I would like to see logic like this:
manpage files don't get installed unless/until:
1) packagename-manpages is requested to be installed by the user.  that
package would require the 'man' package.
OR
2) package is installed AND man is installed.

Don't wan't the manpages taking up disk space?  remove the 'man' package
and all manpages disappear.
Don't use en_US and don't want to waste space on that either, remove the
'localization-en_US' package and its corresponding localizations of all
installed packages will dispapear too.

Localization could work the same way.  Once a package' localization cruft
is large enough to merit the work, the packager would split it out into
${packagename}-en_US packages for each localization.  Distro would maintain
an essentially empty package called localization-en_US, etc for each
localization.  Then when you install a localized package, you get
${packagename}-en_US localization-en_us installed, and if you have more
than one localization package installed, you get the corresponding
localized subpackages of ${package}.


On Wed, Apr 9, 2014 at 2:33 AM, Marius A marius1...@gmail.com wrote:

 Hi there,

 I've been struggling keeping a fedora 20 install on a small SSD, with
 6gb / partition (/home is separate).

 Besides removing packages, I also found this useful:

 1. remove /usr/share/docs
 2. remove /usr/share/locale/* (all except en and en_US)
 3. cleanup /var/log/journal, which seems it's not automatically rotated

 While this saves space, it also results in package upgrade warnings due to
 missing files.

 Are there any other disk space saving tips?

 What do you think about excluding docs by default in Fedora packages?
 And for docs either go online, or have a command to install/sync docs for
 all installed packages? (similar to ruby or npm packages install, not using
 rpm packages)

 I think less than 0.1% of users ever look into /usr/share/doc, but I don't
 have any data to back this up.
 As more folks switch to SSDs, it would benefit both for disk space saving
 and wearing to have less space occupied by default.

 Thanks

 --
 devel mailing list
 devel@lists.fedoraproject.org
 https://admin.fedoraproject.org/mailman/listinfo/devel
 Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Matthew Miller
On Wed, Apr 09, 2014 at 03:57:27PM -0400, James Antill wrote:
  For recent yum it's significantly better to do:
 yum fs filter nodocs
  Dito. to get rid of extra languages by:
 yum fs filter langs en
 ...then you can yum fs refilter / yum fs refilter-cleanup.

So -- if the host is originally installed with anaconda's kickstart options
for nodocs and language selection, will `yum fs refilter` still work?


-- 
Matthew Miller--   Fedora Project--mat...@fedoraproject.org
  Tepid change for the somewhat better!
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Reindl Harald


Am 09.04.2014 22:05, schrieb Billy Crook:
 I would like to see logic like this:
 manpage files don't get installed unless/until:
 1) packagename-manpages is requested to be installed by the user.  that 
 package would require the 'man' package.
 OR
 2) package is installed AND man is installed.
 
 Don't wan't the manpages taking up disk space?  remove the 'man' package and 
 all manpages disappear.
 Don't use en_US and don't want to waste space on that either, remove the 
 'localization-en_US' package and its
 corresponding localizations of all installed packages will dispapear too

packages i build at my own have package-manpages for any man/doc parts
on all the servers i maintain they are not installed
it's enough to have them on *one* central admin server



signature.asc
Description: OpenPGP digital signature
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread James Antill
On Wed, 2014-04-09 at 10:54 -0400, Martin Langhoff wrote:

 There are some limited use cases that aren't ideal now with
 install_lang and exclude_docs. For example, installing missing docs or
 langs -- for all or some packages. But that seems like it could be
 solved by a script that drives rpm to do just that.

 While the recent yum fs refilter stuff tries to help here, the big
problem is that the exclude-docs/exclude-langs options are transaction
wide ... so you can't do an upgrade and have pkg X with docs and pkg Y
without.

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Billy Crook
On Wed, Apr 9, 2014 at 3:41 PM, Reindl Harald h.rei...@thelounge.netwrote:


 Am 09.04.2014 22:05, schrieb Billy Crook:
  I would like to see logic like this:
  manpage files don't get installed unless/until:
  1) packagename-manpages is requested to be installed by the user.  that
 package would require the 'man' package.
  OR
  2) package is installed AND man is installed.
 
  Don't wan't the manpages taking up disk space?  remove the 'man' package
 and all manpages disappear.
  Don't use en_US and don't want to waste space on that either, remove the
 'localization-en_US' package and its
  corresponding localizations of all installed packages will dispapear too

 packages i build at my own have package-manpages for any man/doc parts
 on all the servers i maintain they are not installed
 it's enough to have them on *one* central admin server


heck, on my desktop I might end up just yum installing *-manpages to save
time later.
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Florian Festi
On 04/09/2014 08:42 PM, Bill Nottingham wrote:
 Given the number of packages that ship localization, this seems like it
 would have a pretty dramatic effect on metadata size. Is this a concern?

Meta data is a concern. But the major part of the meta data is file data
and change logs. Everything else is less than 10%. So doubling or even
tripling this part won't hurt.

The actual issue we have with meta data is that is is downloaded over
and over again (for updates). Should we ever get this fixed the growth
of meta data is no longer an issue.

Florian

-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Ralf Corsepius

On 04/09/2014 10:05 PM, Billy Crook wrote:

I would like to see logic like this:
manpage files don't get installed unless/until:
1) packagename-manpages is requested to be installed by the user.  that
package would require the 'man' package.
OR
2) package is installed AND man is installed.


In other words, you want to crippled end-user usability to NULL.

Ralf


--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Reindl Harald


Am 09.04.2014 23:01, schrieb Billy Crook:
 On Wed, Apr 9, 2014 at 3:41 PM, Reindl Harald h.rei...@thelounge.net 
 mailto:h.rei...@thelounge.net wrote:
 
 
 Am 09.04.2014 22:05, schrieb Billy Crook:
  I would like to see logic like this:
  manpage files don't get installed unless/until:
  1) packagename-manpages is requested to be installed by the user.  that 
 package would require the 'man' package.
  OR
  2) package is installed AND man is installed.
 
  Don't wan't the manpages taking up disk space?  remove the 'man' 
 package and all manpages disappear.
  Don't use en_US and don't want to waste space on that either, remove 
 the 'localization-en_US' package and its
  corresponding localizations of all installed packages will dispapear too
 
 packages i build at my own have package-manpages for any man/doc parts
 on all the servers i maintain they are not installed
 it's enough to have them on *one* central admin server
 
 
 heck, on my desktop I might end up just yum installing *-manpages to save 
 time later

really?

compared how often i reinstall a workstation (never) and how often
i need a manpage because command --help don't answer the question
that is unlikely

how many manpages do you have installed and how many of them
you ever viewed in the past let say 5 years?

escpecially because the goal is to seperate things which does *not*
mean they are not installed in most setups - a meta-package postfix
can pull postfix-server and postfix-manuals while you can remove
the metapackage and postfix-manuals



signature.asc
Description: OpenPGP digital signature
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Jóhann B. Guðmundsson


On 04/09/2014 09:12 PM, Ralf Corsepius wrote:

On 04/09/2014 10:05 PM, Billy Crook wrote:

I would like to see logic like this:
manpage files don't get installed unless/until:
1) packagename-manpages is requested to be installed by the user.  that
package would require the 'man' package.
OR
2) package is installed AND man is installed.


In other words, you want to crippled end-user usability to NULL.


I would not be dwelling to much on the usability topic since we have 
bigger issues to fry then end-user usability with minimal installation 
footprint for cloud/containers/servers which can be easily solve with 
same concept as is behind command-not-found for man-pages as in 
man-page-not-found and move cloud/container/server administration into 
the realm of install on demand ( which arguably we should be moving 
more towards at on the 21 century rather then rely on plethora of 
installation commands and package names ) and ofcourse we would remove 
the silliness of having to confirm the installation since I as an 
administrators have already made the gesture that I need the command or 
the man page when I write foo or man foo so I should not have to confirm 
it to.


JBG
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Reindl Harald


Am 10.04.2014 00:00, schrieb Jóhann B. Guðmundsson:
 
 On 04/09/2014 09:12 PM, Ralf Corsepius wrote:
 On 04/09/2014 10:05 PM, Billy Crook wrote:
 I would like to see logic like this:
 manpage files don't get installed unless/until:
 1) packagename-manpages is requested to be installed by the user.  that
 package would require the 'man' package.
 OR
 2) package is installed AND man is installed.

 In other words, you want to crippled end-user usability to NULL.
 
 I would not be dwelling to much on the usability topic since we have bigger 
 issues to fry then end-user usability
 with minimal installation footprint for cloud/containers/servers which can be 
 easily solve with same concept as is
 behind command-not-found for man-pages as in man-page-not-found and move 
 cloud/container/server administration
 into the realm of install on demand ( which arguably we should be moving 
 more towards at on the 21 century rather
 then rely on plethora of installation commands and package names ) and 
 ofcourse we would remove the silliness of
 having to confirm the installation since I as an administrators have already 
 made the gesture that I need the
 command or the man page when I write foo or man foo so I should not have to 
 confirm it to

no - if i type man whatever and that starts to pull 10 MB packages i stop
and think 5 seconds if there is one of my ,ore than 30 machines which have
it already



signature.asc
Description: OpenPGP digital signature
-- 
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

Re: trimming down Fedora installed size

2014-04-09 Thread Jóhann B. Guðmundsson


On 04/09/2014 10:06 PM, Reindl Harald wrote:

no - if i type man whatever and that starts to pull 10 MB packages i stop
and think 5 seconds if there is one of my ,ore than 30 machines which have
it already


That is you

If I was concern with that I would have done the thinking ahead of time 
and simply would not have installed the man-page-not-found package on 
those ten,hundred or thousand machines...


JBG
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct