Jump to content
Slice

Clover Themes

1,169 posts in this topic

Recommended Posts

Advertisement
Thank you guys!  It is gold! 

the block is 18K and as you see the other more yellow icon are 22K  :D  :hysterical: 

 

It Would Be a chalenge to make it animated do you help me a bit ;) please 

Share this post


Link to post
Share on other sites

Animations...

 

Here’s a quick checklist :)
 
1 - Think of an idea.
2 - Draw/create a series of images all of equal size.
3 - Save each file as a PNG using the naming convention <filename>_nnn.png where nnn starts at 000 and increments by one for each frame.
 
For example:
my_anim_000.png
my_anim_001.png
my_anim_002.png
 
The Clover GUI will run a clock, starting from 000 and increment by one. It will match this clock to each frame number of your files. If you wish to add a pause to the animation, then you need to show this in the numbers of your files as the clock won't stop - it will still keep counting.
 
Example:
my_anim_000.png
my_anim_001.png
my_anim_002.png
my_anim_032.png
my_anim_033.png
my_anim_034.png
my_anim_035.png
 
In the above example:
Clock 000 matches to my_anim_000.png
Clock 001 matches to my_anim_001.png
Clock 002 matches to my_anim_002.png
Clock 003 matches to my_anim_002.png
Clock 004 matches to my_anim_002.png
...
Clock 031 matches to my_anim_002.png
Clock 032 matches to my_anim_032.png
Clock 033 matches to my_anim_033.png
Clock 034 matches to my_anim_034.png
 
4 - Put all files in to a directory and name the directory with the name of the anim, but without the _nnn. To continue the above example, the directory name would be my_anim.
5 - Save the directory to /EFI/CLOVER/themes/<YOUR_THEME_NAME>/
So if your theme is named GOLD, this is how it would look:
/EFI/CLOVER/themes/GOLD/my_anim
5 - Decide on which screen of the GUI you wish the animation to appear. Clover uses an ID number to identify each screen. For example, the main screen with the OS icons is ID 1, the help page is ID 3, the options page is ID 4 and so on.
6 - theme.plist : Add Anime array to the theme.plist, for an example, see post #4
7 - theme.plist : Set the ID to the number of the screen you wish to use.
8 - theme.plist : Set the Path to the directory name of the anim - this will be my_anim.
9 - theme.plist : Set the number of Frames. In the above example with the clock, this would be 35 (zero indexed).
10 - theme.plist : Set the FrameTime, which is the number of milliseconds between frames.
 
You can find more information at the Creating Themes page of the wiki. You can also look at some of the existing themes for examples.
 
I should let you know that I’m currently working on trying to improve the flexibility of the GUI and have made some recent changes which now allow the use of extra settings in the theme.plist. I have not yet added these to the wiki but I will soon. For an example of the latest settings check the theme.plist from my BGM v1.3 theme that’s currently in the repo. 

Share this post


Link to post
Share on other sites

Thank you for great help here !  it could not be clearer

I immediatly start working  

I have a lot to reading and learning  :D  :lol:

 

I coming back for sure Thanks again  ;)

Share this post


Link to post
Share on other sites

I've added my new theme 'Shield' to the wiki database this morning. (Oh, and I've also sorted the wiki database alphabetically).

 

Here's a sample of the theme.

 

2rzv3es.jpg

 

Note: Created for Clover rev2504 and newer.

 

EDIT: Download link for v1.1 removed.

v1.2 can now be found in the Clover repo.

Share this post


Link to post
Share on other sites

I've added my new theme 'Shield' to the wiki database this morning. (Oh, and I've also sorted the wiki database alphabetically).

 

Here's a sample of the theme.

 

2rzv3es.jpg

 

Note: Created for Clover rev2504 and newer.

 

Download Shield v1.1

wow,yet again another masterpiece! I wanna make another clover theme which has animation, but I am home now and my PC is in the school dormitory. :( Still having the Font issue in clover theme.@blackosx, i got your ai file for making font png, but when i change another font type, the letter will overlapping with the grid boundary.And i saw your new Shield theme, which using a pretty cool awesome font type, could you tell me the exact way to making the font? always appreciate your help.

Share this post


Link to post
Share on other sites

Still having the Font issue in clover theme.@blackosx, i got your ai file for making font png, but when i change another font type, the letter will overlapping with the grid boundary.

Then you need to adjust to grid to fit the wider typeface. See this screenshot of two of the fonts from the Clover_font_pack_1. The grids and characters are all positioned by hand.

 

post-331032-0-31057400-1390860673_thumb.png

 

And i saw your new Shield theme, which using a pretty cool awesome font type, could you tell me the exact way to making the font? always appreciate your help.

 

I'm using one main font file, BWRoB_PTMono_10W_A.png which uses PTMono from http://www.paratype.com/public/ . This is placed in to the Illustrator file as in the above screenshot, saved as a PNG with anti-aliasing. Then I imported in to Photoshop and applied a gradient to it to closely match the colours of the theme background.

 

For the animations, I used a font named Space Age from http://www.dafont.com/space-age.font . The text is created, broken apart and animated in Cinema4D. I then render out the files as PNG with alpha mask before optimising them and renaming/numbering the files to make the desired sequence for Clover.

Share this post


Link to post
Share on other sites

The shield theme has been updated to v1.2 and is now in the Clover repo. For best results using this theme please use Clover rev2534 and up.

 

It's also worth noting that recent updates to Clover bring some new theme settings to help give designers more freedom where they can position items, for example the banner and animations. Rev2535 now allows vertical arrangement of OS Icons down the right side of the screen.

 

I've updated the Clover wiki with details.

http://clover-wiki.zetam.org/Design

Share this post


Link to post
Share on other sites

Then you need to adjust to grid to fit the wider typeface. See this screenshot of two of the fonts from the Clover_font_pack_1. The grids and characters are all positioned by hand.

 

attachicon.gifIllustrator_Screenshot.png

 

 

I'm using one main font file, BWRoB_PTMono_10W_A.png which uses PTMono from http://www.paratype.com/public/ . This is placed in to the Illustrator file as in the above screenshot, saved as a PNG with anti-aliasing. Then I imported in to Photoshop and applied a gradient to it to closely match the colours of the theme background.

 

For the animations, I used a font named Space Age from http://www.dafont.com/space-age.font . The text is created, broken apart and animated in Cinema4D. I then render out the files as PNG with alpha mask before optimising them and renaming/numbering the files to make the desired sequence for Clover.

Thanks for the explanation and that's really helpful. BTW, I saw the two grids above, and the problem is that the width of the left grid is wider than right one, is there any problem when the width is changing? I mean the width of the png is different from the original one.I don't know if clover can recognize the wider png or narrow png.

I know Cinema4d, and have been studying it for about 2 year, which is a really powerful tool.

Share this post


Link to post
Share on other sites

Varying grids widths are fine. 

 

Once you've generated the final .PNG file, measure an individual character/grid item in pixels. In the Illustrator screenshot you can see the left filename is WoB_Juan_13W.ai and the right filename is WoB_CodenameCoder4F_8W.ai. The number (highlighted in green) is the character width of the final PNG file.

 

When using the font in Clover, you let it know how wide it is by entering the number in the theme.plist

<key>Font</key>
<dict>
<key>CharWidth</key>
<integer>13</integer>
<key>Path</key>
<string>WoB_Juan_13W.png</string>
<key>Type</key>
<string>Load</string>
</dict>

If you've been studying Cinema4D for 2 years then you will probably know it way more than me. So I guess we can look forward to seeing some nice animations in the future? ;)

 

Share this post


Link to post
Share on other sites

Varying grids widths are fine. 

 

Once you've generated the final .PNG file, measure an individual character/grid item in pixels. In the Illustrator screenshot you can see the left filename is WoB_Juan_13W.ai and the right filename is WoB_CodenameCoder4F_8W.ai. The number (highlighted in green) is the character width of the final PNG file.

 

When using the font in Clover, you let it know how wide it is by entering the number in the theme.plist

<key>Font</key>
<dict>
<key>CharWidth</key>
<integer>13</integer>
<key>Path</key>
<string>WoB_Juan_13W.png</string>
<key>Type</key>
<string>Load</string>
</dict>

If you've been studying Cinema4D for 2 years then you will probably know it way more than me. So I guess we can look forward to seeing some nice animations in the future? ;)

Almost forget the CharWidth parameter in clover :blush:  , now I know the trick to make font..Thanks, blackosx.

I just spent my spare time learning Cinema4d, which is not my major. Now I am at home and probably I will create some animation clover themes next semester which is the final term in my college. :D

Share this post


Link to post
Share on other sites

Haha, got a new clover theme here, Universe. This theme is based on Universe stuff to create. Have no time to do the animation stuff and fonts, because I am going to make preparations for job hunting, wish me luck ! And i add it to ‘Theme database’, too. Hope you guys love it. By the way, @blackosx, can i ask for my clover theme to be bundled in installer? :blush: 2yn2xsp.png

 

2ibdt75.png

Share this post


Link to post
Share on other sites

Haha, got a new clover theme here, Universe. This theme is based on Universe stuff to create. Have no time to do the animation stuff and fonts, because I am going to make preparations for job hunting, wish me luck ! And i add it to ‘Theme database’, too. Hope you guys love it. By the way, @blackosx, can i ask for my clover theme to be bundled in installer? :blush:

 

Nice job with the os icons CosmosDJ and those popular background images are always stunning. Shame you haven't had time to work on any animations, fonts etc.  but the overall impression is striking.

 

It's not my call to add themes to the package installer as it's up to Slice to decide. But in my opinion the theme should be optimised to keep the file size down. Here's a reduced version at 1.2MB, down from 2.7MB. Can you check it to make sure you're happy with it?

 

Universe_Optimised.zip

 

Good luck with the job hunting :)

My themes is now animed  :D  :thumbsup_anim:

 

Welcome to the world of animation! I know it's not easy and takes time to build a set of files.

I'll have a look when I get some time. :)

Share this post


Link to post
Share on other sites

Nice job with the os icons CosmosDJ and those popular background images are always stunning. Shame you haven't had time to work on any animations, fonts etc.  but the overall impression is striking.

 

It's not my call to add themes to the package installer as it's up to Slice to decide. But in my opinion the theme should be optimised to keep the file size down. Here's a reduced version at 1.2MB, down from 2.7MB. Can you check it to make sure you're happy with it?

 

attachicon.gifUniverse_Optimised.zip

 

Good luck with the job hunting :)

 

Welcome to the world of animation! I know it's not easy and takes time to build a set of files.

I'll have a look when I get some time. :)

wow, that's impressive ! Can you show me how to do the compression? how can you keep that so small?I use xcode icons composser to convert png which is png24 and saved from Photoshop  to icons, which is rather big... :)

By the way,Is every os icons can be animated? Only those mentioned in clover wiki design can be animated ?

My themes is now animed  :D  :thumbsup_anim:

 

 

screen19.png

Pretty good theme!Shame I don't have time to do the animation, and keep going.

Share this post


Link to post
Share on other sites

wow, that's impressive ! Can you show me how to do the compression? how can you keep that so small?I use xcode icons composser to convert png which is png24 and saved from Photoshop  to icons, which is rather big... :)

 

See here for info, and also a script to help achieve it.

http://www.projectosx.com/forum/index.php?showtopic=3166

 

But essentially, no longer use .icns files but instead PNG with .icns file extension.

The PNG files then get compressed to 8-bit PNG's whilst retaining alpha mask. For most icons, you will not notice a difference in quality.

 

The background file was resaved manually from Photoshop using the Save for Web option and selection PNG-8, 256 colours and noise dither, rather than using the script.

 

By the way,Is every os icons can be animated? Only those mentioned in clover wiki design can be animated ?

 

The OS icons cannot currently be animated. They could originally but not now. I have asked about this at ProjectOSX but nobody has confirmed. So for now, all the files that can be animated can be seen in the Shield theme.

Share this post


Link to post
Share on other sites

See here for info, and also a script to help achieve it.

http://www.projectosx.com/forum/index.php?showtopic=3166

 

But essentially, no longer use .icns files but instead PNG with .icns file extension.

The PNG files then get compressed to 8-bit PNG's whilst retaining alpha mask. For most icons, you will not notice a difference in quality.

 

The background file was resaved manually from Photoshop using the Save for Web option and selection PNG-8, 256 colours and noise dither, rather than using the script.

 

 

 

The OS icons cannot currently be animated. They could originally but not now. I have asked about this at ProjectOSX but nobody has confirmed. So for now, all the files that can be animated can be seen in the Shield theme.

Oh, I see. You mean we can change the png extension to icns extension in order to keep small size?

If the OS icons can be animated, that will be much more funny.

Share this post


Link to post
Share on other sites

this is my 5 logo anime  :thumbsup_anim:  and I change the os-clover.icns

see the last anime logo, its clover icon  GOLD_DIAMOND 22K !!!!!!!! :lol:  :D 

 

197.png

 

260.png

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By fusion71au
      Run Vanilla OS X El Capitan, Sierra, High Sierra or Mojave in VirtualBox 5.x.x on a Windows Host
      Following on from my previous guide on how to create a VMware virtual machine running Vanilla OS X El Capitan in Windows, I’ve decided to write a similar guide for creating a VirtualBox El Capitan VM. 
       
      The virtual machine should be useful for testing El Capitan and also for creating installers for use on a real machine/hackintosh.
       
      There are other tutorials and videos on the net about running OS X on Windows machines using pre-made VMDK disk images but you can never guarantee what else is in there….
       
      I’ve gathered info for this guide from several threads in the Multibooting and Virtualisation section of this forum and also the wider internet eg
       
      @colt2 HOW TO: Create a bootable El Capitan ISO for VMware
      @dsmccombs comment on faking Ivybridge Processor
      @E:V:A http://forum.xda-developers.com/showpost.php?p=55572430&postcount=6
      @Tech Reviews video tutorial https://www.youtube.com/watch?v=t7X07U63lwg.
      VirtualBox Forum: Status of OSX on OSX
       
      Requirements
         Intel PC with four or more CPU cores running Windows 7 X64 or later OS (2 or more cores needed for OS X)    4GB or more RAM (2GB or more will be needed for OS X)    Hard Disk with at least 40GB free for Virtual Machine    Oracle VM VirtualBox v 5.0.34    Install OS X El Capitan app and Mac or Hack to prepare installation iso <-- Now, no longer necessary to have previous access to a Mac or Hack by building the Installer.app from scratch - see post#75    16GB or larger exFAT formatted USB stick to transfer El Capitan iso from Mac/Hack to Host PC  
      Prepare Installation ISO on your Mac or Hack
      1.  On your Mac or Hack, download "Install OS X El Capitan.app" from the App Store into your Applications folder.
      2.  Download and unzip the CECI.tool (attached to this post) into your ~/Downloads folder. The commands in this executable script are shown below for informational purposes.  Note: you will need approx 16GB of free space on your hard disk for the script to complete.
       
       
       
      3.  Open OS X terminal, then run the following commands to execute the script:
      cd downloads chmod +x CECI.tool ./CECI.tool 4.  At the end of the process, you will have an El Capitan iso on your desktop - copy this onto an exFAT formatted USB for use on the PC Host later.
       
       
      Create an El Capitan Virtual Machine in VirtualBox
      1.  Open the VirtualBox program and click the "New" button to create a new VM.
       

       
      2.  Select Mac OS X and Mac OS X 10.11 El Capitan (64 -bit) for Operating System type and version.  I named my Virtual Machine "El_Capitan", then clicked next...
       

       
      3.  Leave the Memory size at the recommended 2048 MB, then click next.
       

       
      4.  Choose to "Create a virtual hard disk now", then click the create button.
       

       
      5.  For the hard disk file type, the default is VDI (VirtualBox Disk Image) but I have selected VMDK for inter-operability with VMWare.  Click next...
       

       
      6.  For Storage on physical hard disk, I have chosen the default Dynamically allocated (grows larger to a set limit as you need more disk space).
       

       
      7.  On the File location and size screen, you can set the location of the new virtual hard disk and its size - I recommend changing disk size to 40GB or larger.  When you click the create button, you will now see your new VM in the VirtualBox main GUI.
       

       
      8.  Click the settings button on the Main Menu to tweak a few settings....
         a.  On the System/Motherboard tab in Boot Order, you can uncheck the Floppy Drive (who has these now?)
       

       
         b.  On the System/Processor tab, you can increase the allocated CPU cores to 2
       

       
         c.  On the Display tab, you can increase the allocated Video Memory to 128MB
       

       
         d.  On the Storage tab, click on the icon of the Optical Drive and select "Choose Virtual Optical Disk File". 
       

       
      Navigate and select the El Capitan ISO we created earlier...
       

       
         e.  Click the OK button to finalise the VM settings.
       
       
      Patch El Capitan vbox configuration file with DMI Settings from a Mac
      1.  From the start menu, type cmd and click run as administrator to open an administrative command prompt. 
       

       
      2.  Choose a Mac Model similar to your host system, then type the following lines, followed by <enter>  after each line.  Make sure you first close all VirtualBox Windows and the VirtualBox program, otherwise any changes you make won't stick...
       
      Eg iMac11,3
      cd "C:\Program Files\Oracle\VirtualBox\" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "iMac11,3" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Mac-F2238BAE" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 1 MacBookPro11,3
      cd "C:\Program Files\Oracle\VirtualBox\" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "MacBookPro11,3" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Mac-2BD1B31983FE1663" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 1 Macmini6,2
      cd "C:\Program Files\Oracle\VirtualBox\" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "Macmini6,2" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Mac-F65AE981FFA204ED" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 1 3.  Optional- For some host systems eg those with Haswell and newer CPUs, you might have to spoof an older CPU to avoid VirtualBox errors.  You can try from one of the following if this happens:

      To spoof Lynnfield i5 750 CPU
      VBoxManage.exe modifyvm "El_Capitan" --cpuidset 00000001 000106e5 06100800 0098e3fd bfebfbff To spoof IvyBridge CPU
      VBoxManage.exe modifyvm "El_Capitan" --cpuidset 00000001 000306a9 04100800 7fbae3ff bfebfbff or
      VBoxManage.exe modifyvm "El_Capitan" --cpuidset 00000001 000306a9 00020800 80000201 178bfbff 4.  Close the command prompt window.
       
       
      Installation of El Capitan
      We are now ready to start the El_Capitan Virtual Machine....
       



       
      Installation should be relatively straight forward, just following the prompts of the OS X installer:
      1.  Select language, agree to legal terms
       

       
      2.  Use Disk Utility from the Utilities Menu to erase and format the virtual hard drive as a single partition GUID Mac OS X Extended.  I named my drive "Macintosh HD" but you can enter whatever you like eg El_Capitan.
       

       
      3.  Quit DU and choose Macintosh HD to install El Capitan on.
      4.  After 20-30 min (depending on how fast your system is), the installation will complete.  At this point, unmount the El Capitan ISO by clicking the Devices menu from the VM window, click Optical Drives, then choose Remove disk from virtual drive.  The VM is now ready to reboot into OS X from the virtual hard drive.
      5.  At the welcome screen, choose your country and keyboard layout.  You can skip transfer information, location services and logging in with your Apple ID if you wish…
      6.  Create a User Account and select your Time Zone.  You can skip sending diagnostics and usage data to Apple….
      7.  Finally, you will arrive at the El Capitan Desktop.
       

       
      8.  Network/internet and audio should work OOB but on my system, the sounds were distorted.  Unfortunately, there is no QE/CI and the VM resolution will be fixed without the ability to dynamically resize the VM window (no VirtualBox additions for OS X guests atm). 
       
       
      Customization with VBoxManage
      1.  You can change the default resolution of 1024*768 (after shutting down the VM) with the VBoxManage command from the Windows Administrative Command Prompt:
      cd "C:\Program Files\Oracle\VirtualBox\" VBoxManage setextradata "El_Capitan" VBoxInternal2/EfiGopMode N (Where N can be one of 0,1,2,3,4,5) referring to the 640x480, 800x600, 1024x768, 1280x1024, 1440x900, 1920x1200 screen resolution respectively.
       
      Update:  For VirtualBox 5.2.x, the command for changing screen resolution has changed...
       
      VBoxManage setextradata "<MyVM>" VBoxInternal2/EfiGraphicsResolution XxY (where X=Horizontal screen resolution, Y=Vertical screen resolution)
      eg
      VBoxManage setextradata "<MyVM>" VBoxInternal2/EfiGraphicsResolution 1280x1024 2.  Adding serials and other SMBIOS details for the System Information Screen
      VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiSystemSerial" "W8#######B6" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiBoardSerial" "W8#########1A" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiSystemVendor" "Apple Inc." VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiSystemFamily" "iMac" VBoxManage setextradata "El_Capitan" "VBoxInternal/Devices/efi/0/Config/DmiBIOSVersion" "IM112.0057.03B" A listing of known issues with Mac OS X guests can be found in the VirtualBox Manual - link https://www.virtualbox.org/manual/ch14.html.
       
      Vanilla Mavericks and Yosemite, Snow Leopard from Retail DVD
      The same VM settings for El Capitan will also boot and run vanilla installations of OS X Mavericks and Yosemite .  Attached to this post are installer scripts to create bootable Mavericks (CMI.tool) and Yosemite (CYI.tool) ISOs for VirtualBox and VMware.
       
      With the respective OS X installer apps in the Applications folder, download and run the installer tools using terminal ie
       
      To create a Mavericks ISO on your desktop
      cd downloads chmod +x CMI.tool ./CMI.tool To create a Yosemite ISO on your desktop
      cd downloads chmod +x CYI.tool ./CYI.tool Here is a screenshot of the VM running Mavericks 10.9.5...
       

       
      Finally, those without a Mac/Hack to prepare the install media can purchase a retail Snow Leopard DVD directly from Apple and install OSX 10.6.3 on their virtual machines (Snow Leopard, Lion and Mountain Lion run quite happily in VirtualBox with 1 CPU, 1-2 GB of RAM and the rest of the settings unchanged from above).  Once you update by combo update to SL 10.6.8, you can directly download El Capitan from the App Store for free .
       

       
      UPDATE macOS Sierra 10.12 to 10.12.6: For macOS Sierra, use CSI.tool in post#51.
      UPDATE macOS High Sierra 17A365:  For macOS High Sierra, use CHSI.tool in post#73.
      UPDATE macOS Mojave Beta:  For macOS Mojave Beta, use CMJI.tool on page 4 of thread.
       
      Good luck and enjoy
      CECI.tool.zip
      CYI.tool.zip
      CMI.tool.zip
    • By fantomas1
      -----------------------------
      Mise à jour 12/07/2018
      -----------------------------
       
      La sortie de macOS 10.14 Beta m'oblige à mettre ce topic à jour. Plus de détails dans ce post.
       

       

       
      -----------------------------
      Mise à jour 09/06/2017
       
      -----------------------------
       
      La sortie de macOS 10.13 Beta m'oblige à mettre ce topic à jour. Plus de détails dans ce post.
       

       
       
       
      -----------------------------
      Mise à jour 15/06/2016
      -----------------------------
       
      Une petite mise à jour du topic pour confirmer le bon fonctionnement du patch à la volé de Clover (r3561) avec macOS Sierra.
       

       
       
       
      -----------------------------
      Mise à jour 24/08/2015
      -----------------------------
       
      ok, très bien,
       
      comme pour la HD6770, la nouvelle méthode du patch à la volé est de nouveau fonctionnel et avec les dernières versions de Clover.
       
      pour ma part, je suis sur El Capitan DB7 et Clover r3259
       

       
       
      par contre, je suis toujours obligé de m’aider de l’astuce avec FakeSMC pour que mes kexts soient toujours chargés, mais au moins cela marche.   
       
       
       
       
      et pour config.plist, cela donne ça :
       

       
       
      ceci est juste un exemple avec ma HD4830, il va de soi que vous devez mettre Device-ID de votre carte graphique !!!
       
       
       
       
       
      Salut à tou(te)s
       
      Comme certain(e)s le savent, les cartes graphiques dites "Exotiques" ne sont pas supportés par le système d'exploitation d'Apple.
      En sus d'ajouter l'identifient de la carte graphique (Device ID) dans l'Info.plist du ou des kexts concernés, il faut aussi interagir sur la partie "binaire" du kext par le biais du "patching".
       
      Dans notre cas, les cartes graphiques exotiques sont les cartes AMD (anciennement ATI) de la série HD 48xx, et plus précisément les HD 4830, HD4850, HD4870x2 et HD4890.*
       
      Donc le but est de faire fonctionner ces cartes graphiques de manière stable et fluide en activant QE_CI, chose nécessaire pour en profiter pleinement du système d'exploitation.
       
      * Juste avant de commencer, vous l'avez peut-être remarqué, la HD4870 n'est pas sur la liste suscitée et pour cause c'est que cette carte graphique est nativement supportée par le système d'exploitation d'Apple. Son Device ID est 0x94401002 que vous pouvez trouvé dans l'Info.plist des kexts concernés et c'est celui-ci que nous allons utiliser afin de le remplacer par le Device ID de notre carte graphique.
       
      ** Ce tuto est fait pour fonctionner sous OS X Mavericks, mais il doit fonctionner aussi avec les autres. La seule chose différente c'est l'adresse binaire à patcher.    
       
       
      Très bien, comme le titre le suggère, nous allons voir comment faire reconnaître ces cartes graphiques sous Clover et obtenir par la même un QE_CI activé et parfaitement fonctionnelle.
       
      Je vais utiliser ma Sapphire HD4830 512 MB GDDR3 PCI-E (comme cobaye    ) pour ce test et qui a pour Device ID 0x944c1002.
       
      Pour que ce test réussisse, nous allons donc utiliser ces 2 kexts, à savoir AMD4800Controller.kext (pour la partie QE) et ATIRadeonX2000.kext (pour la partie CI) et allons ajouter notre Device ID dans l'Info.plist. via le tweak "KernelAndKextPatches"
       
      Donc les valeurs à entrer dans notre config.plist sont celle-ci :
      <key>KernelAndKextPatches</key>     <array>         <dict>             <key>Name</key>             <string>AMD4800Controller</string>             <key>InfoPlistPatch</key>             <string>Yes</string>             <key>Find</key>             <string>0x94401002</string>             <key>Replace</key>             <string>0x944C1002</string>         </dict>         <dict>             <key>Name</key>             <string>ATIRadeonX2000</string>             <key>InfoPlistPatch</key>             <string>Yes</string>             <key>Find</key>             <string>0x94401002</string>             <key>Replace</key>             <string>0x944C1002</string>         </dict>     </array> Comme vous pouvez le voir, la clé "InfoPlistPatch" sert à injecter notre Device ID "uniquement" dans Info.plist, sans y toucher à la partie "binaire" de nos kexts. La clé "Find" a pour fonction de trouver le Device ID que l'on veut remplacer par le notre en utilisant la clé "Replace".
       
      Très bien, maintenant comme nous l'avons dit au début de ce tutoriel, ajouter notre Device ID n'est pas suffisant pour faire fonctionner pleinement notre carte graphique, il faut encore interagir sur la partie "binaire" de nos kexts. Dans notre cas, il va falloir agir uniquement sur un kext, çàd sur ATIRadeonX2000.kext et plus particulièrement sur ATIRadeonX2000.kext/Contents/MacOS/ATIRadeonX2000
       
      Et pour cela, nous allons faire comme ceci :
      <key>KextsToPatch</key> <array> <dict>     <key>Name</key>     <string>ATIRadeonX2000</string>     <key>Find</key>     <data>0F8394010000</data>     <key>Replace</key>     <data>909090909090</data> </dict> </array> Là nous pouvons voir que la clé "InfoPlistPatch" n'est pas utilisée et donc ces valeurs n'auront aucun effet sur l'Info.plist mais agiront uniquement au niveau de la partie "binaire". 
       
      Et voici les valeurs en leur forme complète que vous devrez ajouter dans votre config.plist
      <key>KernelAndKextPatches</key>     <array>         <dict>             <key>Name</key>             <string>AMD4800Controller</string>             <key>InfoPlistPatch</key>             <string>Yes</string>             <key>Find</key>             <string>0x94401002</string>             <key>Replace</key>             <string>0x944C1002</string>         </dict>         <dict>             <key>Name</key>             <string>ATIRadeonX2000</string>             <key>InfoPlistPatch</key>             <string>Yes</string>             <key>Find</key>             <string>0x94401002</string>             <key>Replace</key>             <string>0x944C1002</string>         </dict>         <dict>             <key>Name</key>             <string>ATIRadeonX2000</string>             <key>Find</key>             <data>0F8394010000</data>             <key>Replace</key>             <data>909090909090</data>        </dict>     </array> Très bien, maintenant il ne nous reste plus qu'à autoriser l'injection des kexts, sans quoi le patch ne fonctionnera pas. Et nous allons le faire via le tweak "InjectKexts" comme ceci :
      <key>SystemParameters</key> --> clé principale <dict>       <key>InjectSystemID</key>       <true/>       <key>InjectKexts</key> --> sous clé       <string>Yes</string> </dict>  
       
      Si certain(e)s d'entre vous préfèrent utiliser le logiciel "Clover Configurator" pour plus de facilité, voici comment entrer ces valeurs :
       
      Allez sur l'onglet "Kernel And Kext Patches" et faites comme ceci :
       
       
       
      *Ne faites pas attention sur le majuscule/minuscule, cela ne fait aucune différence
       
       
      Et pour injecter les kexts, aller sur l'onglet "System Parameters" et mettez l'option Inject Kexts sur Yes comme ceci :
       

       
       
      Voilà, vous n'avez plus qu'à enregistrer les ajustements, redémarrer votre pc et apprécier le résultat.
       
       
      MAIS ... seulement voilà ... il y a un problème ... 
       
      Quoi ? 
       
      Initialement, les kexts ne sont pas présents dans le kernelcache à cause de "OSBundleRequired=Safe Boot" (ils ne sont pas chargés en local par défaut mais en mode sans échec) et donc le patchage "à la volé" (on the fly) ne fonctionnera pas.
       
      Donc quoi, tout ça pour rien ?
       
      Non, bien-sûr, voici l'astuce pour remédier à cela :
       
      Dans un premier temps, il vous faut booter l'OS sans kernelcache. Si vous utiliser Clover Configurator, il vous suffit juste de cocher l'option "No Caches" dans l'onglet "System and Parameters" ou bien vous le faites directement dans votre config.plist :
      <key>SystemParameters</key> <dict>       <key>InjectSystemID</key>       <true/>       <key>InjectKexts</key>       <string>Yes</string>       <key>NoCaches</key>       <true/> </dict> Ceci aura donc pour effet de bloquer kernelcache et obliger boot.efi de charger le kernel et les kexts séparément. Clover et FSInject vont ensuite intercepter tous les chargements des kexts par boot.efi et changer "OSBundleRequired=Safe Boot" en "OSBundleRequired=Root" à la volé (on the fly) et forceront boot .efi à charger les kexts. Et ensuite dans un second temps, Clover va patcher l'Info.plist de ces deux kexts et la partie binaire de ATIRadeonX2000, kernel va les charger et ils seront rattachés à votre carte graphique.
       
      Une fois ceci fait (donc les kexts utilisés), il vous suffit de faire sudo touch /System/Library/Extensions. Ceci créera un nouveau kernelcache qui cette fois-ci contiendra vos kexts utilisés. Ensuite il ne vous reste plus qu'à redémarrer normalement (en décochant l'option No Caches dans Clover Configurator) et le patch fonctionnera à merveille.
       
       
      Oui, mais ... là aussi ...
       
      Quoi encore ?
       
      Seulement voilà, pour une raison ou une autre, il peut arriver que kernelcache se reconstruit tout seul et le patch "à la volé" ne fonctionne plus.
       
      Alors je fais quoi moi en attendant ?
       
      L'astuce la plus efficace pour le moment est d'injecter les infos de vos kexts à l'intérieur de l'Info.plist de FakeSMC.kext comme des IOKitPersonalities additionnels.
       
      ????Kézako????
       
      Ces infos vous les trouverez dans l'Info.plist de ces 2 kexts, sous IOKitPersonalities. Les voici :
       
      Pour AMD4800Controller.kext
      <key>Controller</key> <dict>         <key>ATY,Cardinal</key>         <dict>                 <key>aty_config</key>                 <dict>                         <key>CFG_NO_PP</key>                         <true/>                 </dict>          </dict>          <key>CFBundleIdentifier</key>          <string>com.apple.kext.AMD4800Controller</string>          <key>IOClass</key>          <string>AMD4800Controller</string>          <key>IOMatchCategory</key>          <string>IOFramebuffer</string>          <key>IOName</key>          <string>AMD4800Controller</string>          <key>IOPCIMatch</key>          <string>0x94401002 0x944a1002</string>          <key>IOProbeScore</key>          <integer>65050</integer>          <key>IOProviderClass</key>          <string>IOPCIDevice</string>         <key>aty_config</key>          <dict>                 <key>CFG_NO_PP</key>                  <false/>                  <key>CFG_PAA</key>                  <integer>0</integer>                  <key>CFG_USE_USCN</key>                  <false/>          </dict>          <key>aty_properties</key>          <dict>                  <key>PP_GFXClockGatingEnabled</key>                  <integer>1</integer>          </dict> </dict> Et pour ATIRadeonX2000.kext
      <key>ATIRadeonX2000</key> <dict>         <key>ATIEnableWideBlitSupport</key>         <true/> <key>ATIUseTearingWideBlit</key> <false/> <key>CFBundleIdentifier</key> <string>com.apple.ATIRadeonX2000</string> <key>GpuDebugPolicy</key> <integer>0</integer> <key>IOCFPlugInTypes</key> <dict> <key>ACCF0000-0000-0000-0000-000a2789904e</key> <string>ATIRadeonX2000GA.plugin</string> </dict> <key>IOClass</key> <string>ATIRadeonX2000</string> <key>IODVDBundleName</key> <string>ATIRadeonX2000VADriver</string> <key>IOKitDebug</key> <integer>0</integer> <key>IOMatchCategory</key> <string>IOAccelerator</string> <key>IOPCIMatch</key> <string>0x94001002 0x94011002 0x94021002 0x94031002 0x95811002 0x95831002 0x95881002 0x94c81002 0x94c91002 0x95001002 0x95011002 0x95051002 0x95071002 0x95041002 0x95061002 0x95981002 0x94881002 0x95991002 0x95911002 0x95931002 0x94401002 0x94421002 0x944A1002 0x945A1002 0x94901002 0x949E1002 0x94801002 0x95401002 0x95411002 0x954E1002 0x954F1002 0x95521002 0x95531002 0x94a01002</string> <key>IOProviderClass</key> <string>IOPCIDevice</string> <key>IOSourceVersion</key> <string>8.24.11</string> <key>IOVARendererID</key> <integer>16908288</integer> <key>sensor-properties</key> <array> <dict> <key>device_type</key> <data> Z3B1LXNlbnNvcg== </data> <key>location</key> <string>GPU</string> <key>name</key> <string>gpu-sensor</string> <key>polling-period</key> <data> AAAAAQAAAAA= </data> <key>reg</key> <data> AAAAAg== </data> <key>sample-period</key> <data> AAAAAACYmAA= </data> <key>sensor-id</key> <data> AAAABg== </data> <key>version</key> <data> AAAAAg== </data> <key>zone</key> <data> AAAAAg== </data> </dict> </array </dict>  
      Et voici donc l'Info.plist de FakeSMC.kext dans son intégrité, vous pouvez jeter un oeil, histoire de voir à quoi cela ressemble :
       
      FakeSMC_Info.plist.zip
       
      Et pour les moins casse-têtes, voici FakeSMC.kext modifié que j'utilise pour charger les 2 kexts :
       
      FakeSMC.kext.zip
       
       
      Voilà, avec ceci, vous n'aurez plus besoin de savoir si oui ou non les kexts sont dans le kernelcache.
       
       
      Crédits attribués à :
       
      netkas  pour son incontournable QE_CI Exotic patch (même s'il n'importe plus son support)
       
      Slice  & co. pour leur bébé nommé Clover
       
      dmazar  pour son astuce avec FakeSMC.kext   (pour plus d'info, voir ici)
       
      duffs (rarement ici, plus sur le site de netkas) pour son astuce de comment patcher la partie binaire avec Clover, ce fût lors de la sortie de OS X Mavericks DP1
       
      nyolc8  pour le support de QE_CI Exotic patch pour Mavericks
       
      fantomas1  pour ......... pour ... quoi déjà ? Ah ben non ... non ... pour rien ...
    • By Slice
      Now I want to add vector graphics support in Clover. See rev 4560 and later.
      It is not working yet but designers may begin to create Vector Themes.
      It supposed to consist of SVG elements and has design size. It will be rendered to any screen size scaled from design size.
       
      What application in macOS can create SVG graphics?
      Inkscape is not working in macOS 10.11+. Pity.
      LibreOffice Draw works with SVG but buggy.
      Boxy SVG cost 10$ but looks good enough. It creates the best in simplicity files and have more then enough features.
      Illustrator is good but expensive.
       
      How to improve SVG file?
      Clover has restricted support for SVG. It is your job to make compatible file and as small as possible to speedup rendering.
      Some helps:
      Help:Inkscape – From invalid to valid SVG Inkscape files
      From invalid to valid SVG Adobe Illustrator files
      From invalid to valid SVG files of other editors: BKchem, ChemDraw and CorelDRAW
      Help:Illustrator – Assistance with creating and saving SVG images in Adobe Illustrator that will pass W3C validation
      User:Quibik/Cleaning up SVG files manually
      Later I will write own instructions specific to Clover abilities.
       
      How to create SVG fonts?
      You can google to find ready-to-use SVG fonts.  I found some problems with too beaty fonts: slow rendering and overflow crash. Be careful.
      You can get ttf or otf fonts and convert them into svg by using online WEB services. Not a problem to google.
      But then I want to find a way to simplify the font to reduce a size and speedup rendering.
      You can create own font by FontForge It is opensource and available for Windows, Mac and GNU+Linux. It creates otf font which you can convert to svg font.
       
       
×