You are not logged in.
There was some recent dismay that the flat "Paper" icon theme changed from brown to a grey colour, but it is actually very easy to modify it to Any Color You Like:
Get the icons from github: snwh/paper-icon-theme
(zipfile direct download link)
Copy the "Paper" directory from the archive to `~/.icons` `~/.local/share/icons`, and cd into it and run the following script (the script could be a lot more elegant - it is basically a hacked-together bunch of script snippets 8o . Feel free to improve it with arrays, error-checking etc )
The default Paper icons use a grey colour for the folder icons, but there are a couple of options in the script for a sandy-brown or a blue colour - just pick the $tintcolour you want. Add your own colour by getting the rgb values from a colour picker.
Afterwards you can edit the second line of `Paper/index.theme` to change the name that shows up in lxappearance
[Icon Theme]
Name=Paper BackWriter <--- change this field to the name you want
Comment=A simple and modern icon theme.
Inherits=Adwaita,gnome,hicolor
Paper-convert.sh
#!/bin/bash
##
# Requires Imagemagick
#Colorize, preserves alpha and white elements
# mogrify -fill 'rgb(x,y,z)' -tint 100 icon.png
# Imgs to convert: folder*.png user-home.png inode-directory.png
#
# cd to ~/.local/share/icons/Paper/ and run script
#tintcolour="rgb(205,168,124)" # sandy brown #CDA87C
tintcolour="rgb(123,161,219)" # blue, from Faenza #7BA1DB
for f in */places/*;do
fname=$(basename $f)
if [[ "$fname" = folder*.png ]] && ! [[ "$fname" = "folder-saved-search.png" ]];then
mogrify -fill "$tintcolour" -tint 100 "$f"
fi
done
for f in */places/*;do
fname=$(basename $f)
if [[ "$fname" = user-home.png ]];then
mogrify -fill "$tintcolour" -tint 100 "$f"
fi
done
for f in */status/*;do
fname=$(basename $f)
if [[ "$fname" = folder*.png ]];then
mogrify -fill "$tintcolour" -tint 100 "$f"
fi
done
for f in */mimetypes/*;do
fname=$(basename $f)
if [[ "$fname" = inode*.png ]];then
mogrify -fill "$tintcolour" -tint 100 "$f"
fi
done
## Make terminator use generic terminal icon
#for t in */apps;do
#if [[ -f "$t/terminator.png" ]];then
#cp $t/{terminator.png,terminator.png.orig}
#rm $t/terminator.png
#ln -rs $t/utilities-terminal.png $t/terminator.png
#fi
#done
Uncomment the last bit if you want terminator to use the generic green terminal icon
EDIT:
Copy the icon theme and rename eg PaperDark (don't forget to edit the "Name=" field in `index.theme`)
#!/bin/bash
##
# Convert svg icons for dark themes
# cd to Paper/ and run script
for f in 16x16/actions/*;do
if [[ $(basename $f) = "image-sharpen.svg" ]];then
sed -i 's/fill:#000000/fill:#ffffff/g' "$f"
fi
if [[ $(basename $f) = "image-filter.svg" ]];then
sed -i 's/opacity:0.3;fill:#000000/opacity:0.3;fill:#bebebe/g' "$f"
fi
if [[ $(basename $f) = "mail-mark-junk.svg" ]];then
sed -i 's/opacity:0.5;fill:#000000/opacity:0.72;fill:#BA4D4D/g' "$f"
fi
if [[ $(basename $f) = "tools-check-spelling.svg" ]];then
sed -i -e 's/fill:#000000/fill:#ffffff/g;s/opacity:0.5/opacity:0.6/g' "$f"
fi
if [[ $(basename $f) = "system-shutdown.svg" ]];then
sed -i -e 's/fill:#000000/fill:#ffffff/g;s/solid-color:#000000/solid-color:#ffffff/g' "$f"
fi
sed -i -e 's/opacity:0.5;fill:#000000/opacity:0.6;fill:#ffffff/g;s/opacity:1;fill:#000000;fill-opacity:0.49803922/opacity:072;fill:#ffffff;fill-opacity:0.72/g;s/fill:#000000;fill-opacity:0.49803922/fill:#ffffff;fill-opacity:0.6/g;s/opacity:0.25;fill:#000000/opacity:0.4;fill:#ffffff/g' "$f"
done
for f in symbolic/*/*;do
if [[ $(basename $f) = libreoffice* ]] || [[ $(basename $f) = cheese-symbolic.svg ]];then
sed -i -e 's/fill:#555555;fill-opacity:0.99607843/fill:#ffffff;fill-opacity:0.7/g;s/fill:#555555;fill-opacity:0.96862745/fill:#ffffff;fill-opacity:0.7/g' "$f"
else
sed -i -e 's/fill="#555555"/fill="#ffffff" fill-opacity="0.7"/g;s/fill:#555555;fill-opacity:1/fill:#ffffff;fill-opacity:0.7/g' "$f"
fi
if [[ $(basename $f) = colorimeter* ]] || [[ $(basename $f) = *ieee* ]];then
sed -i 's/fill="#555555"/fill="#ffffff" fill-opacity="0.7"/g' "$f"
else
sed -i 's/fill:#555555;fill-opacity:1/fill:#ffffff;fill-opacity:0.7/g' "$f"
fi
if [[ $(basename $f) = x-office-presentation-symbolic.svg ]];then
sed -i 's/fill="#555555"/fill="#ffffff" fill-opacity="0.7"/g' "$f"
else
sed -i 's/fill:#555555;fill-opacity:1/fill:#ffffff;fill-opacity:0.7/g' "$f"
fi
sed -i -e 's/fill="#555555"/fill="#ffffff" fill-opacity="0.7"/g;s/fill:#555555/fill:#ffffff;fill-opacity:0.7/g;s/fill:#555555;fill-opacity:1/fill:#ffffff;fill-opacity:0.7/g' "$f"
done
Last edited by damo (2016-05-15 18:08:38)
Be Excellent to Each Other...
The Bunsenlabs Lithium Desktop » Here
FORUM RULES and posting guidelines «» Help page for forum post formatting
Artwork on DeviantArt «» BunsenLabs on DeviantArt
Offline
Sweet guide damo, thanks!
I had no idea `mogrify` could be used like that
Offline
that's a nice script, and can be applied to other icon themes, too.
ultimately it would be better to create a seperate theme with coloured folders only, and get the inherits right, but meh.
anyhow, i changed it a little (tintcolour supplied on command line, rudimentary quality control):
#!/bin/bash
##
# Requires Imagemagick
#Colorize, preserves alpha and white elements
# mogrify -fill 'rgb(x,y,z)' -tint 100 icon.png
# Imgs to convert: folder*.png user-home.png inode-directory.png
#
# cd to/.icons/Paper/ and run script
# confirm will read a single character and decide whether it is yes or no.
# $1 is the prompt string, $2 is an optional default (if input is only return).
confirm()
{
local answer IFS=
while read -rp "$1" -n1 answer
do
case $answer in
[Yy]) printf '\n'; return 0;;
[Nn]) printf '\n'; return 1;;
*) case "$2" in
[Yy]) [[ "$answer" = "" ]] && return 0 || printf '\n';;
[Nn]) [[ "$answer" = "" ]] && return 1 || printf '\n';;
*) [[ "$answer" != "" ]] && printf '\n';;
esac
;;
esac
done
}
tintcolour="$1"
confirm " ...will tint all PNG folder icons with $tintcolour.
Current working directory is $PWD
This process is irreversible.
There will be no more quality control after this point.
Are you sure you want to continue? [y/n] " || exit 1
for f in */places/*;do
fname=$(basename $f)
if [[ "$fname" = folder*.png ]] && ! [[ "$fname" = "folder-saved-search.png" ]];then
mogrify -fill "$tintcolour" -tint 100 "$f"
fi
done
for f in */places/*;do
fname=$(basename $f)
if [[ "$fname" = user-home.png ]];then
mogrify -fill "$tintcolour" -tint 100 "$f"
fi
done
for f in */status/*;do
fname=$(basename $f)
if [[ "$fname" = folder*.png ]];then
mogrify -fill "$tintcolour" -tint 100 "$f"
fi
done
for f in */mimetypes/*;do
fname=$(basename $f)
if [[ "$fname" = inode*.png ]];then
mogrify -fill "$tintcolour" -tint 100 "$f"
fi
done
## Make terminator use generic terminal icon
#for t in */apps;do
#if [[ -f "$t/terminator.png" ]];then
#cp $t/{terminator.png,terminator.png.orig}
#rm $t/terminator.png
#ln -rs $t/utilities-terminal.png $t/terminator.png
#fi
#done
btw, there's also papirus which seems to have retained the brown folders so far (and has some other small differences to paper. i actually think i like it more).
Offline
there's also papirus which seems to have retained the brown folders so far (and has some other small differences to paper. i actually think i like it more).
+1
I'm using that one: https://forums.bunsenlabs.org/viewtopic … 241#p17241
Offline
...can be applied to other icon themes, too.
Why can't icon themes have consistent a directory structure? Symlinks may be used instead of an in-place icon, or names aren't always the same between themes. I've got quite a few scripts for resizing/colorizing/etc, and every one has to use different paths.
I've been using a modified papirus, but it is hugely bloated for kde. I thought I'd go back and personalize Paper, which is a third of the installed size.
There will be no more quality control after this point.
Are you sure you want to continue? [y/n]
Excellent message!
Be Excellent to Each Other...
The Bunsenlabs Lithium Desktop » Here
FORUM RULES and posting guidelines «» Help page for forum post formatting
Artwork on DeviantArt «» BunsenLabs on DeviantArt
Offline
Added script code to Post #1, to convert symbolic svg icons for dark themes
Last edited by damo (2016-01-31 21:34:39)
Be Excellent to Each Other...
The Bunsenlabs Lithium Desktop » Here
FORUM RULES and posting guidelines «» Help page for forum post formatting
Artwork on DeviantArt «» BunsenLabs on DeviantArt
Offline
@damo, amazing work. Thanks so much! Cheers.
No, he can't sleep on the floor. What do you think I'm yelling for?!!!
Offline
@damo, I couldn't get your script to work today on any of my partitions. I wonder what commit has messed things up, maybe this one adding symlinks? Or is this still working for you?
No, he can't sleep on the floor. What do you think I'm yelling for?!!!
Offline
I'll have a look tomorrow, but a couple of things come to mind.
1) Where are you running the script from? User icons should now be in '~/.local /share/icons', so maybe the symlinks aren't working properly?
2) Has there been a change in Imagemagick?
Be Excellent to Each Other...
The Bunsenlabs Lithium Desktop » Here
FORUM RULES and posting guidelines «» Help page for forum post formatting
Artwork on DeviantArt «» BunsenLabs on DeviantArt
Offline
I cloned the git repo, copied the Paper directory to '~/.local/icons', and ran 'paper-convert.sh' from there. It went OK.
I am using 'mogrify' from the jessie Imagemagick suite (8:6.8.9.9-5+deb8u1)
Be Excellent to Each Other...
The Bunsenlabs Lithium Desktop » Here
FORUM RULES and posting guidelines «» Help page for forum post formatting
Artwork on DeviantArt «» BunsenLabs on DeviantArt
Offline
I'm revisiting this, on both jessie and stretch, in order to produce some flat-grey Paper icons, for instance rgb(117,117,117), and I can't get the expected results.
hhh@BL-jessie64:~$ apt-cache policy imagemagick
imagemagick:
Installed: 8:6.8.9.9-5+deb8u8
Candidate: 8:6.8.9.9-5+deb8u8
Version table:
*** 8:6.8.9.9-5+deb8u8 0
500 http://security.debian.org/ jessie/updates/main amd64 Packages
100 /var/lib/dpkg/status
8:6.8.9.9-5+deb8u6 0
500 http://httpredir.debian.org/debian/ jessie/main amd64 Packages
hhh@BL-jessie64:~$
I downloaded the zip link provided, copied the script to an executable file in ~/.local/share/icons/Paper and ran it several times.
The color values produced don't even come close to the entered values that I replace line #10 "blue from Faenza" with. Even running the script as is gives me different values than that line. @damo, your screenshot icons have different values than the brown and blue rgb values in the script, according to gcolor2.
I tried to use ohnonot's script, but I have no clue where to enter the color values and trial-and-error isn't getting me anywhere.
I could use some help, thanks!
No, he can't sleep on the floor. What do you think I'm yelling for?!!!
Offline
I'll have to revisit this later - I don't have access to my machine ATM.
It is something I was going to get round to testing for Helium anyway. Nothing like a kick up the a*se to get me moving eh?
Be Excellent to Each Other...
The Bunsenlabs Lithium Desktop » Here
FORUM RULES and posting guidelines «» Help page for forum post formatting
Artwork on DeviantArt «» BunsenLabs on DeviantArt
Offline
Ok, it seems that the mogrified colour is being combined with the base colour, so the final result is different from that expected. You can easily see this if you repeat the script - the colours get much more saturated.
I must have done it originally by trial and error to make something that pleased my eye, without double-checking the actual rgb values.
@ohnonot's script does exactly the same, except you pass the colour values as a script parameter...
paper-script.sh "rgb(x,y,z)"
or
paper-script.sh "#123456"
I'm now investigating a way of desaturating first, then colorizing. If you aren't concerned about absolute colour values it isn't a big problem, but I guess if you are trying to match theme colours.....
Be Excellent to Each Other...
The Bunsenlabs Lithium Desktop » Here
FORUM RULES and posting guidelines «» Help page for forum post formatting
Artwork on DeviantArt «» BunsenLabs on DeviantArt
Offline
... I guess if you are trying to match theme colours.....
Yes. Matching perfectly is, of course, the goal, but just coming up with something predictable is a start! For instance, I can't seem to get a grey value that doesn't have some blue in it.
For now, I've found out about numix-folders, a script which colors the vast Numix icon set...
https://github.com/numixproject/numix-folders/
Place numix-folder(-master) in Numix and run ./numix-folders
Maybe that script will help you?
No, he can't sleep on the floor. What do you think I'm yelling for?!!!
Offline