@@ -2,6 +2,8 @@ import com.android.build.api.variant.impl.VariantOutputImpl
22import com.codingfeline.buildkonfig.compiler.FieldSpec
33import io.github.composefluent.plugin.build.BuildConfig
44import io.github.composefluent.plugin.build.applyTargets
5+ import org.jetbrains.compose.desktop.application.dsl.AbstractDistributions
6+ import org.jetbrains.compose.desktop.application.dsl.AbstractMacOSPlatformSettings
57import org.jetbrains.compose.desktop.application.dsl.TargetFormat
68import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
79import org.jetbrains.kotlin.gradle.tasks.KotlinCompilationTask
@@ -158,11 +160,9 @@ compose.desktop {
158160 )
159161 }
160162 nativeDistributions {
161- targetFormats(TargetFormat .Dmg , TargetFormat .Msi , TargetFormat .Deb )
162- packageName = " Compose Fluent Design Gallery"
163- packageVersion = BuildConfig .integerVersionName
163+ applyDistributions()
164164 macOS {
165- iconFile.set(project.file( " icons/icon.icns " ) )
165+ applyCommonSetup( )
166166 jvmArgs(
167167 " -Dapple.awt.application.appearance=system"
168168 )
@@ -187,6 +187,13 @@ compose.desktop {
187187 it.name.contains(" macos" )
188188 }.toTypedArray()
189189 )
190+
191+ distributions {
192+ applyDistributions(TargetFormat .Dmg )
193+ macOS {
194+ applyCommonSetup()
195+ }
196+ }
190197 }
191198}
192199
@@ -215,4 +222,17 @@ tasks.withType<KotlinCompilationTask<*>>().configureEach {
215222 if (name != " kspCommonMainKotlinMetadata" ) {
216223 dependsOn(" kspCommonMainKotlinMetadata" )
217224 }
225+ }
226+
227+ fun AbstractDistributions.applyDistributions (
228+ vararg formats : TargetFormat = arrayOf(TargetFormat .Dmg , TargetFormat .Msi , TargetFormat .Deb )
229+ ) {
230+ targetFormats(formats = formats)
231+ packageName = " Compose Fluent Design Gallery"
232+ packageVersion = BuildConfig .integerVersionName
233+
234+ }
235+
236+ fun AbstractMacOSPlatformSettings.applyCommonSetup () {
237+ iconFile.set(project.file(" icons/icon.icns" ))
218238}
0 commit comments