# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License.  You may obtain a copy of the License at
#
#   http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.
#
#Disable i18n properties for the old "packs" installers

#installer/asbundle/src/org/netbeans/installer/Bundle.properties
#installer/coreide/src/org/netbeans/installer/Bundle.properties
#installer/jbossbundle/src/org/netbeans/installer/Bundle.properties
#installer/jdkbundle/src/org/netbeans/installer/Bundle.properties
#installer/mobility/src/org/netbeans/installer/cluster/Bundle.properties
#installer/profiler/src/org/netbeans/installer/cluster/Bundle.properties
#installer/cdc/src/org/netbeans/installer/cluster/Bundle.properties
#installer/cdc/src/org/netbeans/installer/Bundle.properties
#installer/cnd/src/org/netbeans/installer/cluster/Bundle.properties


#i18n bundles for NBI installers
installer/components/**/Bundle*.properties
installer/engine/src/**/Bundle*.properties
installer/engine/src/data/engine.properties
installer/engine/branding/**/src/**/Bundle*.properties
installer/engine/branding/**/src/data/engine.properties
installer/engine/branding/**/src/native/launcher/**/launcher.properties

installer/infra/build/web/language.properties
installer/infra/build/web/js/*_strings.js
installer/infra/build/web/img/download.gif
installer/infra/build/web/img/download_x86.gif
installer/infra/build/web/img/download_x64.gif
installer/infra/build/web/img/download_d.gif
installer/infra/build/web/img/download_h.gif
installer/infra/build/web/img/download_x86_h.gif
installer/infra/build/web/img/download_x64_h.gif

#i18n files for new native mac installer
installer/mac/newbuild/Bundle.properties
installer/mac/newbuild/dmg/Resources/Welcome*.html
